Project Number Date
cypher-for-gremlin 1.0.0 02 Mar 2019, 16:49

Feature Report

Steps Scenarios Features
Feature Passed Failed Skipped Pending Undefined Total Passed Failed Total Duration Status
DeleteAcceptance 102 1 0 0 0 103 20 1 21 0.387 Failed
Feature DeleteAcceptance
0.015
Given an empty graph 0.000

16:49:32.978 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.001
CREATE ()

16:49:32.979 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.979 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE () 16:49:32.980 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().barrier().limit(0)

When executing query: 0.002
MATCH (n)
DELETE n

16:49:32.992 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) DELETE n}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.992 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) DELETE n 16:49:32.993 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').barrier().sideEffect(__.select('n').aggregate(' cypher.delete')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete').unfold().dedup().is(neq(' cypher.null')).sideEffect(__.bothE().constant('DELETE_CONNECTED_NODE').map(cypherException())).drop())).barrier().limit(0)

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

16:49:32.994 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.994 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:32.995 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:32.996 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.996 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:32.997 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:32.999 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.999 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.000 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.001 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.003 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 1 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.017
Given an empty graph 0.000

16:49:33.005 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.001
CREATE ()

16:49:33.006 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.006 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE () 16:49:33.007 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().barrier().limit(0)

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

16:49:33.020 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) DETACH DELETE n}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.020 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) DETACH DELETE n 16:49:33.022 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().drop()

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

16:49:33.023 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.023 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.024 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.025 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.025 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.027 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.028 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.028 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.030 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.031 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.034 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 1 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.019
Given an empty graph 0.000

16:49:33.036 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.003
UNWIND range(0, 2) AS i
CREATE ()-[:R]->()

16:49:33.036 [Test worker] DEBUG o.a.t.g.driver.Client - UNWIND range(0, 2) AS i CREATE ()-[:R]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.037 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: UNWIND range(0, 2) AS i CREATE ()-[:R]->() 16:49:33.038 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').repeat(__.sideEffect(__.loops().aggregate(' GENERATED1'))).until(__.loops().is(gt(2))).select(' GENERATED1').unfold().addV().as(' UNNAMED32').addV().as(' UNNAMED41').addE('R').from(' UNNAMED32').to(' UNNAMED41').barrier().limit(0)

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

16:49:33.052 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]-() DELETE r}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.052 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]-() DELETE r 16:49:33.053 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').bothE().as('r').otherV().as(' UNNAMED14').dedup(' cypher.path.start.GENERATED1', 'r', ' UNNAMED14').barrier().sideEffect(__.select('r').aggregate(' cypher.delete.detach')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop())).barrier().limit(0)

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

16:49:33.055 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.055 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.056 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.056 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.056 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.058 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.059 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.059 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.060 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.062 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.065 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 3 +relationships: 0

0.016
Given an empty graph 0.000

16:49:33.068 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.003
CREATE (x:X)
CREATE (x)-[:R]->()
CREATE (x)-[:R]->()
CREATE (x)-[:R]->()

16:49:33.069 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (x:X) CREATE (x)-[:R]->() CREATE (x)-[:R]->() CREATE (x)-[:R]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.069 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (x:X) CREATE (x)-[:R]->() CREATE (x)-[:R]->() CREATE (x)-[:R]->() 16:49:33.071 [gremlin-server-worker-1] INFO o.o.g.s.o.c.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.002
MATCH (n:X)
DELETE n

