Project Number Date
cypher-for-gremlin 0.9.9 07 Jun 2018, 12:04

Feature Report

Steps Scenarios Features
Feature Passed Failed Skipped Pending Undefined Total Passed Failed Total Duration Status
DeleteAcceptance 100 2 0 0 0 102 19 2 21 0.874 Failed
Feature DeleteAcceptance
0.035
Given an empty graph 0.000
And having executed: 0.003
CREATE ()

12:03:39.265 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE () 12:03:39.266 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV().barrier().limit(0)

When executing query: 0.004
MATCH (n)
DELETE n

12:03:39.302 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) DELETE n 12:03:39.304 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as('n').barrier().sideEffect(__.project(' GENERATED1').by(__.select('n')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.028
-nodes 1

12:03:39.307 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:39.309 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.312 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:39.315 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.318 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:39.320 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 1 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.031
Given an empty graph 0.000
And having executed: 0.002
CREATE ()

12:03:39.336 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE () 12:03:39.337 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV().barrier().limit(0)

When executing query: 0.004
MATCH (n)
DETACH DELETE n

12:03:39.359 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) DETACH DELETE n 12:03:39.360 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as('n').barrier().sideEffect(__.project(' GENERATED1').by(__.select('n')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.024
-nodes 1

12:03:39.363 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:39.365 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.367 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:39.370 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.373 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:39.376 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 1 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.034
Given an empty graph 0.000
And having executed: 0.004
UNWIND range(0, 2) AS i
CREATE ()-[:R]->()

12:03:39.387 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: UNWIND range(0, 2) AS i CREATE ()-[:R]->() 12:03:39.389 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.inject(' cypher.start').repeat(__.loops().aggregate(' GENERATED1')).times(3).cap(' GENERATED1').unfold().skip(0).limit(3).addV().as(' UNNAMED32').addV().as(' UNNAMED41').addE('R').from(' UNNAMED32').to(' UNNAMED41').barrier().limit(0)

When executing query: 0.006
MATCH ()-[r]-()
DELETE r

12:03:39.414 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]-() DELETE r 12:03:39.417 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' UNNAMED7').bothE().as('r').otherV().as(' UNNAMED14').dedup(' UNNAMED7', 'r', ' UNNAMED14').barrier().sideEffect(__.project(' GENERATED2').by(__.select('r')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.024
-relationships 3

12:03:39.420 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:39.422 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.423 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:39.425 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.429 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:39.431 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 3 +relationships: 0

0.011
Scenario Deleting connected nodes
Steps
Given an empty graph 0.000
And having executed: 0.006
CREATE (x:X)
CREATE (x)-[:R]->()
CREATE (x)-[:R]->()
CREATE (x)-[:R]->()

12:03:39.445 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE (x:X) CREATE (x)-[:R]->() CREATE (x)-[:R]->() CREATE (x)-[:R]->() 12:03:39.449 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV('X').as('x').addV().as(' UNNAMED31').addE('R').from('x').to(' UNNAMED31').addV().as(' UNNAMED51').addE('R').from('x').to(' UNNAMED51').addV().as(' UNNAMED71').addE('R').from('x').to(' UNNAMED71').barrier().limit(0)

When executing query: 0.004
MATCH (n:X)
DELETE n

12:03:39.471 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n:X) DELETE n 12:03:39.473 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as('n').hasLabel('X').barrier().sideEffect(__.project(' GENERATED1').by(__.select('n')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then a ConstraintVerificationFailed should be raised at runtime: DeleteConnectedNode 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "DeleteAcceptance": Scenario "Deleting connected nodes" failed with message: Expected: ExpectError(ConstraintVerificationFailed,runtime,DeleteConnectedNode,gherkin.pickles.PickleStep@51c0e6a4), got records <empty result>
	at org.opencypher.tools.tck.api.Scenario$$anonfun$executeOnGraph$1.apply(Scenario.scala:121)
	at org.opencypher.tools.tck.api.Scenario$$anonfun$executeOnGraph$1.apply(Scenario.scala:60)
	at scala.collection.LinearSeqOptimized$class.foldLeft(LinearSeqOptimized.scala:124)
	at scala.collection.immutable.List.foldLeft(List.scala:84)
	at org.opencypher.tools.tck.api.Scenario.executeOnGraph(Scenario.scala:60)
	at org.opencypher.tools.tck.api.Scenario$$anon$1.execute(Scenario.scala:54)
	at org.junit.jupiter.engine.descriptor.JupiterTestDescriptor.executeAndMaskThrowable(JupiterTestDescriptor.java:145)
	at org.junit.jupiter.engine.descriptor.DynamicTestTestDescriptor.execute(DynamicTestTestDescriptor.java:46)
	at org.junit.jupiter.engine.descriptor.DynamicTestTestDescriptor.execute(DynamicTestTestDescriptor.java:24)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$3(HierarchicalTestExecutor.java:83)
	at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:77)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$null$0(HierarchicalTestExecutor.java:85)
	at org.junit.jupiter.engine.descriptor.TestFactoryTestDescriptor.lambda$invokeTestMethod$1(TestFactoryTestDescriptor.java:80)
	at org.junit.jupiter.engine.execution.ThrowableCollector.execute(ThrowableCollector.java:40)
	at org.junit.jupiter.engine.descriptor.TestFactoryTestDescriptor.invokeTestMethod(TestFactoryTestDescriptor.java:68)
	at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:110)
	at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:57)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$3(HierarchicalTestExecutor.java:83)
	at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:77)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$null$2(HierarchicalTestExecutor.java:92)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
	at java.util.Iterator.forEachRemaining(Iterator.java:116)
	at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$3(HierarchicalTestExecutor.java:92)
	at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:77)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$null$2(HierarchicalTestExecutor.java:92)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
	at java.util.Iterator.forEachRemaining(Iterator.java:116)
	at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$3(HierarchicalTestExecutor.java:92)
	at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:77)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:51)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:43)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:170)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:154)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:90)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses(JUnitPlatformTestClassProcessor.java:92)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$100(JUnitPlatformTestClassProcessor.java:77)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop(JUnitPlatformTestClassProcessor.java:73)
	at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:61)
	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.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:32)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
	at com.sun.proxy.$Proxy1.stop(Unknown Source)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.stop(TestWorker.java:123)
	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.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:155)
	at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:137)
	at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:404)
	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
	at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
	at java.lang.Thread.run(Thread.java:748)
