创建索引时,OrientDB javascript函数卡住了

时间:2016-08-09 06:34:29

标签: orientdb orientdb-2.1

功能:

//name: CD_CreateSubClassIndexes
//params: 
//idempotence: false
//code: 

var codeUnitClasses = db.query("select from (select name from (SELECT expand(classes) FROM #0:1) where superClass = 'CodeUnit') order by name asc");

logger("starting CodeUnit index creation",'info');

for(var i=0; i<codeUnitClasses.length; i++){
  var className = codeUnitClasses[i].field("name");
  logger("starting CodeUnit index creation for class : " + className,'info');
  db.command("CREATE INDEX "+className+".binName ON "+className+" (binName) NOTUNIQUE_HASH_INDEX");
  db.command("CREATE INDEX "+className+".isExcluded ON "+className+" (isExcluded) NOTUNIQUE_HASH_INDEX");
  db.command("CREATE INDEX "+className+".module ON "+className+" (module) NOTUNIQUE_HASH_INDEX");
  db.command("CREATE INDEX "+className+".module_binName ON "+className+" (module,binName) NOTUNIQUE_HASH_INDEX");
  db.command("CREATE INDEX "+className+".module_name_new ON "+className+" (module, name) NOTUNIQUE_HASH_INDEX");
  db.command("CREATE INDEX "+className+".module_type ON "+className+" (module,type) NOTUNIQUE_HASH_INDEX");
  db.command("CREATE INDEX "+className+".name ON "+className+" (name) NOTUNIQUE_HASH_INDEX");
  db.command("CREATE INDEX "+className+".orgUnit ON "+className+" (orgUnit) NOTUNIQUE_HASH_INDEX");
  db.command("CREATE INDEX "+className+".orgUnit_binName ON "+className+" (orgUnit,binName) NOTUNIQUE_HASH_INDEX");
}

为类创建索引的OrientDB javascript函数在以下消息后被卡住了。

  

2016-08-09 11:27:12:773 WARNI {db = Insight5}文件internal.pcl中的页面   索引7被放在错误的空闲列表中,这个错误将被修复   自动。 [OPaginatedCluster] 2016-08-09 11:27:49

我正在使用:

Windows 7 64位,java 8.0.31, orientdb-community-2.1.20,Xmx4096m,-Dstorage.diskCache.bufferSize = 2048

orientdb服务器-config.xml中:

<properties>
    <entry value="50" name="db.pool.min"/>
    <entry value="250" name="db.pool.max"/>
    <entry value="1000" name="script.pool.maxSize"/>        
    <entry value="false" name="profiler.enabled"/>
    <entry value="INFO" name="log.console.level"/>
    <entry value="INFO" name="log.file.level"/>
    <entry value="10000" name="storage.record.lockTimeout"/>
</properties>

线程转储:

Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.31-b07 mixed mode):

"OrientDB HTTP Connection /0:0:0:0:0:0:0:1:2480<-/0:0:0:0:0:0:0:1:52523" #32 daemon prio=5 os_prio=0 tid=0x0000000021e5d800 nid=0x1a1c runnable [0x00000000230bf0
   java.lang.Thread.State: RUNNABLE
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.read(SocketInputStream.java:150)
        at java.net.SocketInputStream.read(SocketInputStream.java:121)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:265)
        - locked <0x00000006c3cdadf8> (a java.io.BufferedInputStream)
        at com.orientechnologies.orient.enterprise.channel.text.OChannelText.read(OChannelText.java:61)
        at com.orientechnologies.orient.server.network.protocol.http.ONetworkProtocolHttpAbstract.execute(ONetworkProtocolHttpAbstract.java:571)
        at com.orientechnologies.common.thread.OSoftThread.run(OSoftThread.java:77)