16:49:33.081 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n:X) DELETE n}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.081 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n:X) DELETE n 16:49:33.082 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').hasLabel('X').barrier().sideEffect(__.select('n').aggregate(' cypher.delete')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete').unfold().dedup().is(neq(' cypher.null')).sideEffect(__.bothE().constant('DELETE_CONNECTED_NODE').map(cypherException())).drop())).barrier().limit(0) 16:49:33.083 [gremlin-server-worker-1] ERROR o.o.g.s.o.c.CypherOpProcessor - Error during traversal iteration org.opencypher.gremlin.translation.exception.ConstraintException: Cannot delete node, because it still has relationships. To delete this node, you must first delete its relationships. at org.opencypher.gremlin.traversal.CustomFunctions.lambda$cypherException$26(CustomFunctions.java:478) at org.apache.tinkerpop.gremlin.process.traversal.step.map.LambdaMapStep.map(LambdaMapStep.java:42) at org.apache.tinkerpop.gremlin.process.traversal.step.map.MapStep.processNextStart(MapStep.java:37) 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:192) at org.apache.tinkerpop.gremlin.process.traversal.step.sideEffect.TraversalSideEffectStep.sideEffect(TraversalSideEffectStep.java:48) at org.apache.tinkerpop.gremlin.process.traversal.step.sideEffect.SideEffectStep.processNextStart(SideEffectStep.java:39) 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.traversal.step.filter.FilterStep.processNextStart(FilterStep.java:37) 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:192) at org.apache.tinkerpop.gremlin.process.traversal.step.map.CoalesceStep.flatMap(CoalesceStep.java:58) at org.apache.tinkerpop.gremlin.process.traversal.step.map.FlatMapStep.processNextStart(FlatMapStep.java:49) 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:192) at org.apache.tinkerpop.gremlin.process.traversal.step.sideEffect.TraversalSideEffectStep.sideEffect(TraversalSideEffectStep.java:48) at org.apache.tinkerpop.gremlin.process.traversal.step.sideEffect.SideEffectStep.processNextStart(SideEffectStep.java:39) at org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.hasNext(AbstractStep.java:143) at org.apache.tinkerpop.gremlin.process.traversal.step.util.ExpandableStepIterator.hasNext(ExpandableStepIterator.java:42) at org.apache.tinkerpop.gremlin.process.traversal.step.map.NoOpBarrierStep.processAllStarts(NoOpBarrierStep.java:66) at org.apache.tinkerpop.gremlin.process.traversal.step.map.NoOpBarrierStep.processNextStart(NoOpBarrierStep.java:55) 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.traversal.step.filter.FilterStep.processNextStart(FilterStep.java:37) 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.traversal.step.map.MapStep.processNextStart(MapStep.java:36) 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:192) at org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor.handleIterator(AbstractOpProcessor.java:96) at org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor.handleIterator(AbstractOpProcessor.java:74) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.handleIterator(CypherOpProcessor.java:191) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.lambda$evalCypher$0(CypherOpProcessor.java:128) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.inTransaction(CypherOpProcessor.java:136) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.evalCypher(CypherOpProcessor.java:128) at org.apache.tinkerpop.gremlin.server.handler.OpExecutorHandler.channelRead0(OpExecutorHandler.java:68) at org.apache.tinkerpop.gremlin.server.handler.OpExecutorHandler.channelRead0(OpExecutorHandler.java:43) at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) at io.netty.handler.codec.http.websocketx.Utf8FrameValidator.channelRead(Utf8FrameValidator.java:77) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:204) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) at java.lang.Thread.run(Thread.java:748)

Then a ConstraintVerificationFailed should be raised at runtime: DeleteConnectedNode 0.000
Then a ConstraintVerificationFailed should be raised at runtime: DeleteConnectedNode 0.010

16:49:33.084 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.084 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.085 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.085 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.086 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.087 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.087 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.087 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.089 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.089 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.091 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.019
Given an empty graph 0.000

16:49:33.094 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.005
CREATE (x:X)
CREATE (x)-[:R]->()
CREATE (x)-[:R]->()
CREATE (x)-[:R]->()

16:49:33.095 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (x:X) CREATE (x)-[:R]->() CREATE (x)-[:R]->() CREATE (x)-[:R]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.095 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (x:X) CREATE (x)-[:R]->() CREATE (x)-[:R]->() CREATE (x)-[:R]->() 16:49:33.098 [gremlin-server-worker-1] INFO o.o.g.s.o.c.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.002
MATCH (n:X)
DETACH DELETE n

