[
https://issues.apache.org/jira/browse/TINKERPOP-1619?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15847108#comment-15847108
]
Ted Wilmes commented on TINKERPOP-1619:
---------------------------------------
That's a good question, {{tp32}} throws this exception with that query:
{code}
gremlin> g = TinkerFactory.createModern().traversal()
gremlin> g.withComputer(Computer.compute().workers(3)).V(1,
2).optional(bothE().dedup())
[33/1896]
java.lang.RuntimeException: java.lang.IllegalStateException:
java.lang.IllegalArgumentException: The provided key is not a memory compute
key: 1.2.1(1.1.0(2.0.0()))
Type ':help' or ':h' for help.
Display stack trace? [yN]y
java.lang.IllegalStateException: java.lang.RuntimeException:
java.lang.IllegalStateException: java.lang.IllegalArgumentException: The
provided key is not a memory compute key: 1.2.1(1.1.0(2.0.0()))
at
org.apache.tinkerpop.gremlin.process.computer.traversal.step.map.VertexProgramStep.processNextStart(VertexProgramStep.java:88)
at
org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.hasNext(AbstractStep.java:143)
at
org.apache.tinkerpop.gremlin.process.traversal.step.util.ExpandableStepIterator.next(ExpandableStepIterator.java:50)
at
org.apache.tinkerpop.gremlin.process.computer.traversal.step.map.ComputerResultStep.processNextStart(ComputerResultStep.java:68)
at
org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.hasNext(AbstractStep.java:143)
at
org.apache.tinkerpop.gremlin.process.traversal.util.DefaultTraversal.hasNext(DefaultTraversal.java:184)
at
org.apache.tinkerpop.gremlin.console.Console$_closure3.doCall(Console.groovy:237)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
at
org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:294)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1027)
at
org.codehaus.groovy.tools.shell.Groovysh.setLastResult(Groovysh.groovy:447)
at org.codehaus.groovy.tools.shell.Groovysh.execute(Groovysh.groovy:191)
at
org.apache.tinkerpop.gremlin.console.GremlinGroovysh.super$3$execute(GremlinGroovysh.groovy)
at sun.reflect.GeneratedMethodAccessor14.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1218)
at
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132)
at
org.apache.tinkerpop.gremlin.console.GremlinGroovysh.execute(GremlinGroovysh.groovy:72)
at org.codehaus.groovy.tools.shell.Shell.leftShift(Shell.groovy:122)
at
org.codehaus.groovy.tools.shell.ShellRunner.work(ShellRunner.groovy:95)
at
org.codehaus.groovy.tools.shell.InteractiveShellRunner.super$2$work(InteractiveShellRunner.groovy)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1218)
at
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132)
at
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuper0(ScriptBytecodeAdapter.java:152)
at
org.codehaus.groovy.tools.shell.InteractiveShellRunner.work(InteractiveShellRunner.groovy:124)
at
org.codehaus.groovy.tools.shell.ShellRunner.run(ShellRunner.groovy:59)
at
org.codehaus.groovy.tools.shell.InteractiveShellRunner.super$2$run(InteractiveShellRunner.groovy)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1218)
at
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132)
at
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuper0(ScriptBytecodeAdapter.java:152)
at
org.codehaus.groovy.tools.shell.InteractiveShellRunner.run(InteractiveShellRunner.groovy:83)
at
org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:232)
at
org.apache.tinkerpop.gremlin.console.Console.<init>(Console.groovy:169)
at
org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:232)
at org.apache.tinkerpop.gremlin.console.Console.main(Console.groovy:478)
Caused by: java.util.concurrent.ExecutionException: java.lang.RuntimeException:
java.lang.IllegalStateException: java.lang.IllegalArgumentException: The
provided key is not a memory compute key: 1.2.1(1.1.0(2.0.0
()))
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at
org.apache.tinkerpop.gremlin.process.computer.traversal.step.map.VertexProgramStep.processNextStart(VertexProgramStep.java:68)
... 54 more
Caused by: java.lang.RuntimeException: java.lang.IllegalStateException:
java.lang.IllegalArgumentException: The provided key is not a memory compute
key: 1.2.1(1.1.0(2.0.0()))
at
org.apache.tinkerpop.gremlin.tinkergraph.process.computer.TinkerGraphComputer.lambda$submit$3(TinkerGraphComputer.java:244)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalStateException: java.lang.IllegalArgumentException:
The provided key is not a memory compute key: 1.2.1(1.1.0(2.0.0()))
at
org.apache.tinkerpop.gremlin.tinkergraph.process.computer.TinkerWorkerPool.executeVertexProgram(TinkerWorkerPool.java:114)
at
org.apache.tinkerpop.gremlin.tinkergraph.process.computer.TinkerGraphComputer.lambda$submit$3(TinkerGraphComputer.java:169)
... 4 more
Caused by: java.util.concurrent.ExecutionException:
java.lang.IllegalArgumentException: The provided key is not a memory compute
key: 1.2.1(1.1.0(2.0.0()))
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at
org.apache.tinkerpop.gremlin.tinkergraph.process.computer.TinkerWorkerPool.executeVertexProgram(TinkerWorkerPool.java:110)
... 5 more
Caused by: java.lang.IllegalArgumentException: The provided key is not a memory
compute key: 1.2.1(1.1.0(2.0.0()))
at
org.apache.tinkerpop.gremlin.process.computer.GraphComputer$Exceptions.providedKeyIsNotAMemoryComputeKey(GraphComputer.java:249)
at
org.apache.tinkerpop.gremlin.tinkergraph.process.computer.TinkerMemory.checkKeyValue(TinkerMemory.java:143)
at
org.apache.tinkerpop.gremlin.tinkergraph.process.computer.TinkerWorkerMemory.add(TinkerWorkerMemory.java:93)
at
org.apache.tinkerpop.gremlin.process.computer.traversal.WorkerExecutor.drainStep(WorkerExecutor.java:212)
at
org.apache.tinkerpop.gremlin.process.computer.traversal.WorkerExecutor.execute(WorkerExecutor.java:147)
at
org.apache.tinkerpop.gremlin.process.computer.traversal.TraversalVertexProgram.execute(TraversalVertexProgram.java:291)
at
org.apache.tinkerpop.gremlin.tinkergraph.process.computer.TinkerGraphComputer.lambda$null$0(TinkerGraphComputer.java:174)
at
org.apache.tinkerpop.gremlin.tinkergraph.process.computer.TinkerWorkerPool.lambda$executeVertexProgram$0(TinkerWorkerPool.java:102)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
... 4 more
{code}
> TinkerGraphComputer worker count affects OptionalStep query results
> -------------------------------------------------------------------
>
> Key: TINKERPOP-1619
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1619
> Project: TinkerPop
> Issue Type: Bug
> Components: process
> Affects Versions: 3.3.0
> Reporter: Ted Wilmes
>
> I found that when I bump the worker count up to 4 on my local box, the dedup
> nested in the optional appears to not be handled correctly.
> {code}
> gremlin> g = TinkerFactory.createModern().traversal()
> ==>graphtraversalsource[tinkergraph[vertices:6 edges:6], standard]
> gremlin> g.withComputer(Computer.compute().workers(3)).V(1,
> 2).optional(bothE().dedup())
> ==>e[9][1-created->3]
> ==>e[7][1-knows->2]
> ==>e[8][1-knows->4]
> ==>v[2]
> gremlin> g.withComputer(Computer.compute().workers(4)).V(1,
> 2).optional(bothE().dedup())
> ==>e[9][1-created->3]
> ==>e[7][1-knows->2]
> ==>e[7][1-knows->2]
> ==>e[8][1-knows->4]
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)