0.042
Given an empty graph 0.000
And having executed: 0.011
CREATE (x:X)
CREATE (x)-[:R]->()
CREATE (x)-[:R]->()
CREATE (x)-[:R]->()

12:03:39.477 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE (x:X) CREATE (x)-[:R]->() CREATE (x)-[:R]->() CREATE (x)-[:R]->() 12:03:39.484 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV('X').as('x').addV().as(' UNNAMED31').addE('R').from('x').to(' UNNAMED31').addV().as(' UNNAMED51').addE('R').from('x').to(' UNNAMED51').addV().as(' UNNAMED71').addE('R').from('x').to(' UNNAMED71').barrier().limit(0)

When executing query: 0.005
MATCH (n:X)
DETACH DELETE n

12:03:39.511 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n:X) DETACH DELETE n 12:03:39.513 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as('n').hasLabel('X').barrier().sideEffect(__.project(' GENERATED1').by(__.select('n')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.025
-nodes 1
-relationships 3
-labels 1

12:03:39.517 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:39.519 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.520 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:39.522 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.527 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:39.529 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 1 +labels: 0 +nodes: 0 -nodes: 1 -properties: 0 +properties: 0 -relationships: 3 +relationships: 0

0.040
Given an empty graph 0.000
And having executed: 0.007
CREATE (x:X), (n1), (n2), (n3)
CREATE (x)-[:R]->(n1)
CREATE (n1)-[:R]->(n2)
CREATE (n2)-[:R]->(n3)

12:03:39.543 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE (x:X), (n1), (n2), (n3) CREATE (x)-[:R]->(n1) CREATE (n1)-[:R]->(n2) CREATE (n2)-[:R]->(n3) 12:03:39.547 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV('X').as('x').addV().as('n1').addV().as('n2').addV().as('n3').addE('R').from('x').to('n1').addE('R').from('n1').to('n2').addE('R').from('n2').to('n3').barrier().limit(0)

When executing query: 0.008
MATCH p = (:X)-->()-->()-->()
DETACH DELETE p

12:03:39.568 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH p = (:X)-->()-->()-->() DETACH DELETE p 12:03:39.572 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().hasLabel('X').outE().as(' UNNAMED15').aggregate(' cypher.path.edge.p').inV().as(' cypher.path.start.p').outE().as(' UNNAMED20').aggregate(' cypher.path.edge.p').inV().as(' cypher.path.start.p').outE().as(' UNNAMED25').aggregate(' cypher.path.edge.p').inV().path().as('p').where(__.and(__.select(' UNNAMED20').where(neq(' UNNAMED25')), __.select(' UNNAMED15').where(neq(' UNNAMED25')), __.select(' UNNAMED15').where(neq(' UNNAMED20')))).barrier().sideEffect(__.project(' GENERATED1').by(__.select('p')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.023
-nodes 4
-relationships 3
-labels 1

12:03:39.577 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:39.579 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.582 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:39.584 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.586 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:39.589 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 1 +labels: 0 +nodes: 0 -nodes: 4 -properties: 0 +properties: 0 -relationships: 3 +relationships: 0

0.039
Given an empty graph 0.000
And having executed: 0.004
CREATE ()-[:R]->()

12:03:39.602 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE ()-[:R]->() 12:03:39.604 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV().as(' UNNAMED8').addV().as(' UNNAMED17').addE('R').from(' UNNAMED8').to(' UNNAMED17').barrier().limit(0)

When executing query: 0.004
MATCH (a)-[r]-(b)
DELETE r, a, b
RETURN count(*) AS c

12:03:39.626 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (a)-[r]-(b) DELETE r, a, b RETURN count(*) AS c 12:03:39.629 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as('a').bothE().as('r').otherV().as('b').dedup('a', 'r', 'b').barrier().sideEffect(__.project(' GENERATED2', ' GENERATED3', ' GENERATED4').by(__.select('r')).by(__.select('a')).by(__.select('b')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).fold().project('c').by(__.unfold().count())

Then the result should be: 0.000
c
2
And the side effects should be: 0.030
-nodes 2
-relationships 1

12:03:39.630 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:39.632 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.636 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:39.639 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.643 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:39.646 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 2 -properties: 0 +properties: 0 -relationships: 1 +relationships: 0

0.014
Scenario Undirected variable length expand followed by delete and count
Steps
Given an empty graph 0.000
And having executed: 0.005
CREATE (n1), (n2), (n3)
CREATE (n1)-[:R]->(n2)
CREATE (n2)-[:R]->(n3)

12:03:39.661 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE (n1), (n2), (n3) CREATE (n1)-[:R]->(n2) CREATE (n2)-[:R]->(n3) 12:03:39.663 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV().as('n1').addV().as('n2').addV().as('n3').addE('R').from('n1').to('n2').addE('R').from('n2').to('n3').barrier().limit(0)

When executing query: 0.009
MATCH (a)-[*]-(b)
DETACH DELETE a, b
RETURN count(*) AS c

12:03:39.684 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (a)-[*]-(b) DETACH DELETE a, b RETURN count(*) AS c 12:03:39.686 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as('a').as(' cypher.path.start.GENERATED1').repeat(__.bothE().as(' UNNAMED10').otherV()).emit().until(__.path().from(' cypher.path.start.GENERATED1').count(local).is(gte(21))).as('b').dedup('a', ' UNNAMED10', 'b').barrier().sideEffect(__.project(' GENERATED2', ' GENERATED3').by(__.select('a')).by(__.select('b')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).fold().project('c').by(__.unfold().count())

Then the result should be: 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "DeleteAcceptance": Scenario "Undirected variable length expand followed by delete and count" failed with message: 
Expected (in any order of rows):
| c |
| 6 |
Actual:
| c |
| 12 |
	at org.opencypher.tools.tck.api.Scenario$$anonfun$executeOnGraph$1.apply(Scenario.scala:90)
	at org.opencypher.tools.tck.api.Scenario$$anonfun$executeOnGraph$1.apply(Scenario.scala:60)
	at scala.collection.LinearSeqOptimized$class.foldLeft(LinearSeqOptimized.scala:124)
	at scala.collection.immutable.List.foldLeft(List.scala:84)
	at org.opencypher.tools.tck.api.Scenario.executeOnGraph(Scenario.scala:60)
	at org.opencypher.tools.tck.api.Scenario$$anon$1.execute(Scenario.scala:54)
	at org.junit.jupiter.engine.descriptor.JupiterTestDescriptor.executeAndMaskThrowable(JupiterTestDescriptor.java:145)
	at org.junit.jupiter.engine.descriptor.DynamicTestTestDescriptor.execute(DynamicTestTestDescriptor.java:46)
	at org.junit.jupiter.engine.descriptor.DynamicTestTestDescriptor.execute(DynamicTestTestDescriptor.java:24)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$3(HierarchicalTestExecutor.java:83)
	at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:77)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$null$0(HierarchicalTestExecutor.java:85)
	at org.junit.jupiter.engine.descriptor.TestFactoryTestDescriptor.lambda$invokeTestMethod$1(TestFactoryTestDescriptor.java:80)
	at org.junit.jupiter.engine.execution.ThrowableCollector.execute(ThrowableCollector.java:40)
	at org.junit.jupiter.engine.descriptor.TestFactoryTestDescriptor.invokeTestMethod(TestFactoryTestDescriptor.java:68)
	at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:110)
	at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:57)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$3(HierarchicalTestExecutor.java:83)
	at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:77)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$null$2(HierarchicalTestExecutor.java:92)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
	at java.util.Iterator.forEachRemaining(Iterator.java:116)
	at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$3(HierarchicalTestExecutor.java:92)
	at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:77)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$null$2(HierarchicalTestExecutor.java:92)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
	at java.util.Iterator.forEachRemaining(Iterator.java:116)
	at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.lambda$execute$3(HierarchicalTestExecutor.java:92)
	at org.junit.platform.engine.support.hierarchical.SingleTestExecutor.executeSafely(SingleTestExecutor.java:66)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:77)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:51)
	at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:43)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:170)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:154)
	at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:90)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses(JUnitPlatformTestClassProcessor.java:92)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$100(JUnitPlatformTestClassProcessor.java:77)
	at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop(JUnitPlatformTestClassProcessor.java:73)
	at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:61)
	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.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:32)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
	at com.sun.proxy.$Proxy1.stop(Unknown Source)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.stop(TestWorker.java:123)
	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.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:155)
	at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:137)
	at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:404)
	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
	at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
	at java.lang.Thread.run(Thread.java:748)