16:49:33.115 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n:X) DETACH DELETE n}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.115 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n:X) DETACH DELETE n 16:49:33.116 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').hasLabel('X').barrier().sideEffect(__.select('n').aggregate(' cypher.delete.detach')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop())).barrier().limit(0)

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

16:49:33.118 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.118 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.119 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.119 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.119 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.121 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.122 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.122 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.123 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.125 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.127 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 1 +labels: 0 +nodes: 0 -nodes: 1 -properties: 0 +properties: 0 -relationships: 3 +relationships: 0

0.022
Given an empty graph 0.000

16:49:33.129 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.004
CREATE (x:X), (n1), (n2), (n3)
CREATE (x)-[:R]->(n1)
CREATE (n1)-[:R]->(n2)
CREATE (n2)-[:R]->(n3)

16:49:33.130 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (x:X), (n1), (n2), (n3) CREATE (x)-[:R]->(n1) CREATE (n1)-[:R]->(n2) CREATE (n2)-[:R]->(n3)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.130 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (x:X), (n1), (n2), (n3) CREATE (x)-[:R]->(n1) CREATE (n1)-[:R]->(n2) CREATE (n2)-[:R]->(n3) 16:49:33.132 [gremlin-server-worker-1] INFO o.o.g.s.o.c.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.005
MATCH p = (:X)-->()-->()-->()
DETACH DELETE p

16:49:33.143 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = (:X)-->()-->()-->() DETACH DELETE p}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.143 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (:X)-->()-->()-->() DETACH DELETE p 16:49:33.146 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' UNNAMED11').hasLabel('X').outE().as(' UNNAMED15').aggregate(' cypher.path.edge.p').inV().outE().as(' UNNAMED20').aggregate(' cypher.path.edge.p').inV().outE().as(' UNNAMED25').aggregate(' cypher.path.edge.p').inV().path().from(' UNNAMED11').as('p').where(__.and(__.select(' UNNAMED20').where(neq(' UNNAMED25')), __.select(' UNNAMED15').where(neq(' UNNAMED25')), __.select(' UNNAMED15').where(neq(' UNNAMED20')))).barrier().sideEffect(__.select('p').unfold().unfold().where(without(' cypher.path.edge.p')).aggregate(' cypher.delete.detach')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop())).barrier().limit(0)

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

16:49:33.149 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.149 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.150 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.152 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.152 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.153 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.154 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.154 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.156 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.157 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.159 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 1 +labels: 0 +nodes: 0 -nodes: 4 -properties: 0 +properties: 0 -relationships: 3 +relationships: 0

0.017
Given an empty graph 0.000

16:49:33.161 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.002
CREATE ()-[:R]->()

16:49:33.162 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:R]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.162 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:R]->() 16:49:33.163 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as(' UNNAMED8').addV().as(' UNNAMED17').addE('R').from(' UNNAMED8').to(' UNNAMED17').barrier().limit(0)

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

16:49:33.175 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-[r]-(b) DELETE r, a, b RETURN count(*) AS c}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.175 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[r]-(b) DELETE r, a, b RETURN count(*) AS c 16:49:33.177 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').bothE().as('r').otherV().as('b').dedup('a', 'r', 'b').barrier().sideEffect(__.select('r').aggregate(' cypher.delete.detach')).sideEffect(__.select('a').aggregate(' cypher.delete')).sideEffect(__.select('b').aggregate(' cypher.delete')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop().cap(' cypher.delete').unfold().dedup().is(neq(' cypher.null')).sideEffect(__.bothE().constant('DELETE_CONNECTED_NODE').map(cypherException())).drop())).count().project('c').by(__.identity())

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

16:49:33.177 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.178 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.179 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.180 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.180 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.182 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.183 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.183 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.184 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.185 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.187 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 2 -properties: 0 +properties: 0 -relationships: 1 +relationships: 0

0.009
Scenario Undirected variable length expand followed by delete and count
Steps
Given an empty graph 0.000

16:49:33.190 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.002
CREATE (n1), (n2), (n3)
CREATE (n1)-[:R]->(n2)
CREATE (n2)-[:R]->(n3)