"OrientDB HTTP Connection /0:0:0:0:0:0:0:1:2480<-/0:0:0:0:0:0:0:1:52494" #23 daemon prio=5 os_prio=0 tid=0x0000000022218800 nid=0x1cfc waiting on condition [0x00
   java.lang.Thread.State: WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x00000006c05f14f0> (a java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync)
        at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199)
        at java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock(ReentrantReadWriteLock.java:943)
        at com.orientechnologies.orient.core.storage.cache.OCachePointer.acquireExclusiveLock(OCachePointer.java:199)
        at com.orientechnologies.orient.core.storage.cache.OCacheEntry.acquireExclusiveLock(OCacheEntry.java:79)
        at com.orientechnologies.orient.core.storage.impl.local.paginated.OPaginatedCluster.updateFreePagesList(OPaginatedCluster.java:1593)
        at com.orientechnologies.orient.core.storage.impl.local.paginated.OPaginatedCluster.updateFreePagesIndex(OPaginatedCluster.java:1549)
        at com.orientechnologies.orient.core.storage.impl.local.paginated.OPaginatedCluster.findFreePage(OPaginatedCluster.java:1482)
        at com.orientechnologies.orient.core.storage.impl.local.paginated.OPaginatedCluster.updateRecord(OPaginatedCluster.java:784)
        at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.doUpdateRecord(OAbstractPaginatedStorage.java:1960)
        at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.updateRecord(OAbstractPaginatedStorage.java:889)
        at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.executeSaveRecord(ODatabaseDocumentTx.java:2009)
        at com.orientechnologies.orient.core.tx.OTransactionNoTx.saveRecord(OTransactionNoTx.java:160)
        at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.save(ODatabaseDocumentTx.java:2526)
        at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.save(ODatabaseDocumentTx.java:122)
        at com.orientechnologies.orient.core.record.impl.ODocument.save(ODocument.java:1759)
        at com.orientechnologies.orient.core.record.impl.ODocument.save(ODocument.java:1750)
        at com.orientechnologies.orient.core.index.OIndexManagerAbstract$1.call(OIndexManagerAbstract.java:132)
        at com.orientechnologies.orient.core.db.OScenarioThreadLocal.executeAsDistributed(OScenarioThreadLocal.java:71)
        at com.orientechnologies.orient.core.index.OIndexManagerAbstract.save(OIndexManagerAbstract.java:122)
        at com.orientechnologies.orient.core.index.OIndexManagerShared.createIndex(OIndexManagerShared.java:167)
        at com.orientechnologies.orient.core.index.OIndexManagerProxy.createIndex(OIndexManagerProxy.java:75)
        at com.orientechnologies.orient.core.metadata.schema.OClassImpl.createIndex(OClassImpl.java:1759)
        at com.orientechnologies.orient.core.sql.OCommandExecutorSQLCreateIndex.execute(OCommandExecutorSQLCreateIndex.java:264)
        at com.orientechnologies.orient.core.sql.OCommandExecutorSQLDelegate.execute(OCommandExecutorSQLDelegate.java:90)
        at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.executeCommand(OAbstractPaginatedStorage.java:1433)
        at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.command(OAbstractPaginatedStorage.java:1406)
        at com.orientechnologies.orient.core.command.OCommandRequestTextAbstract.execute(OCommandRequestTextAbstract.java:67)
        at com.orientechnologies.orient.core.command.script.OScriptDocumentDatabaseWrapper.command(OScriptDocumentDatabaseWrapper.java:114)
        at com.orientechnologies.orient.core.command.script.OScriptDocumentDatabaseWrapper.command(OScriptDocumentDatabaseWrapper.java:110)
        at java.lang.invoke.LambdaForm$DMH/232925641.invokeVirtual_LL_L(LambdaForm$DMH)
        at java.lang.invoke.LambdaForm$NamedFunction.invoke_LL_L(LambdaForm.java:1108)
        at java.lang.invoke.LambdaForm$DMH/1971489295.invokeStatic_LL_L(LambdaForm$DMH)
        at java.lang.invoke.LambdaForm$NamedFunction.invokeWithArguments(LambdaForm.java:1147)
        at java.lang.invoke.LambdaForm.interpretName(LambdaForm.java:625)
        at java.lang.invoke.LambdaForm.interpretWithArguments(LambdaForm.java:604)
        at java.lang.invoke.LambdaForm$LFI/519569038.interpret_L(LambdaForm$LFI)
        at java.lang.invoke.LambdaForm$NamedFunction.invoke_LL_L(LambdaForm.java:1108)
        at java.lang.invoke.LambdaForm$DMH/1971489295.invokeStatic_LL_L(LambdaForm$DMH)
        at java.lang.invoke.LambdaForm$NamedFunction.invokeWithArguments(LambdaForm.java:1147)
        at java.lang.invoke.LambdaForm.interpretName(LambdaForm.java:625)
        at java.lang.invoke.LambdaForm.interpretWithArguments(LambdaForm.java:604)
        at java.lang.invoke.LambdaForm$LFI/519569038.interpret_L(LambdaForm$LFI)
        at java.lang.invoke.LambdaForm$MH/1800412487.exactInvoker(LambdaForm$MH)
        at java.lang.invoke.LambdaForm$BMH/1828757853.reinvoke(LambdaForm$BMH)
        at java.lang.invoke.LambdaForm$NamedFunction.invoke_LLL_L(LambdaForm.java:1113)
        at java.lang.invoke.LambdaForm$DMH/1971489295.invokeStatic_LL_L(LambdaForm$DMH)
        at java.lang.invoke.LambdaForm$NamedFunction.invokeWithArguments(LambdaForm.java:1147)
        at java.lang.invoke.LambdaForm.interpretName(LambdaForm.java:625)
        at java.lang.invoke.LambdaForm.interpretWithArguments(LambdaForm.java:604)
        at java.lang.invoke.LambdaForm$LFI/1844169442.interpret_L(LambdaForm$LFI)
        at java.lang.invoke.LambdaForm$DMH/2114694065.invokeSpecial_LLLL_L(LambdaForm$DMH)
        at java.lang.invoke.LambdaForm$NamedFunction.invoke_LLLL_L(LambdaForm.java:1118)
        at java.lang.invoke.LambdaForm$DMH/1971489295.invokeStatic_LL_L(LambdaForm$DMH)
        at java.lang.invoke.LambdaForm$NamedFunction.invokeWithArguments(LambdaForm.java:1147)
        at java.lang.invoke.LambdaForm.interpretName(LambdaForm.java:625)
        at java.lang.invoke.LambdaForm.interpretWithArguments(LambdaForm.java:604)
        at java.lang.invoke.LambdaForm$LFI/1844169442.interpret_L(LambdaForm$LFI)
        at java.lang.invoke.LambdaForm$MH/1786292209.linkToCallSite(LambdaForm$MH)
        at jdk.nashorn.internal.scripts.Script$\^eval\_$9.CD_CreateSubClassIndexes(<eval>:4628)
        at java.lang.invoke.LambdaForm$DMH/1971489295.invokeStatic_LL_L(LambdaForm$DMH)
        at java.lang.invoke.LambdaForm$MH/1374677625.invokeExact_MT(LambdaForm$MH)
        at jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(ScriptFunctionData.java:535)
        at jdk.nashorn.internal.runtime.ScriptFunction.invoke(ScriptFunction.java:209)
        at jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:378)
        at jdk.nashorn.api.scripting.ScriptObjectMirror.callMember(ScriptObjectMirror.java:185)
        at jdk.nashorn.api.scripting.NashornScriptEngine.invokeImpl(NashornScriptEngine.java:505)
        at jdk.nashorn.api.scripting.NashornScriptEngine.invokeFunction(NashornScriptEngine.java:227)
        at com.orientechnologies.orient.core.command.script.OCommandExecutorFunction.executeInContext(OCommandExecutorFunction.java:94)
        at com.orientechnologies.orient.core.metadata.function.OFunction.executeInContext(OFunction.java:149)
        at com.orientechnologies.orient.server.network.protocol.http.command.all.OServerCommandAbstractLogic.execute(OServerCommandAbstractLogic.java:77)
        at com.orientechnologies.orient.server.network.protocol.http.ONetworkProtocolHttpAbstract.service(ONetworkProtocolHttpAbstract.java:180)
        at com.orientechnologies.orient.server.network.protocol.http.ONetworkProtocolHttpAbstract.execute(ONetworkProtocolHttpAbstract.java:627)
        at com.orientechnologies.common.thread.OSoftThread.run(OSoftThread.java:77)