c
6
0.026
Given an empty graph 0.000
And having executed: 0.002
CREATE ()

12:03:39.694 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE () 12:03:39.695 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV().barrier().limit(0)

When executing query: 0.003
MATCH ()
CREATE (n)
DELETE n

12:03:39.716 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH () CREATE (n) DELETE n 12:03:39.718 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().addV().as('n').barrier().sideEffect(__.project(' GENERATED1').by(__.select('n')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And no side effects 0.019

12:03:39.720 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:39.722 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.723 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:39.725 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.728 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:39.729 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.029
Given an empty graph 0.000
And having executed: 0.002
CREATE ()

12:03:39.741 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE () 12:03:39.742 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV().barrier().limit(0)

When executing query: 0.005
MATCH (n)
OPTIONAL MATCH (n)-[r]-()
DELETE n, r

12:03:39.764 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) OPTIONAL MATCH (n)-[r]-() DELETE n, r 12:03:39.766 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as('n').coalesce(__.select('n').bothE().as('r').otherV().as(' UNNAMED34').dedup('n', 'r', ' UNNAMED34').select('n', 'r', ' UNNAMED34'), __.constant(' cypher.null').as(' GENERATED3').as('r').as(' UNNAMED34').select(' GENERATED3', 'r', ' UNNAMED34')).as(' GENERATED4').select('r').as('r').select(' GENERATED4').select(' UNNAMED34').as(' UNNAMED34').barrier().sideEffect(__.project(' GENERATED6', ' GENERATED7').by(__.select('n')).by(__.select('r')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.020
-nodes 1

12:03:39.769 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:39.771 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.773 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:39.775 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.778 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:39.780 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 1 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.027
Given an empty graph 0.000
When executing query: 0.004
OPTIONAL MATCH (n)
DELETE n

12:03:39.813 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: OPTIONAL MATCH (n) DELETE n 12:03:39.815 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.inject(' cypher.start').coalesce(__.V().as('n'), __.constant(' cypher.null')).as('n').barrier().sideEffect(__.project(' GENERATED1').by(__.select('n')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And no side effects 0.023

12:03:39.818 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:39.819 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.822 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:39.824 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.827 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:39.829 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.026
Given an empty graph 0.000
When executing query: 0.003
OPTIONAL MATCH (n)
DETACH DELETE n

12:03:39.866 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: OPTIONAL MATCH (n) DETACH DELETE n 12:03:39.868 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.inject(' cypher.start').coalesce(__.V().as('n'), __.constant(' cypher.null')).as('n').barrier().sideEffect(__.project(' GENERATED1').by(__.select('n')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And no side effects 0.022

12:03:39.870 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:39.872 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.875 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:39.877 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.879 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:39.881 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.029
Given an empty graph 0.000
When executing query: 0.004
OPTIONAL MATCH p = ()-->()
DETACH DELETE p

12:03:39.917 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: OPTIONAL MATCH p = ()-->() DETACH DELETE p 12:03:39.919 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.inject(' cypher.start').coalesce(__.V().as(' UNNAMED20').outE().as(' UNNAMED22').aggregate(' cypher.path.edge.p').inV().as(' UNNAMED25').path().as('p').select(' UNNAMED20', ' UNNAMED22', ' UNNAMED25', 'p'), __.constant(' cypher.null').as(' UNNAMED20').as(' UNNAMED22').as(' UNNAMED25').as('p').select(' UNNAMED20', ' UNNAMED22', ' UNNAMED25', 'p')).as(' GENERATED1').select(' UNNAMED20').as(' UNNAMED20').select(' GENERATED1').select(' UNNAMED22').as(' UNNAMED22').select(' GENERATED1').select(' UNNAMED25').as(' UNNAMED25').select(' GENERATED1').select('p').as('p').barrier().sideEffect(__.project(' GENERATED2').by(__.select('p')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And no side effects 0.024

12:03:39.922 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:39.923 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.926 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:39.928 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.931 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:39.933 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.033
Given an empty graph 0.000
And having executed: 0.006
CREATE (u:User)
CREATE (u)-[:FRIEND]->()
CREATE (u)-[:FRIEND]->()
CREATE (u)-[:FRIEND]->()
CREATE (u)-[:FRIEND]->()

12:03:39.946 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE (u:User) CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() 12:03:39.949 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV('User').as('u').addV().as(' UNNAMED39').addE('FRIEND').from('u').to(' UNNAMED39').addV().as(' UNNAMED64').addE('FRIEND').from('u').to(' UNNAMED64').addV().as(' UNNAMED89').addE('FRIEND').from('u').to(' UNNAMED89').addV().as(' UNNAMED114').addE('FRIEND').from('u').to(' UNNAMED114').barrier().limit(0)

And parameters are: 0.000
friendIndex 1
When executing query: 0.007
MATCH (:User)-[:FRIEND]->(n)
WITH collect(n) AS friends
DETACH DELETE friends[$friendIndex]

12:03:39.968 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (:User)-[:FRIEND]->(n) WITH collect(n) AS friends DETACH DELETE friends[$friendIndex] 12:03:39.972 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().hasLabel('User').outE('FRIEND').inV().fold().project('friends').by(__.unfold().is(neq(' cypher.null')).fold()).select('friends').as('friends').barrier().sideEffect(__.project(' GENERATED3').by(__.project(' GENERATED4', ' GENERATED5').by(__.select('friends')).by(__.coalesce(__.constant(1), __.constant(' cypher.null'))).select(values).map(containerIndex())).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.020
-nodes 1
-relationships 1

12:03:39.976 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:39.978 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.979 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:39.982 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:39.983 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:39.986 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 1 -properties: 0 +properties: 0 -relationships: 1 +relationships: 0

0.058
Given an empty graph 0.000
And having executed: 0.011
CREATE (u:User)
CREATE (u)-[:FRIEND]->()
CREATE (u)-[:FRIEND]->()
CREATE (u)-[:FRIEND]->()
CREATE (u)-[:FRIEND]->()

12:03:39.997 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE (u:User) CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() 12:03:40.001 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV('User').as('u').addV().as(' UNNAMED39').addE('FRIEND').from('u').to(' UNNAMED39').addV().as(' UNNAMED64').addE('FRIEND').from('u').to(' UNNAMED64').addV().as(' UNNAMED89').addE('FRIEND').from('u').to(' UNNAMED89').addV().as(' UNNAMED114').addE('FRIEND').from('u').to(' UNNAMED114').barrier().limit(0)

And parameters are: 0.000
friendIndex 1
When executing query: 0.012
MATCH (:User)-[r:FRIEND]->()
WITH collect(r) AS friendships
DETACH DELETE friendships[$friendIndex]

12:03:40.036 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (:User)-[r:FRIEND]->() WITH collect(r) AS friendships DETACH DELETE friendships[$friendIndex] 12:03:40.043 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().hasLabel('User').outE('FRIEND').as('r').inV().select('r').fold().project('friendships').by(__.unfold().is(neq(' cypher.null')).fold()).select('friendships').as('friendships').barrier().sideEffect(__.project(' GENERATED3').by(__.project(' GENERATED4', ' GENERATED5').by(__.select('friendships')).by(__.coalesce(__.constant(1), __.constant(' cypher.null'))).select(values).map(containerIndex())).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.035
-relationships 1

12:03:40.049 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:40.052 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.052 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:40.059 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.061 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:40.066 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 1 +relationships: 0

0.058
Given an empty graph 0.000
And having executed: 0.005
CREATE (:User), (:User)

12:03:40.085 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE (:User), (:User) 12:03:40.087 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV('User').addV('User').barrier().limit(0)

When executing query: 0.016
MATCH (u:User)
WITH {key: u} AS nodes
DELETE nodes.key

12:03:40.132 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (u:User) WITH {key: u} AS nodes DELETE nodes.key 12:03:40.137 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as('u').hasLabel('User').select('u').project('nodes').by(__.project('key').by(__.identity())).select('nodes').as('nodes').barrier().sideEffect(__.project(' GENERATED2').by(__.select('nodes').choose(neq(' cypher.null'), __.coalesce(__.select('key'), __.constant(' cypher.null')), __.constant(' cypher.null'))).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.037
-nodes 2
-labels 1

12:03:40.148 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:40.151 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.154 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:40.162 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.168 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:40.171 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 1 +labels: 0 +nodes: 0 -nodes: 2 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.048
Given an empty graph 0.000
And having executed: 0.006
CREATE (a:User), (b:User)
CREATE (a)-[:R]->(b)
CREATE (b)-[:R]->(a)

12:03:40.189 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE (a:User), (b:User) CREATE (a)-[:R]->(b) CREATE (b)-[:R]->(a) 12:03:40.192 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV('User').as('a').addV('User').as('b').addE('R').from('a').to('b').addE('R').from('b').to('a').barrier().limit(0)

When executing query: 0.010
MATCH (:User)-[r]->(:User)
WITH {key: r} AS rels
DELETE rels.key

12:03:40.224 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (:User)-[r]->(:User) WITH {key: r} AS rels DELETE rels.key 12:03:40.230 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().hasLabel('User').outE().as('r').inV().hasLabel('User').select('r').project('rels').by(__.project('key').by(__.identity())).select('rels').as('rels').barrier().sideEffect(__.project(' GENERATED3').by(__.select('rels').choose(neq(' cypher.null'), __.coalesce(__.select('key'), __.constant(' cypher.null')), __.constant(' cypher.null'))).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.031
-relationships 2

12:03:40.234 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:40.236 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.238 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:40.244 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.249 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:40.252 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 2 +relationships: 0

0.067
Given an empty graph 0.000
And having executed: 0.006
CREATE (a:User), (b:User)
CREATE (a)-[:R]->(b)
CREATE (b)-[:R]->(a)

12:03:40.268 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE (a:User), (b:User) CREATE (a)-[:R]->(b) CREATE (b)-[:R]->(a) 12:03:40.272 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV('User').as('a').addV('User').as('b').addE('R').from('a').to('b').addE('R').from('b').to('a').barrier().limit(0)

When executing query: 0.020
MATCH (u:User)
WITH {key: collect(u)} AS nodeMap
DETACH DELETE nodeMap.key[0]

12:03:40.302 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (u:User) WITH {key: collect(u)} AS nodeMap DETACH DELETE nodeMap.key[0] 12:03:40.317 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as('u').hasLabel('User').select('u').fold().project(' AGGREGATION26').by(__.unfold().is(neq(' cypher.null')).fold()).select(' AGGREGATION26').as(' AGGREGATION26').project('nodeMap').by(__.project('key').by(__.identity())).select('nodeMap').as('nodeMap').barrier().sideEffect(__.project(' GENERATED3').by(__.project(' GENERATED4', ' GENERATED5').by(__.select('nodeMap').choose(neq(' cypher.null'), __.coalesce(__.select('key'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.constant(0)).select(values).map(containerIndex())).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.039
-nodes 1
-relationships 2

12:03:40.323 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:40.329 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.331 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:40.335 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.341 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:40.346 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 1 -properties: 0 +properties: 0 -relationships: 2 +relationships: 0

0.064
Given an empty graph 0.000
And having executed: 0.007
CREATE (a:User), (b:User)
CREATE (a)-[:R]->(b)
CREATE (b)-[:R]->(a)

12:03:40.363 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE (a:User), (b:User) CREATE (a)-[:R]->(b) CREATE (b)-[:R]->(a) 12:03:40.367 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV('User').as('a').addV('User').as('b').addE('R').from('a').to('b').addE('R').from('b').to('a').barrier().limit(0)

When executing query: 0.020
MATCH (:User)-[r]->(:User)
WITH {key: {key: collect(r)}} AS rels
DELETE rels.key.key[0]

12:03:40.403 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (:User)-[r]->(:User) WITH {key: {key: collect(r)}} AS rels DELETE rels.key.key[0] 12:03:40.411 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().hasLabel('User').outE().as('r').inV().hasLabel('User').select('r').fold().project(' AGGREGATION44').by(__.unfold().is(neq(' cypher.null')).fold()).select(' AGGREGATION44').as(' AGGREGATION44').project('rels').by(__.project('key').by(__.project('key').by(__.identity()))).select('rels').as('rels').barrier().sideEffect(__.project(' GENERATED4').by(__.project(' GENERATED5', ' GENERATED6').by(__.project(' GENERATED7', ' GENERATED8').by(__.select('rels').choose(neq(' cypher.null'), __.coalesce(__.select('key'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.constant('key')).select(values).map(containerIndex())).by(__.constant(0)).select(values).map(containerIndex())).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.036
-relationships 1

12:03:40.425 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:40.428 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.429 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:40.436 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.437 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:40.443 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 1 +relationships: 0

0.087
Given an empty graph 0.000
And having executed: 0.014
CREATE (a:User), (b:User)
CREATE (a)-[:R]->(b)
CREATE (b)-[:R]->(a)

12:03:40.463 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE (a:User), (b:User) CREATE (a)-[:R]->(b) CREATE (b)-[:R]->(a) 12:03:40.467 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV('User').as('a').addV('User').as('b').addE('R').from('a').to('b').addE('R').from('b').to('a').barrier().limit(0)

When executing query: 0.024
MATCH p = (:User)-[r]->(:User)
WITH {key: collect(p)} AS pathColls
DELETE pathColls.key[0], pathColls.key[1]

12:03:40.513 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH p = (:User)-[r]->(:User) WITH {key: collect(p)} AS pathColls DELETE pathColls.key[0], pathColls.key[1] 12:03:40.521 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().hasLabel('User').outE().aggregate(' cypher.path.edge.p').inV().hasLabel('User').path().fold().project(' AGGREGATION42').by(__.unfold().is(neq(' cypher.null')).fold()).select(' AGGREGATION42').as(' AGGREGATION42').project('pathColls').by(__.project('key').by(__.identity())).select('pathColls').as('pathColls').barrier().sideEffect(__.project(' GENERATED3', ' GENERATED4').by(__.project(' GENERATED5', ' GENERATED6').by(__.select('pathColls').choose(neq(' cypher.null'), __.coalesce(__.select('key'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.constant(0)).select(values).map(containerIndex())).by(__.project(' GENERATED7', ' GENERATED8').by(__.select('pathColls').choose(neq(' cypher.null'), __.coalesce(__.select('key'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.constant(1)).select(values).map(containerIndex())).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.048
-nodes 2
-relationships 2
-labels 1

12:03:40.537 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:40.541 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.545 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:40.551 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.555 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:40.560 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 1 +labels: 0 +nodes: 0 -nodes: 2 -properties: 0 +properties: 0 -relationships: 2 +relationships: 0

0.068
Given an empty graph 0.000
And having executed: 0.009
CREATE ()-[:T {id: 42}]->()

12:03:40.589 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: CREATE ()-[:T {id: 42}]->() 12:03:40.591 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.addV().as(' UNNAMED8').addV().as(' UNNAMED26').addE('T').from(' UNNAMED8').to(' UNNAMED26').property('id', 42).barrier().limit(0)

When executing query: 0.020
MATCH p = ()-[r:T]-()
WHERE r.id = 42
DELETE r

12:03:40.655 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH p = ()-[r:T]-() WHERE r.id = 42 DELETE r 12:03:40.659 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' UNNAMED11').bothE('T').as('r').has('id', eq(42)).aggregate(' cypher.path.edge.p').otherV().as(' UNNAMED20').dedup(' UNNAMED11', 'r', ' UNNAMED20').path().barrier().sideEffect(__.project(' GENERATED1').by(__.select('r')).select(values).unfold().unfold().is(neq(' cypher.null')).drop()).barrier().limit(0)

Then the result should be empty 0.000
And the side effects should be: 0.037
-relationships 1
-properties 1

12:03:40.676 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 12:03:40.681 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.683 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 12:03:40.689 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').outE().as('r').inV().select('r').project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 12:03:40.694 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 12:03:40.697 [gremlin-server-worker-1] INFO o.o.g.s.op.cypher.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 1 +properties: 0 -relationships: 1 +relationships: 0