16:49:33.190 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (n1), (n2), (n3) CREATE (n1)-[:R]->(n2) CREATE (n2)-[:R]->(n3)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.190 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (n1), (n2), (n3) CREATE (n1)-[:R]->(n2) CREATE (n2)-[:R]->(n3) 16:49:33.192 [gremlin-server-worker-1] INFO o.o.g.s.o.c.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.006
MATCH (a)-[*]-(b)
DETACH DELETE a, b
RETURN count(*) AS c

16:49:33.203 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-[*]-(b) DETACH DELETE a, b RETURN count(*) AS c}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.203 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[*]-(b) DETACH DELETE a, b RETURN count(*) AS c 16:49:33.204 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').repeat(__.bothE().as(' UNNAMED10').otherV()).emit().until(__.path().from('a').count(local).is(gte(21))).as('b').dedup('a', ' UNNAMED10', 'b').optional(__.select(all, ' UNNAMED10').as(' UNNAMED10')).barrier().sideEffect(__.select('a').aggregate(' cypher.delete.detach')).sideEffect(__.select('b').aggregate(' cypher.delete.detach')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop())).count().project('c').by(__.identity())

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.014
Given an empty graph 0.000

16:49:33.209 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.001
CREATE ()

16:49:33.209 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.210 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE () 16:49:33.210 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().barrier().limit(0)

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

16:49:33.222 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH () CREATE (n) DELETE n}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.222 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH () CREATE (n) DELETE n 16:49:33.223 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().addV().as('n').barrier().sideEffect(__.select('n').aggregate(' cypher.delete')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete').unfold().dedup().is(neq(' cypher.null')).sideEffect(__.bothE().constant('DELETE_CONNECTED_NODE').map(cypherException())).drop())).barrier().limit(0)

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

16:49:33.224 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.225 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.226 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.226 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.226 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.227 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.228 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.228 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.229 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.231 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.233 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.018
Given an empty graph 0.000

16:49:33.235 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.001
CREATE ()

16:49:33.235 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.235 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE () 16:49:33.236 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().barrier().limit(0)

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

16:49:33.247 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) OPTIONAL MATCH (n)-[r]-() DELETE n, r}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.247 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) OPTIONAL MATCH (n)-[r]-() DELETE n, r 16:49:33.250 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').choose(__.select('n').bothE().as('r').otherV().as(' UNNAMED34').dedup('n', 'r', ' UNNAMED34'), __.select('n').bothE().as('r').otherV().as(' UNNAMED34').dedup('n', 'r', ' UNNAMED34'), __.constant(' cypher.null').as('r').as(' UNNAMED34')).barrier().sideEffect(__.select('n').aggregate(' cypher.delete')).sideEffect(__.select('r').aggregate(' cypher.delete.detach')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop().cap(' cypher.delete').unfold().dedup().is(neq(' cypher.null')).sideEffect(__.bothE().constant('DELETE_CONNECTED_NODE').map(cypherException())).drop())).barrier().limit(0)

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

16:49:33.252 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.252 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.253 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.254 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.254 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.256 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.257 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.258 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.259 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.260 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.263 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 1 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.013
Given an empty graph 0.000

16:49:33.265 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

When executing query: 0.002
OPTIONAL MATCH (n)
DELETE n

16:49:33.279 [Test worker] DEBUG o.a.t.g.driver.Client - OPTIONAL MATCH (n) DELETE n}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.279 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: OPTIONAL MATCH (n) DELETE n 16:49:33.280 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').choose(__.V().as('n'), __.V().as('n'), __.constant(' cypher.null').as('n')).barrier().sideEffect(__.select('n').aggregate(' cypher.delete')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete').unfold().dedup().is(neq(' cypher.null')).sideEffect(__.bothE().constant('DELETE_CONNECTED_NODE').map(cypherException())).drop())).barrier().limit(0)

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

16:49:33.281 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.281 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.282 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.283 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.283 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.284 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.286 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.286 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.287 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.288 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.290 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.013
Given an empty graph 0.000

16:49:33.292 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