"OrientDB Write Cache Flush Task (Insight5)" #22 daemon prio=10 os_prio=2 tid=0x000000001e69b800 nid=0x233c runnable [0x0000000020fdf000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x00000006c0a5c6d0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
        at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093)
        at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
        at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)

"OrientDB WAL Flush Task (Insight5)" #21 daemon prio=5 os_prio=0 tid=0x000000001f512800 nid=0xd44 waiting on condition [0x0000000020e8e000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x00000006c09edfc8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
        at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093)
        at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
        at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)

"DestroyJavaVM" #19 prio=5 os_prio=0 tid=0x00000000021ea000 nid=0x1eb4 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"OrientDB ONetworkProtocolHttpDb listen at 0.0.0.0:2480-2490" #16 prio=5 os_prio=0 tid=0x000000001e8bd800 nid=0x15b8 runnable [0x000000002080e000]
   java.lang.Thread.State: RUNNABLE
        at java.net.DualStackPlainSocketImpl.accept0(Native Method)
        at java.net.DualStackPlainSocketImpl.socketAccept(DualStackPlainSocketImpl.java:131)
        at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:404)
        at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:199)
        - locked <0x00000006c098b330> (a java.net.SocksSocketImpl)
        at java.net.ServerSocket.implAccept(ServerSocket.java:545)
        at java.net.ServerSocket.accept(ServerSocket.java:513)
        at com.orientechnologies.orient.server.network.OServerNetworkListener.run(OServerNetworkListener.java:194)