When executing query: 0.002
OPTIONAL MATCH (n)
DETACH DELETE n

16:49:33.310 [Test worker] DEBUG o.a.t.g.driver.Client - OPTIONAL MATCH (n) DETACH DELETE n}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.310 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: OPTIONAL MATCH (n) DETACH DELETE n 16:49:33.311 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').choose(__.V().as('n'), __.V().as('n'), __.constant(' cypher.null').as('n')).barrier().sideEffect(__.select('n').aggregate(' cypher.delete.detach')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop())).barrier().limit(0)

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

16:49:33.312 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.312 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.313 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.314 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.315 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.316 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.317 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.317 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.318 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.319 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.321 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.016
Given an empty graph 0.000

16:49:33.324 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

When executing query: 0.002
OPTIONAL MATCH p = ()-->()
DETACH DELETE p

16:49:33.335 [Test worker] DEBUG o.a.t.g.driver.Client - OPTIONAL MATCH p = ()-->() DETACH DELETE p}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.335 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: OPTIONAL MATCH p = ()-->() DETACH DELETE p 16:49:33.337 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').choose(__.V().as(' cypher.match.start.p').outE().aggregate(' cypher.path.edge.p').inV().path().from(' cypher.match.start.p').as('p'), __.V().as(' cypher.match.start.p').outE().aggregate(' cypher.path.edge.p').inV().path().from(' cypher.match.start.p').as('p'), __.constant(' cypher.null').as('p')).barrier().sideEffect(__.select('p').unfold().unfold().where(without(' cypher.path.edge.p')).aggregate(' cypher.delete.detach')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop())).barrier().limit(0)

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

16:49:33.338 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.338 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.339 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.340 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.340 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.342 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.343 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.343 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.344 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.345 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.348 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.018
Given an empty graph 0.000

16:49:33.352 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.005
CREATE (u:User)
CREATE (u)-[:FRIEND]->()
CREATE (u)-[:FRIEND]->()
CREATE (u)-[:FRIEND]->()
CREATE (u)-[:FRIEND]->()

16:49:33.353 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (u:User) CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.353 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (u:User) CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() 16:49:33.355 [gremlin-server-worker-1] INFO o.o.g.s.o.c.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.004
MATCH (:User)-[:FRIEND]->(n)
WITH collect(n) AS friends
DETACH DELETE friends[$friendIndex]

16:49:33.367 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (:User)-[:FRIEND]->(n) WITH collect(n) AS friends DETACH DELETE friends[$friendIndex], bindings={friendIndex=1}}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.368 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (:User)-[:FRIEND]->(n) WITH collect(n) AS friends DETACH DELETE friends[$friendIndex] 16:49:33.370 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('User').outE('FRIEND').inV().is(neq(' cypher.null')).fold().as('friends').barrier().sideEffect(__.project(' GENERATED3', ' GENERATED4').by(__.select('friends')).by(__.choose(__.constant(1), __.constant(1), __.constant(' cypher.null'))).select(values).map(cypherContainerIndex()).unfold().aggregate(' cypher.delete.detach')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop())).barrier().limit(0)

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

16:49:33.372 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.372 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.373 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.373 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.373 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.374 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.374 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.375 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.376 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.376 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.378 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 1 -properties: 0 +properties: 0 -relationships: 1 +relationships: 0

0.018
Given an empty graph 0.000

16:49:33.381 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.003
CREATE (u:User)
CREATE (u)-[:FRIEND]->()
CREATE (u)-[:FRIEND]->()
CREATE (u)-[:FRIEND]->()
CREATE (u)-[:FRIEND]->()

16:49:33.381 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (u:User) CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.381 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (u:User) CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() CREATE (u)-[:FRIEND]->() 16:49:33.383 [gremlin-server-worker-1] INFO o.o.g.s.o.c.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.004
MATCH (:User)-[r:FRIEND]->()
WITH collect(r) AS friendships
DETACH DELETE friendships[$friendIndex]

16:49:33.394 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (:User)-[r:FRIEND]->() WITH collect(r) AS friendships DETACH DELETE friendships[$friendIndex], bindings={friendIndex=1}}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.394 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (:User)-[r:FRIEND]->() WITH collect(r) AS friendships DETACH DELETE friendships[$friendIndex] 16:49:33.396 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('User').outE('FRIEND').as('r').inV().select('r').is(neq(' cypher.null')).fold().as('friendships').barrier().sideEffect(__.project(' GENERATED3', ' GENERATED4').by(__.select('friendships')).by(__.choose(__.constant(1), __.constant(1), __.constant(' cypher.null'))).select(values).map(cypherContainerIndex()).unfold().aggregate(' cypher.delete.detach')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop())).barrier().limit(0)

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

16:49:33.398 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.398 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.399 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.399 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.399 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.400 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.400 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.401 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.402 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.402 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.405 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 1 +relationships: 0

0.021
Given an empty graph 0.000

16:49:33.408 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.001
CREATE (:User), (:User)

16:49:33.409 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:User), (:User)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.409 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:User), (:User) 16:49:33.409 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('User').addV('User').barrier().limit(0)

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

16:49:33.422 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (u:User) WITH {key: u} AS nodes DELETE nodes.key}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.422 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (u:User) WITH {key: u} AS nodes DELETE nodes.key 16:49:33.425 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('User').map(__.project('key').by(__.identity())).as('nodes').barrier().sideEffect(__.limit(0).aggregate(' cypher.delete')).sideEffect(__.limit(0).aggregate(' cypher.delete.detach')).sideEffect(__.select('nodes').choose(neq(' cypher.null'), __.choose(__.select('key'), __.select('key'), __.constant(' cypher.null'))).unfold().choose(cypherIsNode(), __.aggregate(' cypher.delete'), __.aggregate(' cypher.delete.detach'))).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop().cap(' cypher.delete').unfold().dedup().is(neq(' cypher.null')).sideEffect(__.bothE().constant('DELETE_CONNECTED_NODE').map(cypherException())).drop())).barrier().limit(0)

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

16:49:33.427 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.427 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.428 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.430 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.430 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.431 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.433 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.433 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.434 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.435 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.438 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 1 +labels: 0 +nodes: 0 -nodes: 2 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.018
Given an empty graph 0.000

16:49:33.442 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.003
CREATE (a:User), (b:User)
CREATE (a)-[:R]->(b)
CREATE (b)-[:R]->(a)

16:49:33.442 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:User), (b:User) CREATE (a)-[:R]->(b) CREATE (b)-[:R]->(a)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.442 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:User), (b:User) CREATE (a)-[:R]->(b) CREATE (b)-[:R]->(a) 16:49:33.444 [gremlin-server-worker-1] INFO o.o.g.s.o.c.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.005
MATCH (:User)-[r]->(:User)
WITH {key: r} AS rels
DELETE rels.key

16:49:33.454 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (:User)-[r]->(:User) WITH {key: r} AS rels DELETE rels.key}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.454 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (:User)-[r]->(:User) WITH {key: r} AS rels DELETE rels.key 16:49:33.457 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('User').outE().as('r').inV().hasLabel('User').select('r').map(__.project('key').by(__.identity())).as('rels').barrier().sideEffect(__.limit(0).aggregate(' cypher.delete')).sideEffect(__.limit(0).aggregate(' cypher.delete.detach')).sideEffect(__.select('rels').choose(neq(' cypher.null'), __.choose(__.select('key'), __.select('key'), __.constant(' cypher.null'))).unfold().choose(cypherIsNode(), __.aggregate(' cypher.delete'), __.aggregate(' cypher.delete.detach'))).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop().cap(' cypher.delete').unfold().dedup().is(neq(' cypher.null')).sideEffect(__.bothE().constant('DELETE_CONNECTED_NODE').map(cypherException())).drop())).barrier().limit(0)

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

16:49:33.460 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.460 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.461 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.461 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.461 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.462 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.464 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.464 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.465 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.465 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.467 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 2 +relationships: 0

0.019
Given an empty graph 0.000