"OrientDB ONetworkProtocolBinary listen at 0.0.0.0:2424-2430" #14 prio=5 os_prio=0 tid=0x000000001e8c3000 nid=0x16e8 runnable [0x00000000204de000]
   java.lang.Thread.State: RUNNABLE
        at java.net.DualStackPlainSocketImpl.accept0(Native Method)
        at java.net.DualStackPlainSocketImpl.socketAccept(DualStackPlainSocketImpl.java:131)
        at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:404)
        at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:199)
        - locked <0x00000006c098cf40> (a java.net.SocksSocketImpl)
        at java.net.ServerSocket.implAccept(ServerSocket.java:545)
        at java.net.ServerSocket.accept(ServerSocket.java:513)
        at com.orientechnologies.orient.server.network.OServerNetworkListener.run(OServerNetworkListener.java:194)

"Timer-0" #11 daemon prio=5 os_prio=0 tid=0x000000001e792000 nid=0xd80 in Object.wait() [0x000000001ee3f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at java.util.TimerThread.mainLoop(Timer.java:552)
        - locked <0x00000006c094a3e8> (a java.util.TaskQueue)
        at java.util.TimerThread.run(Timer.java:505)

"Service Thread" #9 daemon prio=9 os_prio=0 tid=0x000000001d6a5000 nid=0x2108 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C1 CompilerThread2" #8 daemon prio=9 os_prio=2 tid=0x000000001d63a800 nid=0x1bec waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread1" #7 daemon prio=9 os_prio=2 tid=0x000000001d639000 nid=0x1c64 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" #6 daemon prio=9 os_prio=2 tid=0x000000001d632800 nid=0x19ec waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Attach Listener" #5 daemon prio=5 os_prio=2 tid=0x000000001c045800 nid=0x14cc runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" #4 daemon prio=9 os_prio=2 tid=0x000000001c044800 nid=0x2304 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" #3 daemon prio=8 os_prio=1 tid=0x000000001bfe8000 nid=0x1604 in Object.wait() [0x000000001d62f000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:142)
        - locked <0x00000006c0861d78> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:158)
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)

"Reference Handler" #2 daemon prio=10 os_prio=2 tid=0x000000001bfdf000 nid=0x20c0 in Object.wait() [0x000000001d35f000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Object.java:502)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:157)
        - locked <0x00000006c0b40cc8> (a java.lang.ref.Reference$Lock)

"VM Thread" os_prio=2 tid=0x000000001bfdb000 nid=0x2078 runnable

"GC task thread#0 (ParallelGC)" os_prio=0 tid=0x00000000021fe800 nid=0xbfc runnable

"GC task thread#1 (ParallelGC)" os_prio=0 tid=0x0000000002200000 nid=0x768 runnable

"GC task thread#2 (ParallelGC)" os_prio=0 tid=0x0000000002201800 nid=0x264 runnable

"GC task thread#3 (ParallelGC)" os_prio=0 tid=0x0000000002203000 nid=0x1d9c runnable

"VM Periodic Task Thread" os_prio=2 tid=0x000000001d6a6800 nid=0x15e8 waiting on condition

JNI global references: 2513

Heap
 PSYoungGen      total 928256K, used 76187K [0x000000076ab00000, 0x00000007bce00000, 0x00000007c0000000)
  eden space 924672K, 7% used [0x000000076ab00000,0x000000076f1f1ff0,0x00000007a3200000)
  from space 3584K, 98% used [0x00000007bbc00000,0x00000007bbf74dc0,0x00000007bbf80000)
  to   space 10752K, 0% used [0x00000007bc380000,0x00000007bc380000,0x00000007bce00000)
 ParOldGen       total 235008K, used 130502K [0x00000006c0000000, 0x00000006ce580000, 0x000000076ab00000)
  object space 235008K, 55% used [0x00000006c0000000,0x00000006c7f71a28,0x00000006ce580000)
 Metaspace       used 30289K, capacity 31100K, committed 34304K, reserved 1081344K
  class space    used 3052K, capacity 3256K, committed 3328K, reserved 1048576K

0 个答案:

没有答案
相关问题