16:49:33.470 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.003
CREATE (a:User), (b:User)
CREATE (a)-[:R]->(b)
CREATE (b)-[:R]->(a)

16:49:33.470 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:User), (b:User) CREATE (a)-[:R]->(b) CREATE (b)-[:R]->(a)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.470 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:User), (b:User) CREATE (a)-[:R]->(b) CREATE (b)-[:R]->(a) 16:49:33.472 [gremlin-server-worker-1] INFO o.o.g.s.o.c.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.004
MATCH (u:User)
WITH {key: collect(u)} AS nodeMap
DETACH DELETE nodeMap.key[0]

16:49:33.483 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (u:User) WITH {key: collect(u)} AS nodeMap DETACH DELETE nodeMap.key[0]}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.484 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (u:User) WITH {key: collect(u)} AS nodeMap DETACH DELETE nodeMap.key[0] 16:49:33.486 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('User').is(neq(' cypher.null')).fold().map(__.project('key').by(__.identity())).as('nodeMap').barrier().sideEffect(__.project(' GENERATED3', ' GENERATED4').by(__.select('nodeMap').choose(neq(' cypher.null'), __.choose(__.select('key'), __.select('key'), __.constant(' cypher.null')))).by(__.constant(0)).select(values).map(cypherContainerIndex()).unfold().aggregate(' cypher.delete.detach')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop())).barrier().limit(0)

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

16:49:33.488 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.488 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.490 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.490 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.490 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.491 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.492 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.492 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.494 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.494 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.497 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 1 -properties: 0 +properties: 0 -relationships: 2 +relationships: 0

0.023
Given an empty graph 0.000

16:49:33.499 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.003
CREATE (a:User), (b:User)
CREATE (a)-[:R]->(b)
CREATE (b)-[:R]->(a)

16:49:33.500 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:User), (b:User) CREATE (a)-[:R]->(b) CREATE (b)-[:R]->(a)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.500 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:User), (b:User) CREATE (a)-[:R]->(b) CREATE (b)-[:R]->(a) 16:49:33.501 [gremlin-server-worker-1] INFO o.o.g.s.o.c.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.006
MATCH (:User)-[r]->(:User)
WITH {key: {key: collect(r)}} AS rels
DELETE rels.key.key[0]

16:49:33.515 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (:User)-[r]->(:User) WITH {key: {key: collect(r)}} AS rels DELETE rels.key.key[0]}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.515 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (:User)-[r]->(:User) WITH {key: {key: collect(r)}} AS rels DELETE rels.key.key[0] 16:49:33.518 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('User').outE().as('r').inV().hasLabel('User').select('r').is(neq(' cypher.null')).fold().map(__.project('key').by(__.project('key').by(__.identity()))).as('rels').barrier().sideEffect(__.limit(0).aggregate(' cypher.delete')).sideEffect(__.limit(0).aggregate(' cypher.delete.detach')).sideEffect(__.project(' GENERATED4', ' GENERATED5').by(__.project(' GENERATED6', ' GENERATED7').by(__.select('rels').choose(neq(' cypher.null'), __.choose(__.select('key'), __.select('key'), __.constant(' cypher.null')))).by(__.constant('key')).select(values).map(cypherContainerIndex())).by(__.constant(0)).select(values).map(cypherContainerIndex()).unfold().choose(cypherIsNode(), __.aggregate(' cypher.delete'), __.aggregate(' cypher.delete.detach'))).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop().cap(' cypher.delete').unfold().dedup().is(neq(' cypher.null')).sideEffect(__.bothE().constant('DELETE_CONNECTED_NODE').map(cypherException())).drop())).barrier().limit(0)

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

16:49:33.521 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.521 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.522 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.522 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.523 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.524 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.524 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.524 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.526 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.526 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.530 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 1 +relationships: 0

0.027
Given an empty graph 0.000

16:49:33.534 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.004
CREATE (a:User), (b:User)
CREATE (a)-[:R]->(b)
CREATE (b)-[:R]->(a)

16:49:33.535 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:User), (b:User) CREATE (a)-[:R]->(b) CREATE (b)-[:R]->(a)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.535 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:User), (b:User) CREATE (a)-[:R]->(b) CREATE (b)-[:R]->(a) 16:49:33.537 [gremlin-server-worker-1] INFO o.o.g.s.o.c.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.008
MATCH p = (:User)-[r]->(:User)
WITH {key: collect(p)} AS pathColls
DELETE pathColls.key[0], pathColls.key[1]

16:49:33.554 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = (:User)-[r]->(:User) WITH {key: collect(p)} AS pathColls DELETE pathColls.key[0], pathColls.key[1]}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.554 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (:User)-[r]->(:User) WITH {key: collect(p)} AS pathColls DELETE pathColls.key[0], pathColls.key[1] 16:49:33.558 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.p').hasLabel('User').outE().aggregate(' cypher.path.edge.p').inV().hasLabel('User').path().from(' cypher.path.start.p').is(neq(' cypher.null')).fold().map(__.project('key').by(__.identity())).as('pathColls').barrier().sideEffect(__.limit(0).aggregate(' cypher.delete')).sideEffect(__.limit(0).aggregate(' cypher.delete.detach')).sideEffect(__.project(' GENERATED3', ' GENERATED4').by(__.select('pathColls').choose(neq(' cypher.null'), __.choose(__.select('key'), __.select('key'), __.constant(' cypher.null')))).by(__.constant(0)).select(values).map(cypherContainerIndex()).unfold().choose(cypherIsNode(), __.aggregate(' cypher.delete'), __.aggregate(' cypher.delete.detach'))).sideEffect(__.project(' GENERATED5', ' GENERATED6').by(__.select('pathColls').choose(neq(' cypher.null'), __.choose(__.select('key'), __.select('key'), __.constant(' cypher.null')))).by(__.constant(1)).select(values).map(cypherContainerIndex()).unfold().choose(cypherIsNode(), __.aggregate(' cypher.delete'), __.aggregate(' cypher.delete.detach'))).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop().cap(' cypher.delete').unfold().dedup().is(neq(' cypher.null')).sideEffect(__.bothE().constant('DELETE_CONNECTED_NODE').map(cypherException())).drop())).barrier().limit(0)

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

16:49:33.563 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.563 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.564 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.566 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.566 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.567 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.568 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.568 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.570 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.571 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.574 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 1 +labels: 0 +nodes: 0 -nodes: 2 -properties: 0 +properties: 0 -relationships: 2 +relationships: 0

0.026
Given an empty graph 0.000

16:49:33.577 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}}

And having executed: 0.002
CREATE ()-[:T {id: 42}]->()

16:49:33.577 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T {id: 42}]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.578 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T {id: 42}]->() 16:49:33.579 [gremlin-server-worker-1] INFO o.o.g.s.o.c.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.005
MATCH p = ()-[r:T]-()
WHERE r.id = 42
DELETE r

16:49:33.591 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = ()-[r:T]-() WHERE r.id = 42 DELETE r}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.591 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = ()-[r:T]-() WHERE r.id = 42 DELETE r 16:49:33.593 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.p').bothE('T').as('r').has('id', eq(42)).aggregate(' cypher.path.edge.p').otherV().as(' UNNAMED20').dedup(' cypher.path.start.p', 'r', ' UNNAMED20').path().from(' cypher.path.start.p').barrier().sideEffect(__.select('r').aggregate(' cypher.delete.detach')).sideEffect(__.limit(0).aggregate(' cypher.delete.once')).barrier().sideEffect(__.coalesce(__.cap(' cypher.delete.once').unfold(), __.constant(true).aggregate(' cypher.delete.once').cap(' cypher.delete.detach').unfold().dedup().is(neq(' cypher.null')).drop())).barrier().limit(0)

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

16:49:33.597 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.597 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:33.599 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:33.600 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.600 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:33.603 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:33.605 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.605 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:33.607 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:33.609 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:33.612 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 1 +properties: 0 -relationships: 1 +relationships: 0