Project Number Date
cypher-for-gremlin 0.9.10 04 Jul 2018, 23:04

Feature Report

Steps Scenarios Features
Feature Passed Failed Skipped Pending Undefined Total Passed Failed Total Duration Status
MatchAcceptance2 458 13 0 0 0 471 85 13 98 3.709 Failed
Feature MatchAcceptance2
0.035
Given an empty graph 0.000

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

When executing query: 0.006
MATCH (n)
RETURN n

23:03:28.137 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN n}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.137 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN n 23:03:28.140 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('n').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
n
And no side effects 0.029

23:03:28.143 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.143 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:28.146 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.149 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.149 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:28.152 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.156 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.156 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:28.158 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:28.161 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.166 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.036
Given an empty graph 0.000

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

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

23:03:28.202 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN r}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.203 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN r 23:03:28.205 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('r').by(__.choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()), __.constant(' cypher.null')))

Then the result should be: 0.000
r
And no side effects 0.030

23:03:28.209 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.209 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:28.211 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.214 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.215 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:28.218 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.222 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.222 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:28.225 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:28.229 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.234 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.032
Given an empty graph 0.000

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

And having executed: 0.008
CREATE (root:Root {name: 'x'}),
       (child1:TextNode {id: 'text'}),
       (child2:IntNode {id: 0})
CREATE (root)-[:T]->(child1),
       (root)-[:T]->(child2)

23:03:28.240 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (root:Root {name: 'x'}), (child1:TextNode {id: 'text'}), (child2:IntNode {id: 0}) CREATE (root)-[:T]->(child1), (root)-[:T]->(child2)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.240 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (root:Root {name: 'x'}), (child1:TextNode {id: 'text'}), (child2:IntNode {id: 0}) CREATE (root)-[:T]->(child1), (root)-[:T]->(child2) 23:03:28.245 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('Root').as('root').property(single, 'name', 'x').addV('TextNode').as('child1').property(single, 'id', 'text').addV('IntNode').as('child2').property(single, 'id', 0).addE('T').from('root').to('child1').addE('T').from('root').to('child2').barrier().limit(0)

When executing query: 0.006
MATCH (:Root {name: 'x'})-->(i:TextNode)
WHERE i.id > 'te'
RETURN i

23:03:28.266 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (:Root {name: 'x'})-->(i:TextNode) WHERE i.id > 'te' RETURN i}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.266 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (:Root {name: 'x'})-->(i:TextNode) WHERE i.id > 'te' RETURN i 23:03:28.271 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('Root').has('name', eq('x')).outE().inV().as('i').hasLabel('TextNode').has('id', gt('te')).select('i').project('i').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
i
(:TextNode {id: 'text'})
And no side effects 0.017

23:03:28.272 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.272 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:28.275 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.275 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.275 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:28.279 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.279 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.280 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:28.283 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:28.283 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.284 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.040
Given an empty graph 0.000

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

And having executed: 0.012
CREATE (root:Root {name: 'x'}),
       (child1:TextNode {id: 'text'}),
       (child2:IntNode {id: 0})
CREATE (root)-[:T]->(child1),
       (root)-[:T]->(child2)

23:03:28.290 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (root:Root {name: 'x'}), (child1:TextNode {id: 'text'}), (child2:IntNode {id: 0}) CREATE (root)-[:T]->(child1), (root)-[:T]->(child2)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.291 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (root:Root {name: 'x'}), (child1:TextNode {id: 'text'}), (child2:IntNode {id: 0}) CREATE (root)-[:T]->(child1), (root)-[:T]->(child2) 23:03:28.297 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('Root').as('root').property(single, 'name', 'x').addV('TextNode').as('child1').property(single, 'id', 'text').addV('IntNode').as('child2').property(single, 'id', 0).addE('T').from('root').to('child1').addE('T').from('root').to('child2').barrier().limit(0)

When executing query: 0.008
MATCH (:Root {name: 'x'})-->(i)
WHERE exists(i.id) OR i.id > 'te'
RETURN i

23:03:28.320 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (:Root {name: 'x'})-->(i) WHERE exists(i.id) OR i.id > 'te' RETURN i}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.320 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (:Root {name: 'x'})-->(i) WHERE exists(i.id) OR i.id > 'te' RETURN i 23:03:28.326 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('Root').has('name', eq('x')).outE().inV().as('i').where(__.or(__.project(' GENERATED2', ' GENERATED3').by(__.select('i')).by(__.constant('id')).select(values).map(cypherContainerIndex()).choose(__.is(neq(' cypher.null')), __.constant(true), __.constant(false)).is(neq(' cypher.null')).is(eq(true)), __.project(' GENERATED4', ' GENERATED5').by(__.select('i')).by(__.constant('id')).select(values).map(cypherContainerIndex()).is(neq(' cypher.null')).is(gt('te')))).select('i').project('i').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
i
(:TextNode {id: 'text'})
(:IntNode {id: 0})
And no side effects 0.019

23:03:28.328 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.329 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:28.333 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.333 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.334 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:28.336 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.337 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.337 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:28.340 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:28.341 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.342 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.017
Scenario Aggregation with named paths
Steps
Given an empty graph 0.000

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

And having executed: 0.008
CREATE (n1 {num: 1}), (n2 {num: 2}),
       (n3 {num: 3}), (n4 {num: 4})
CREATE (n1)-[:T]->(n2),
       (n3)-[:T]->(n4)

23:03:28.349 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (n1 {num: 1}), (n2 {num: 2}), (n3 {num: 3}), (n4 {num: 4}) CREATE (n1)-[:T]->(n2), (n3)-[:T]->(n4)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.349 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (n1 {num: 1}), (n2 {num: 2}), (n3 {num: 3}), (n4 {num: 4}) CREATE (n1)-[:T]->(n2), (n3)-[:T]->(n4) 23:03:28.353 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('n1').property(single, 'num', 1).addV().as('n2').property(single, 'num', 2).addV().as('n3').property(single, 'num', 3).addV().as('n4').property(single, 'num', 4).addE('T').from('n1').to('n2').addE('T').from('n3').to('n4').barrier().limit(0)

When executing query: 0.009
MATCH p = ()-[*]->()
WITH count(*) AS count, p AS p
WITH nodes(p) AS nodes
RETURN *

23:03:28.378 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = ()-[*]->() WITH count(*) AS count, p AS p WITH nodes(p) AS nodes RETURN *}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.379 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = ()-[*]->() WITH count(*) AS count, p AS p WITH nodes(p) AS nodes RETURN * 23:03:28.385 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.match.start.p').as(' cypher.path.start.p').repeat(__.outE().aggregate(' cypher.path.edge.p').inV()).emit().until(__.path().from(' cypher.path.start.p').count(local).is(gte(21))).as(' cypher.match.end.p').path().as('p').group().by(__.identity()).by(__.fold().project('count', 'p').by(__.unfold().count()).by(__.unfold())).unfold().select(values).as(' GENERATED1').select('count').as('count').select(' GENERATED1').select('p').as('p').map(__.path().from(' cypher.match.start.p').to(' cypher.match.end.p').by(__.identity()).by(__.constant(' cypher.unused')).local(__.unfold().is(neq(' cypher.unused')).fold())).unfold().is(neq(' cypher.null')).valueMap(true).fold().project('nodes').by(__.identity()) 23:03:28.386 [gremlin-server-worker-1] ERROR o.o.g.s.o.c.CypherOpProcessor - Error during traversal iteration java.lang.IllegalArgumentException: Could not locate path from-label: cypher.match.start.p at org.apache.tinkerpop.gremlin.process.traversal.Path$Exceptions.couldNotLocatePathFromLabel(Path.java:295) at org.apache.tinkerpop.gremlin.process.traversal.Path.subPath(Path.java:270) at org.apache.tinkerpop.gremlin.process.traversal.step.map.PathStep.map(PathStep.java:55) at org.apache.tinkerpop.gremlin.process.traversal.step.map.PathStep.map(PathStep.java:41) at org.apache.tinkerpop.gremlin.process.traversal.step.map.MapStep.processNextStart(MapStep.java:37) at org.apache.tinkerpop.gremlin.process.traversal.step.map.PathStep.processNextStart(PathStep.java:118) 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.branch.LocalStep.processNextStart(LocalStep.java:61) 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.TraversalMapStep.map(TraversalMapStep.java:48) 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.step.util.ExpandableStepIterator.next(ExpandableStepIterator.java:50) at org.apache.tinkerpop.gremlin.process.traversal.step.map.FlatMapStep.processNextStart(FlatMapStep.java:48) 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.step.util.ExpandableStepIterator.hasNext(ExpandableStepIterator.java:42) at org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processAllStarts(ReducingBarrierStep.java:83) at org.apache.tinkerpop.gremlin.process.traversal.step.util.ReducingBarrierStep.processNextStart(ReducingBarrierStep.java:113) 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.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:89) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.handleIterator(CypherOpProcessor.java:190) 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:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:159) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) at java.lang.Thread.run(Thread.java:748)

Then the result should be: 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "MatchAcceptance2": Scenario "Aggregation with named paths" failed with message: Expected: | nodes |
| [({num: 1}), ({num: 2})] |
| [({num: 3}), ({num: 4})] |, got error ExecutionFailed(UnknownError,runtime,Could not locate path from-label:   cypher.match.start.p,Some(org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Could not locate path from-label:   cypher.match.start.p))
	at org.opencypher.tools.tck.api.Scenario$$anonfun$executeOnGraph$1.apply(Scenario.scala:95)
	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)
Caused by: org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Could not locate path from-label:   cypher.match.start.p
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:246)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:197)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:123)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:67)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at org.apache.tinkerpop.gremlin.driver.handler.WebSocketClientHandler.channelRead0(WebSocketClientHandler.java:94)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921)
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135)
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131)
	... 1 more
nodes
[({num: 1}), ({num: 2})]
[({num: 3}), ({num: 4})]
0.043
Given an empty graph 0.000

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

And having executed: 0.010
CREATE (a {name: 'A'}), (b {name: 'B'}),
       (c {name: 'C'}), ({name: 'D'}),
       ({name: 'E'})
CREATE (a)-[:CONTAINS]->(b),
       (b)-[:FRIEND]->(c)

23:03:28.389 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}), ({name: 'D'}), ({name: 'E'}) CREATE (a)-[:CONTAINS]->(b), (b)-[:FRIEND]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.389 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}), ({name: 'D'}), ({name: 'E'}) CREATE (a)-[:CONTAINS]->(b), (b)-[:FRIEND]->(c) 23:03:28.394 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'A').addV().as('b').property(single, 'name', 'B').addV().as('c').property(single, 'name', 'C').addV().property(single, 'name', 'D').addV().property(single, 'name', 'E').addE('CONTAINS').from('a').to('b').addE('FRIEND').from('b').to('c').barrier().limit(0)

When executing query: 0.006
MATCH (a {name: 'A'})-[:CONTAINS*0..1]->(b)-[:FRIEND*0..1]->(c)
RETURN a, b, c

23:03:28.419 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a {name: 'A'})-[:CONTAINS*0..1]->(b)-[:FRIEND*0..1]->(c) RETURN a, b, c}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.419 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a {name: 'A'})-[:CONTAINS*0..1]->(b)-[:FRIEND*0..1]->(c) RETURN a, b, c 23:03:28.424 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('A')).as(' cypher.path.start.GENERATED1').emit().repeat(__.outE('CONTAINS').inV()).until(__.path().from(' cypher.path.start.GENERATED1').count(local).is(gte(3))).where(__.path().from(' cypher.path.start.GENERATED1').count(local).is(between(0, 4))).simplePath().from(' cypher.path.start.GENERATED1').as('b').as(' cypher.path.start.GENERATED2').emit().repeat(__.outE('FRIEND').inV()).until(__.path().from(' cypher.path.start.GENERATED2').count(local).is(gte(3))).where(__.path().from(' cypher.path.start.GENERATED2').count(local).is(between(0, 4))).simplePath().from(' cypher.path.start.GENERATED2').as('c').select('a', 'b', 'c').project('a', 'b', 'c').by(__.select('a').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('b').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('c').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
a b c
({name: 'A'}) ({name: 'A'}) ({name: 'A'})
({name: 'A'}) ({name: 'B'}) ({name: 'B'})
({name: 'A'}) ({name: 'B'}) ({name: 'C'})
And no side effects 0.026

23:03:28.426 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.426 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:28.429 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.430 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:28.435 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.435 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.435 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:28.440 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:28.445 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.446 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.047
Given an empty graph 0.000

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

And having executed: 0.009
CREATE (a {name: 'A'}), (b {name: 'B'}),
       (c {name: 'C'}), (d {name: 'D'})
CREATE (a)-[:CONTAINS]->(b),
       (b)-[:CONTAINS]->(c),
       (c)-[:CONTAINS]->(d)

23:03:28.454 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}), (d {name: 'D'}) CREATE (a)-[:CONTAINS]->(b), (b)-[:CONTAINS]->(c), (c)-[:CONTAINS]->(d)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.454 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}), (d {name: 'D'}) CREATE (a)-[:CONTAINS]->(b), (b)-[:CONTAINS]->(c), (c)-[:CONTAINS]->(d) 23:03:28.458 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'A').addV().as('b').property(single, 'name', 'B').addV().as('c').property(single, 'name', 'C').addV().as('d').property(single, 'name', 'D').addE('CONTAINS').from('a').to('b').addE('CONTAINS').from('b').to('c').addE('CONTAINS').from('c').to('d').barrier().limit(0)

When executing query: 0.007
MATCH (a {name: 'A'})-[*]->(x)
RETURN x

23:03:28.495 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a {name: 'A'})-[*]->(x) RETURN x}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.495 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a {name: 'A'})-[*]->(x) RETURN x 23:03:28.501 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().has('name', eq('A')).as(' cypher.path.start.GENERATED1').repeat(__.outE().inV()).emit().until(__.path().from(' cypher.path.start.GENERATED1').count(local).is(gte(21))).project('x').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
x
({name: 'B'})
({name: 'C'})
({name: 'D'})
And no side effects 0.030

23:03:28.503 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.503 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:28.509 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.509 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.510 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:28.515 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.516 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.516 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:28.522 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:28.527 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.528 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.037
Given an empty graph 0.000

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

And having executed: 0.008
CREATE (a {name: 'A'}), (b {name: 'B'}),
       (c {name: 'C'})
CREATE (a)-[:KNOWS]->(b),
       (b)-[:KNOWS]->(c)

23:03:28.535 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) CREATE (a)-[:KNOWS]->(b), (b)-[:KNOWS]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.535 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) CREATE (a)-[:KNOWS]->(b), (b)-[:KNOWS]->(c) 23:03:28.539 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'A').addV().as('b').property(single, 'name', 'B').addV().as('c').property(single, 'name', 'C').addE('KNOWS').from('a').to('b').addE('KNOWS').from('b').to('c').barrier().limit(0)

When executing query: 0.006
MATCH p = ({name: 'A'})-[:KNOWS*..2]->()
RETURN p

23:03:28.562 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = ({name: 'A'})-[:KNOWS*..2]->() RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.563 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = ({name: 'A'})-[:KNOWS*..2]->() RETURN p 23:03:28.566 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().has('name', eq('A')).as(' cypher.path.start.p').repeat(__.outE('KNOWS').aggregate(' cypher.path.edge.p').inV()).emit().until(__.path().from(' cypher.path.start.p').count(local).is(gte(5))).where(__.path().from(' cypher.path.start.p').count(local).is(lte(5))).simplePath().from(' cypher.path.start.p').path().project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
p
<({name: 'A'})-[:KNOWS]->({name: 'B'})>
<({name: 'A'})-[:KNOWS]->({name: 'B'})-[:KNOWS]->({name: 'C'})>
And no side effects 0.022

23:03:28.569 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.569 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:28.574 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.575 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.575 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:28.577 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.578 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.578 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:28.581 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:28.584 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.585 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.035
Given an empty graph 0.000

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

And having executed: 0.008
CREATE (a {name: 'A'}), (b {name: 'B'}),
       (c {name: 'C'})
CREATE (a)-[:KNOWS]->(b),
       (b)-[:KNOWS]->(c)

23:03:28.592 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) CREATE (a)-[:KNOWS]->(b), (b)-[:KNOWS]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.592 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) CREATE (a)-[:KNOWS]->(b), (b)-[:KNOWS]->(c) 23:03:28.596 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'A').addV().as('b').property(single, 'name', 'B').addV().as('c').property(single, 'name', 'C').addE('KNOWS').from('a').to('b').addE('KNOWS').from('b').to('c').barrier().limit(0)

When executing query: 0.005
MATCH p = ({name: 'A'})-[:KNOWS*..]->()
RETURN p

23:03:28.620 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = ({name: 'A'})-[:KNOWS*..]->() RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.621 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = ({name: 'A'})-[:KNOWS*..]->() RETURN p 23:03:28.624 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().has('name', eq('A')).as(' cypher.path.start.p').repeat(__.outE('KNOWS').aggregate(' cypher.path.edge.p').inV()).emit().until(__.path().from(' cypher.path.start.p').count(local).is(gte(21))).path().project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
p
<({name: 'A'})-[:KNOWS]->({name: 'B'})>
<({name: 'A'})-[:KNOWS]->({name: 'B'})-[:KNOWS]->({name: 'C'})>
And no side effects 0.021

23:03:28.626 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.626 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:28.630 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.631 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.632 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:28.635 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.635 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.635 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:28.638 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:28.642 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.642 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.033
Given an empty graph 0.000

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

And having executed: 0.006
CREATE (a {name: 'A'}), (b {name: 'B'}),
       (c {name: 'C'})
CREATE (a)-[:KNOWS]->(b)

23:03:28.649 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) CREATE (a)-[:KNOWS]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.649 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) CREATE (a)-[:KNOWS]->(b) 23:03:28.652 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'A').addV().as('b').property(single, 'name', 'B').addV().property(single, 'name', 'C').addE('KNOWS').from('a').to('b').barrier().limit(0)

When executing query: 0.006
MATCH (a {name: 'A'}), (c {name: 'C'})
MATCH (a)-->(b)
RETURN a, b, c

23:03:28.676 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a {name: 'A'}), (c {name: 'C'}) MATCH (a)-->(b) RETURN a, b, c}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.676 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a {name: 'A'}), (c {name: 'C'}) MATCH (a)-->(b) RETURN a, b, c 23:03:28.682 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('A')).V().as('c').has('name', eq('C')).select('a').outE().inV().as('b').select('a', 'b', 'c').project('a', 'b', 'c').by(__.select('a').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('b').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('c').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
a b c
({name: 'A'}) ({name: 'B'}) ({name: 'C'})
And no side effects 0.020

23:03:28.683 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.683 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:28.686 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.686 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.686 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:28.690 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.690 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.690 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:28.693 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:28.697 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.698 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.037
Given an empty graph 0.000

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

And having executed: 0.011
CREATE (a {name: 'A'}), (b {name: 'B'}),
       (x1 {name: 'x1'}), (x2 {name: 'x2'})
CREATE (a)-[:KNOWS]->(x1),
       (a)-[:KNOWS]->(x2),
       (b)-[:KNOWS]->(x1),
       (b)-[:KNOWS]->(x2)

23:03:28.704 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'A'}), (b {name: 'B'}), (x1 {name: 'x1'}), (x2 {name: 'x2'}) CREATE (a)-[:KNOWS]->(x1), (a)-[:KNOWS]->(x2), (b)-[:KNOWS]->(x1), (b)-[:KNOWS]->(x2)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.704 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'A'}), (b {name: 'B'}), (x1 {name: 'x1'}), (x2 {name: 'x2'}) CREATE (a)-[:KNOWS]->(x1), (a)-[:KNOWS]->(x2), (b)-[:KNOWS]->(x1), (b)-[:KNOWS]->(x2) 23:03:28.709 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'A').addV().as('b').property(single, 'name', 'B').addV().as('x1').property(single, 'name', 'x1').addV().as('x2').property(single, 'name', 'x2').addE('KNOWS').from('a').to('x1').addE('KNOWS').from('a').to('x2').addE('KNOWS').from('b').to('x1').addE('KNOWS').from('b').to('x2').barrier().limit(0)

When executing query: 0.006
MATCH (a {name: 'A'}), (b {name: 'B'})
MATCH (a)-->(x)<-->(b)
RETURN x

23:03:28.735 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a {name: 'A'}), (b {name: 'B'}) MATCH (a)-->(x)<-->(b) RETURN x}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.736 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a {name: 'A'}), (b {name: 'B'}) MATCH (a)-->(x)<-->(b) RETURN x 23:03:28.740 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('A')).V().as('b').has('name', eq('B')).select('a').outE().as(' UNNAMED49').inV().as('x').bothE().as(' UNNAMED55').otherV().as(' GENERATED4').where(__.select(' GENERATED4').where(eq('b'))).dedup('a', ' UNNAMED49', 'x', ' UNNAMED55', 'b').where(__.select(' UNNAMED49').where(neq(' UNNAMED55'))).select('x').project('x').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
x
({name: 'x1'})
({name: 'x2'})
And no side effects 0.020

23:03:28.742 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.742 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:28.745 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.745 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.746 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:28.749 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.750 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.750 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:28.753 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:28.756 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.757 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.061
Given an empty graph 0.000

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

And having executed: 0.014
CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}),
       (x1 {name: 'x1'}), (x2 {name: 'x2'})
CREATE (a)-[:KNOWS]->(x1),
       (a)-[:KNOWS]->(x2),
       (b)-[:KNOWS]->(x1),
       (b)-[:KNOWS]->(x2),
       (c)-[:KNOWS]->(x1),
       (c)-[:KNOWS]->(x2)

23:03:28.763 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}), (x1 {name: 'x1'}), (x2 {name: 'x2'}) CREATE (a)-[:KNOWS]->(x1), (a)-[:KNOWS]->(x2), (b)-[:KNOWS]->(x1), (b)-[:KNOWS]->(x2), (c)-[:KNOWS]->(x1), (c)-[:KNOWS]->(x2)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.763 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}), (x1 {name: 'x1'}), (x2 {name: 'x2'}) CREATE (a)-[:KNOWS]->(x1), (a)-[:KNOWS]->(x2), (b)-[:KNOWS]->(x1), (b)-[:KNOWS]->(x2), (c)-[:KNOWS]->(x1), (c)-[:KNOWS]->(x2) 23:03:28.771 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'A').addV().as('b').property(single, 'name', 'B').addV().as('c').property(single, 'name', 'C').addV().as('x1').property(single, 'name', 'x1').addV().as('x2').property(single, 'name', 'x2').addE('KNOWS').from('a').to('x1').addE('KNOWS').from('a').to('x2').addE('KNOWS').from('b').to('x1').addE('KNOWS').from('b').to('x2').addE('KNOWS').from('c').to('x1').addE('KNOWS').from('c').to('x2').barrier().limit(0)

When executing query: 0.013
MATCH (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'})
MATCH (a)-->(x), (b)-->(x), (c)-->(x)
RETURN x

23:03:28.813 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) MATCH (a)-->(x), (b)-->(x), (c)-->(x) RETURN x}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.813 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) MATCH (a)-->(x), (b)-->(x), (c)-->(x) RETURN x 23:03:28.824 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('A')).V().as('b').has('name', eq('B')).V().as('c').has('name', eq('C')).select('a').outE().as(' UNNAMED66').inV().as('x').select('b').outE().as(' UNNAMED77').inV().as(' GENERATED5').where(__.select(' GENERATED5').where(eq('x'))).select('c').outE().as(' UNNAMED88').inV().as(' GENERATED8').where(__.select(' GENERATED8').where(eq('x'))).where(__.and(__.select(' UNNAMED66').where(neq(' UNNAMED77')), __.select(' UNNAMED66').where(neq(' UNNAMED88')), __.select(' UNNAMED77').where(neq(' UNNAMED88')))).select('x').project('x').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
x
({name: 'x1'})
({name: 'x2'})
And no side effects 0.033

23:03:28.826 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.827 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:28.831 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.832 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.832 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:28.837 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.838 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.838 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:28.843 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:28.848 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.849 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.106
Given an empty graph 0.000

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

And having executed: 0.054
CREATE (a {name: 'a'}), (b {name: 'b'}), (c {name: 'c'}),
       (d {name: 'd'}), (e {name: 'e'}), (f {name: 'f'}),
       (g {name: 'g'}), (h {name: 'h'}), (i {name: 'i'}),
       (j {name: 'j'}), (k {name: 'k'})
CREATE (a)-[:KNOWS]->(d),
       (a)-[:KNOWS]->(e),
       (a)-[:KNOWS]->(f),
       (a)-[:KNOWS]->(g),
       (a)-[:KNOWS]->(i),
       (b)-[:KNOWS]->(d),
       (b)-[:KNOWS]->(e),
       (b)-[:KNOWS]->(f),
       (b)-[:KNOWS]->(h),
       (b)-[:KNOWS]->(k),
       (c)-[:KNOWS]->(d),
       (c)-[:KNOWS]->(e),
       (c)-[:KNOWS]->(h),
       (c)-[:KNOWS]->(g),
       (c)-[:KNOWS]->(j)

23:03:28.862 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'a'}), (b {name: 'b'}), (c {name: 'c'}), (d {name: 'd'}), (e {name: 'e'}), (f {name: 'f'}), (g {name: 'g'}), (h {name: 'h'}), (i {name: 'i'}), (j {name: 'j'}), (k {name: 'k'}) CREATE (a)-[:KNOWS]->(d), (a)-[:KNOWS]->(e), (a)-[:KNOWS]->(f), (a)-[:KNOWS]->(g), (a)-[:KNOWS]->(i), (b)-[:KNOWS]->(d), (b)-[:KNOWS]->(e), (b)-[:KNOWS]->(f), (b)-[:KNOWS]->(h), (b)-[:KNOWS]->(k), (c)-[:KNOWS]->(d), (c)-[:KNOWS]->(e), (c)-[:KNOWS]->(h), (c)-[:KNOWS]->(g), (c)-[:KNOWS]->(j)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.862 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'a'}), (b {name: 'b'}), (c {name: 'c'}), (d {name: 'd'}), (e {name: 'e'}), (f {name: 'f'}), (g {name: 'g'}), (h {name: 'h'}), (i {name: 'i'}), (j {name: 'j'}), (k {name: 'k'}) CREATE (a)-[:KNOWS]->(d), (a)-[:KNOWS]->(e), (a)-[:KNOWS]->(f), (a)-[:KNOWS]->(g), (a)-[:KNOWS]->(i), (b)-[:KNOWS]->(d), (b)-[:KNOWS]->(e), (b)-[:KNOWS]->(f), (b)-[:KNOWS]->(h), (b)-[:KNOWS]->(k), (c)-[:KNOWS]->(d), (c)-[:KNOWS]->(e), (c)-[:KNOWS]->(h), (c)-[:KNOWS]->(g), (c)-[:KNOWS]->(j) 23:03:28.891 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'a').addV().as('b').property(single, 'name', 'b').addV().as('c').property(single, 'name', 'c').addV().as('d').property(single, 'name', 'd').addV().as('e').property(single, 'name', 'e').addV().as('f').property(single, 'name', 'f').addV().as('g').property(single, 'name', 'g').addV().as('h').property(single, 'name', 'h').addV().as('i').property(single, 'name', 'i').addV().as('j').property(single, 'name', 'j').addV().as('k').property(single, 'name', 'k').addE('KNOWS').from('a').to('d').addE('KNOWS').from('a').to('e').addE('KNOWS').from('a').to('f').addE('KNOWS').from('a').to('g').addE('KNOWS').from('a').to('i').addE('KNOWS').from('b').to('d').addE('KNOWS').from('b').to('e').addE('KNOWS').from('b').to('f').addE('KNOWS').from('b').to('h').addE('KNOWS').from('b').to('k').addE('KNOWS').from('c').to('d').addE('KNOWS').from('c').to('e').addE('KNOWS').from('c').to('h').addE('KNOWS').from('c').to('g').addE('KNOWS').from('c').to('j').barrier().limit(0)

When executing query: 0.014
MATCH (a {name: 'a'}), (b {name: 'b'}), (c {name: 'c'})
MATCH (a)-->(x), (b)-->(x), (c)-->(x)
RETURN x

23:03:28.951 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a {name: 'a'}), (b {name: 'b'}), (c {name: 'c'}) MATCH (a)-->(x), (b)-->(x), (c)-->(x) RETURN x 23:03:28.963 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('a')).V().as('b').has('name', eq('b')).V().as('c').has('name', eq('c')).select('a').outE().as(' UNNAMED66').inV().as('x').select('b').outE().as(' UNNAMED77').inV().as(' GENERATED5').where(__.select(' GENERATED5').where(eq('x'))).select('c').outE().as(' UNNAMED88').inV().as(' GENERATED8').where(__.select(' GENERATED8').where(eq('x'))).where(__.and(__.select(' UNNAMED66').where(neq(' UNNAMED77')), __.select(' UNNAMED66').where(neq(' UNNAMED88')), __.select(' UNNAMED77').where(neq(' UNNAMED88')))).select('x').project('x').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))) 23:03:28.963 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a {name: 'a'}), (b {name: 'b'}), (c {name: 'c'}) MATCH (a)-->(x), (b)-->(x), (c)-->(x) RETURN x}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}}

Then the result should be: 0.000
x
({name: 'd'})
({name: 'e'})
And no side effects 0.037

23:03:28.965 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.966 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:28.970 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.971 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.971 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:28.976 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:28.977 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.977 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:28.982 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:28.987 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:28.988 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.052
Given an empty graph 0.000

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

And having executed: 0.013
CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'})
CREATE (a)-[:KNOWS]->(b),
       (b)-[:KNOWS]->(c)

23:03:29.005 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) CREATE (a)-[:KNOWS]->(b), (b)-[:KNOWS]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.006 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) CREATE (a)-[:KNOWS]->(b), (b)-[:KNOWS]->(c) 23:03:29.014 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'A').addV().as('b').property(single, 'name', 'B').addV().as('c').property(single, 'name', 'C').addE('KNOWS').from('a').to('b').addE('KNOWS').from('b').to('c').barrier().limit(0)

When executing query: 0.007
MATCH (a {name: 'A'})
OPTIONAL MATCH (a)-[:KNOWS]->()-[:KNOWS]->(foo)
RETURN foo

23:03:29.042 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a {name: 'A'}) OPTIONAL MATCH (a)-[:KNOWS]->()-[:KNOWS]->(foo) RETURN foo}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.043 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a {name: 'A'}) OPTIONAL MATCH (a)-[:KNOWS]->()-[:KNOWS]->(foo) RETURN foo 23:03:29.048 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('A')).choose(__.select('a').outE('KNOWS').as(' UNNAMED41').inV().outE('KNOWS').as(' UNNAMED54').inV().as('foo').where(__.select(' UNNAMED41').where(neq(' UNNAMED54'))), __.select('a').outE('KNOWS').as(' UNNAMED41').inV().outE('KNOWS').as(' UNNAMED54').inV().as('foo').where(__.select(' UNNAMED41').where(neq(' UNNAMED54'))), __.constant(' cypher.null').as(' UNNAMED41').as(' UNNAMED54').as('foo')).select('foo').project('foo').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
foo
({name: 'C'})
And no side effects 0.032

23:03:29.049 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.050 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.052 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.053 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.053 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.057 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.058 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.059 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.063 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.068 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.069 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.060
Given an empty graph 0.000

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

And having executed: 0.011
CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'})
CREATE (a)-[:X]->(b)

23:03:29.083 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) CREATE (a)-[:X]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.083 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) CREATE (a)-[:X]->(b) 23:03:29.088 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'A').addV().as('b').property(single, 'name', 'B').addV().property(single, 'name', 'C').addE('X').from('a').to('b').barrier().limit(0)

When executing query: 0.015
MATCH (a {name: 'A'}), (x)
WHERE x.name IN ['B', 'C']
OPTIONAL MATCH p = (a)-->(x)
RETURN x, p

23:03:29.125 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a {name: 'A'}), (x) WHERE x.name IN ['B', 'C'] OPTIONAL MATCH p = (a)-->(x) RETURN x, p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.125 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a {name: 'A'}), (x) WHERE x.name IN ['B', 'C'] OPTIONAL MATCH p = (a)-->(x) RETURN x, p 23:03:29.137 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('A')).V().as('x').where(__.project(' GENERATED2', ' GENERATED3').by(__.constant('B')).by(__.constant('C')).select(values).is(neq(' cypher.null')).as(' GENERATED1').select('x').values('name').where(within(' GENERATED1'))).choose(__.V().as(' GENERATED6').where(__.select(' GENERATED6').where(eq('a'))).outE().aggregate(' cypher.path.edge.p').inV().as(' GENERATED7').where(__.select(' GENERATED7').where(eq('x'))).path().as('p'), __.V().as(' GENERATED6').where(__.select(' GENERATED6').where(eq('a'))).outE().aggregate(' cypher.path.edge.p').inV().as(' GENERATED7').where(__.select(' GENERATED7').where(eq('x'))).path().as('p'), __.constant(' cypher.null').as('p')).select('x', 'p').project('x', 'p').by(__.select('x').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('p').choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
x p
({name: 'B'}) <({name: 'A'})-[:X]->({name: 'B'})>
({name: 'C'}) null
And no side effects 0.034

23:03:29.141 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.141 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.146 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.147 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.148 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.153 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.153 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.154 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.158 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.163 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.165 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.062
Given an empty graph 0.000

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

And having executed: 0.012
CREATE (a {name: 'A'}), (b {name: 'B'})
CREATE (a)-[:X]->(b)

23:03:29.176 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'A'}), (b {name: 'B'}) CREATE (a)-[:X]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.177 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'A'}), (b {name: 'B'}) CREATE (a)-[:X]->(b) 23:03:29.184 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'A').addV().as('b').property(single, 'name', 'B').addE('X').from('a').to('b').barrier().limit(0)

When executing query: 0.015
MATCH (a {name: 'A'})
OPTIONAL MATCH p = (a)-->(b)-[*]->(c)
RETURN p

23:03:29.225 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a {name: 'A'}) OPTIONAL MATCH p = (a)-->(b)-[*]->(c) RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.225 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a {name: 'A'}) OPTIONAL MATCH p = (a)-->(b)-[*]->(c) RETURN p 23:03:29.237 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('A')).choose(__.V().as(' GENERATED2').where(__.select(' GENERATED2').where(eq('a'))).as(' cypher.path.start.p').outE().aggregate(' cypher.path.edge.p').inV().as(' cypher.path.start.p').repeat(__.outE().aggregate(' cypher.path.edge.p').inV()).emit().until(__.path().from(' cypher.path.start.p').count(local).is(gte(21))).path().as('p'), __.V().as(' GENERATED2').where(__.select(' GENERATED2').where(eq('a'))).as(' cypher.path.start.p').outE().aggregate(' cypher.path.edge.p').inV().as(' cypher.path.start.p').repeat(__.outE().aggregate(' cypher.path.edge.p').inV()).emit().until(__.path().from(' cypher.path.start.p').count(local).is(gte(21))).path().as('p'), __.constant(' cypher.null').as('p')).select('p').project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
p
null
And no side effects 0.034

23:03:29.240 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.240 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.244 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.245 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.245 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.252 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.253 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.253 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.257 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.262 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.045
Given an empty graph 0.000

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

And having executed: 0.013
CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'})
CREATE (a)-[:X]->(b)

23:03:29.277 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) CREATE (a)-[:X]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.277 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'}) CREATE (a)-[:X]->(b) 23:03:29.283 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'A').addV().as('b').property(single, 'name', 'B').addV().property(single, 'name', 'C').addE('X').from('a').to('b').barrier().limit(0)

When executing query: 0.009
MATCH (a {name: 'A'}), (x)
WHERE x.name IN ['B', 'C']
OPTIONAL MATCH p = (a)-[r*]->(x)
RETURN r, x, p

23:03:29.314 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a {name: 'A'}), (x) WHERE x.name IN ['B', 'C'] OPTIONAL MATCH p = (a)-[r*]->(x) RETURN r, x, p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.315 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a {name: 'A'}), (x) WHERE x.name IN ['B', 'C'] OPTIONAL MATCH p = (a)-[r*]->(x) RETURN r, x, p 23:03:29.321 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('A')).V().as('x').where(__.project(' GENERATED2', ' GENERATED3').by(__.constant('B')).by(__.constant('C')).select(values).is(neq(' cypher.null')).as(' GENERATED1').select('x').values('name').where(within(' GENERATED1'))).choose(__.V().as(' GENERATED6').where(__.select(' GENERATED6').where(eq('a'))).as(' cypher.path.start.p').repeat(__.outE().as('r').aggregate(' cypher.path.edge.p').inV()).emit().until(__.path().from(' cypher.path.start.p').count(local).is(gte(21))).as(' GENERATED7').where(__.select(' GENERATED7').where(eq('x'))).path().as('p'), __.V().as(' GENERATED6').where(__.select(' GENERATED6').where(eq('a'))).as(' cypher.path.start.p').repeat(__.outE().as('r').aggregate(' cypher.path.edge.p').inV()).emit().until(__.path().from(' cypher.path.start.p').count(local).is(gte(21))).as(' GENERATED7').where(__.select(' GENERATED7').where(eq('x'))).path().as('p'), __.constant(' cypher.null').as('r').as('p')).select('r', 'x', 'p').project('r', 'x', 'p').by(__.select('r').choose(neq(' cypher.null'), __.unfold().project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()).fold(), __.constant(' cypher.null'))).by(__.select('x').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('p').choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
r x p
[[:X]] ({name: 'B'}) <({name: 'A'})-[:X]->({name: 'B'})>
null ({name: 'C'}) null
And no side effects 0.022

23:03:29.324 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.324 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.327 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.327 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.327 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.330 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.331 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.331 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.335 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.339 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.340 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.016
Scenario Matching variable length patterns from a bound node
Steps
Given an empty graph 0.000

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

And having executed: 0.007
CREATE (a:A), (b), (c)
CREATE (a)-[:X]->(b),
       (b)-[:Y]->(c)

23:03:29.347 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b), (c) CREATE (a)-[:X]->(b), (b)-[:Y]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.348 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b), (c) CREATE (a)-[:X]->(b), (b)-[:Y]->(c) 23:03:29.351 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV().as('b').addV().as('c').addE('X').from('a').to('b').addE('Y').from('b').to('c').barrier().limit(0)

When executing query: 0.009
MATCH (a:A)
MATCH (a)-[r*2]->()
RETURN r

23:03:29.382 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a:A) MATCH (a)-[r*2]->() RETURN r}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.382 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a:A) MATCH (a)-[r*2]->() RETURN r 23:03:29.388 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').hasLabel('A').select('a').as(' cypher.path.start.GENERATED2').times(2).repeat(__.outE().as('r').inV()).simplePath().from(' cypher.path.start.GENERATED2').select('r').project('r').by(__.choose(neq(' cypher.null'), __.unfold().project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()).fold(), __.constant(' cypher.null')))

Then the result should be (ignoring element order for lists): 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "MatchAcceptance2": Scenario "Matching variable length patterns from a bound node" failed with message: 
Expected (in any order of rows):
| r |
| [[:X {}], [:Y {}]] |
Actual:
| r |
| [[:Y {}]] |
	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)
r
[[:X], [:Y]]
0.046
Given an empty graph 0.000

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

And having executed: 0.010
CREATE (a:A), (b:B {id: 1}), (:B {id: 2})
CREATE (a)-[:T]->(b)

23:03:29.393 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B {id: 1}), (:B {id: 2}) CREATE (a)-[:T]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.394 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B {id: 1}), (:B {id: 2}) CREATE (a)-[:T]->(b) 23:03:29.398 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').property(single, 'id', 1).addV('B').property(single, 'id', 2).addE('T').from('a').to('b').barrier().limit(0)

When executing query: 0.013
MATCH (a:A), (other:B)
OPTIONAL MATCH (a)-[r]->(other)
WITH other WHERE r IS NULL
RETURN other

23:03:29.425 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a:A), (other:B) OPTIONAL MATCH (a)-[r]->(other) WITH other WHERE r IS NULL RETURN other}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.426 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a:A), (other:B) OPTIONAL MATCH (a)-[r]->(other) WITH other WHERE r IS NULL RETURN other 23:03:29.435 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').hasLabel('A').V().as('other').hasLabel('B').choose(__.select('a').outE().as('r').inV().as(' GENERATED5').where(__.select(' GENERATED5').where(eq('other'))), __.select('a').outE().as('r').inV().as(' GENERATED5').where(__.select(' GENERATED5').where(eq('other'))), __.constant(' cypher.null').as('r')).select('r', 'other').project('r', 'other').by(__.select('r')).by(__.select('other')).as(' GENERATED6').select('r').as('r').select(' GENERATED6').select('other').as('other').where(__.select('r').is(eq(' cypher.null'))).select('other', 'r').project('other', ' FRESHID74').by(__.select('other')).by(__.select('r').choose(__.is(eq(' cypher.null')), __.constant(true), __.constant(false))).as(' GENERATED9').select('other').as('other').select(' GENERATED9').select(' FRESHID74').as(' FRESHID74').select('other', ' FRESHID74').project('other', ' FRESHID74').by(__.select('other')).by(__.select(' FRESHID74')).as(' GENERATED11').select('other').as('other').select(' GENERATED11').select(' FRESHID74').as(' FRESHID74').select('other').as('other').project('other').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
other
(:B {id: 2})
And no side effects 0.022

23:03:29.439 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.439 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.444 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.444 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.444 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.448 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.449 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.449 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.452 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.453 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.454 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.037
Given an empty graph 0.000

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

And having executed: 0.006
CREATE (a), (b {name: 'Mark'})
CREATE (a)-[:T]->(b)

23:03:29.462 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a), (b {name: 'Mark'}) CREATE (a)-[:T]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.462 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a), (b {name: 'Mark'}) CREATE (a)-[:T]->(b) 23:03:29.465 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').addV().as('b').property(single, 'name', 'Mark').addE('T').from('a').to('b').barrier().limit(0)

When executing query: 0.006
MATCH (n)-->(x0)
OPTIONAL MATCH (x0)-->(x1)
WHERE x1.foo = 'bar'
RETURN x0.name

23:03:29.495 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n)-->(x0) OPTIONAL MATCH (x0)-->(x1) WHERE x1.foo = 'bar' RETURN x0.name}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.495 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n)-->(x0) OPTIONAL MATCH (x0)-->(x1) WHERE x1.foo = 'bar' RETURN x0.name 23:03:29.500 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().outE().inV().as('x0').choose(__.select('x0').is(neq(' cypher.null')).outE().inV().has('foo', eq('bar')), __.select('x0').is(neq(' cypher.null')).outE().inV().has('foo', eq('bar')), __.constant(' cypher.null')).select('x0').project('x0.name').by(__.choose(neq(' cypher.null'), __.choose(__.values('name'), __.values('name'), __.constant(' cypher.null')), __.constant(' cypher.null')))

Then the result should be: 0.000
x0.name
'Mark'
And no side effects 0.024

23:03:29.502 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.502 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.504 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.505 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.505 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.509 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.510 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.510 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.513 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.517 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.518 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.036
Given an empty graph 0.000

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

And having executed: 0.009
CREATE (a {name: 'A'}), (b:B {name: 'B'}), (c:C {name: 'C'})
CREATE (a)-[:T]->(b),
       (a)-[:T]->(c)

23:03:29.527 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'A'}), (b:B {name: 'B'}), (c:C {name: 'C'}) CREATE (a)-[:T]->(b), (a)-[:T]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.527 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'A'}), (b:B {name: 'B'}), (c:C {name: 'C'}) CREATE (a)-[:T]->(b), (a)-[:T]->(c) 23:03:29.531 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'A').addV('B').as('b').property(single, 'name', 'B').addV('C').as('c').property(single, 'name', 'C').addE('T').from('a').to('b').addE('T').from('a').to('c').barrier().limit(0)

When executing query: 0.008
MATCH (a)-->(b)
WHERE b:B
OPTIONAL MATCH (a)-->(c)
WHERE c:C
RETURN a.name

23:03:29.561 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-->(b) WHERE b:B OPTIONAL MATCH (a)-->(c) WHERE c:C RETURN a.name}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.561 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-->(b) WHERE b:B OPTIONAL MATCH (a)-->(c) WHERE c:C RETURN a.name 23:03:29.568 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').outE().inV().hasLabel('B').choose(__.select('a').outE().inV().hasLabel('C'), __.select('a').outE().inV().hasLabel('C'), __.constant(' cypher.null')).select('a').project('a.name').by(__.choose(neq(' cypher.null'), __.choose(__.values('name'), __.values('name'), __.constant(' cypher.null')), __.constant(' cypher.null')))

Then the result should be: 0.000
a.name
'A'
And no side effects 0.017

23:03:29.569 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.569 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.572 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.573 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.573 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.577 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.577 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.578 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.581 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.581 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.582 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.028
Given an empty graph 0.000

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

And having executed: 0.006
CREATE (:A {id: 0})-[:ADMIN]->(:B {id: 1})

23:03:29.588 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A {id: 0})-[:ADMIN]->(:B {id: 1})}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.588 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A {id: 0})-[:ADMIN]->(:B {id: 1}) 23:03:29.591 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as(' UNNAMED8').property(single, 'id', 0).addV('B').as(' UNNAMED31').property(single, 'id', 1).addE('ADMIN').from(' UNNAMED8').to(' UNNAMED31').barrier().limit(0)

When executing query: 0.005
MATCH (a)-[:ADMIN]-(b)
WHERE a:A
RETURN a.id, b.id

23:03:29.611 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-[:ADMIN]-(b) WHERE a:A RETURN a.id, b.id}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.611 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[:ADMIN]-(b) WHERE a:A RETURN a.id, b.id 23:03:29.615 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').hasLabel('A').bothE('ADMIN').as(' UNNAMED10').otherV().as('b').dedup('a', ' UNNAMED10', 'b').select('a', 'b').project('a.id', 'b.id').by(__.select('a').choose(neq(' cypher.null'), __.choose(__.values('id'), __.values('id'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.select('b').choose(neq(' cypher.null'), __.choose(__.values('id'), __.values('id'), __.constant(' cypher.null')), __.constant(' cypher.null')))

Then the result should be: 0.000
a.id b.id
0 1
And no side effects 0.016

23:03:29.616 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.616 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.619 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.619 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.620 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.622 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.623 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.623 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.626 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.626 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.627 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.032
Given an empty graph 0.000

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

And having executed: 0.004
CREATE (:A), (:B)

23:03:29.634 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A), (:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.634 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A), (:B) 23:03:29.636 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').addV('B').barrier().limit(0)

When executing query: 0.003
MATCH (n)
RETURN n

23:03:29.663 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN n}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.663 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN n 23:03:29.665 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('n').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
n
(:A)
(:B)
And no side effects 0.024

23:03:29.666 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.666 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.669 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.670 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.670 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.673 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.676 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.677 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.680 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.680 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.685 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.036
Given an empty graph 0.000

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

And having executed: 0.004
CREATE (:A), (:B)

23:03:29.692 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A), (:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.692 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A), (:B) 23:03:29.693 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').addV('B').barrier().limit(0)

When executing query: 0.004
MATCH (a), (b)
WHERE a <> b
RETURN a, b

23:03:29.720 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a), (b) WHERE a <> b RETURN a, b}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.720 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a), (b) WHERE a <> b RETURN a, b 23:03:29.723 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').V().as('b').where(__.select('a').where(neq('b'))).select('a', 'b').project('a', 'b').by(__.select('a').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('b').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
a b
(:A) (:B)
(:B) (:A)
And no side effects 0.027

23:03:29.725 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.725 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.728 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.728 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.729 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.732 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.736 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.737 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.740 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.740 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.746 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.038
Given an empty graph 0.000

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

And having executed: 0.006
CREATE (a), (b), (c)
CREATE (a)-[:T]->(b),
       (b)-[:T]->(c)

23:03:29.753 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a), (b), (c) CREATE (a)-[:T]->(b), (b)-[:T]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.753 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a), (b), (c) CREATE (a)-[:T]->(b), (b)-[:T]->(c) 23:03:29.756 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').addV().as('b').addV().as('c').addE('T').from('a').to('b').addE('T').from('b').to('c').barrier().limit(0)

When executing query: 0.008
MATCH (a)-->(b), (b)-->(b)
RETURN b

23:03:29.785 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-->(b), (b)-->(b) RETURN b}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.785 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-->(b), (b)-->(b) RETURN b 23:03:29.789 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().outE().as(' UNNAMED10').inV().as('b').is(neq(' cypher.null')).outE().as(' UNNAMED21').inV().as(' GENERATED4').where(__.select(' GENERATED4').where(eq('b'))).where(__.select(' UNNAMED10').where(neq(' UNNAMED21'))).select('b').project('b').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
b
And no side effects 0.023

23:03:29.793 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.793 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.795 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.796 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.796 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.799 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.800 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.800 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.803 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.806 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.811 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.036
Given an empty graph 0.000

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

And having executed: 0.005
CREATE (:A), (:B)

23:03:29.818 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A), (:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.819 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A), (:B) 23:03:29.821 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').addV('B').barrier().limit(0)

When executing query: 0.006
MATCH (a:A), (b:B)
OPTIONAL MATCH (a)-[r*]-(b)
WHERE r IS NULL
  AND a <> b
RETURN b

23:03:29.847 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a:A), (b:B) OPTIONAL MATCH (a)-[r*]-(b) WHERE r IS NULL AND a <> b RETURN b}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.847 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a:A), (b:B) OPTIONAL MATCH (a)-[r*]-(b) WHERE r IS NULL AND a <> b RETURN b 23:03:29.852 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').hasLabel('A').V().as('b').hasLabel('B').choose(__.select('a').as(' cypher.path.start.GENERATED4').repeat(__.bothE().as('r').otherV()).emit().until(__.path().from(' cypher.path.start.GENERATED4').count(local).is(gte(21))).as(' GENERATED5').where(__.select(' GENERATED5').where(eq('b'))).dedup('a', 'r', 'b').where(__.and(__.select('r').is(eq(' cypher.null')), __.select('a').where(neq('b')))), __.select('a').as(' cypher.path.start.GENERATED4').repeat(__.bothE().as('r').otherV()).emit().until(__.path().from(' cypher.path.start.GENERATED4').count(local).is(gte(21))).as(' GENERATED5').where(__.select(' GENERATED5').where(eq('b'))).dedup('a', 'r', 'b').where(__.and(__.select('r').is(eq(' cypher.null')), __.select('a').where(neq('b')))), __.constant(' cypher.null').as('r')).select('b').project('b').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
b
(:B)
And no side effects 0.024

23:03:29.854 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.854 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.856 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.857 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.857 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.859 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.863 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.863 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.866 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.866 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.872 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.031
Given an empty graph 0.000

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

And having executed: 0.006
CREATE (a:A), (b:B)
CREATE (a)-[:T]->(b)

23:03:29.879 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B) CREATE (a)-[:T]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.879 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B) CREATE (a)-[:T]->(b) 23:03:29.882 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addE('T').from('a').to('b').barrier().limit(0)

When executing query: 0.003
MATCH (a)-[:T|:T]->(b)
RETURN b

23:03:29.907 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-[:T|:T]->(b) RETURN b}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.907 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[:T|:T]->(b) RETURN b 23:03:29.910 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().outE('T').inV().project('b').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
b
(:B)
And no side effects 0.021

23:03:29.910 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.911 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.913 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.914 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.914 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.917 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.917 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.917 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.920 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.921 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.926 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.037
Given an empty graph 0.000

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

And having executed: 0.012
CREATE (a:A), (n1 {x: 1}), (n2 {x: 2}),
       (m1), (m2)
CREATE (a)-[:T]->(n1),
       (n1)-[:T]->(m1),
       (a)-[:T]->(n2),
       (n2)-[:T]->(m2)

23:03:29.933 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (n1 {x: 1}), (n2 {x: 2}), (m1), (m2) CREATE (a)-[:T]->(n1), (n1)-[:T]->(m1), (a)-[:T]->(n2), (n2)-[:T]->(m2)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.933 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (n1 {x: 1}), (n2 {x: 2}), (m1), (m2) CREATE (a)-[:T]->(n1), (n1)-[:T]->(m1), (a)-[:T]->(n2), (n2)-[:T]->(m2) 23:03:29.939 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV().as('n1').property(single, 'x', 1).addV().as('n2').property(single, 'x', 2).addV().as('m1').addV().as('m2').addE('T').from('a').to('n1').addE('T').from('n1').to('m1').addE('T').from('a').to('n2').addE('T').from('n2').to('m2').barrier().limit(0)

When executing query: 0.008
MATCH (a:A)-->(n)-->(m)
RETURN n.x, count(*)
  ORDER BY n.x
  LIMIT 1000

23:03:29.963 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a:A)-->(n)-->(m) RETURN n.x, count(*) ORDER BY n.x LIMIT 1000}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.964 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a:A)-->(n)-->(m) RETURN n.x, count(*) ORDER BY n.x LIMIT 1000 23:03:29.970 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('A').outE().as(' UNNAMED12').inV().as('n').outE().as(' UNNAMED18').inV().where(__.select(' UNNAMED12').where(neq(' UNNAMED18'))).select('n').group().by(__.choose(neq(' cypher.null'), __.choose(__.values('x'), __.values('x'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.fold().project(' FRESHID33', ' FRESHID36').by(__.unfold().choose(neq(' cypher.null'), __.choose(__.values('x'), __.values('x'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.unfold().count())).unfold().select(values).as(' GENERATED3').select(' FRESHID33').as(' FRESHID33').select(' GENERATED3').select(' FRESHID36').as(' FRESHID36').select(' FRESHID33', ' FRESHID36').project(' FRESHID33', ' FRESHID36').by(__.select(' FRESHID33')).by(__.select(' FRESHID36')).order().by(__.select(' FRESHID33'), incr).limit(1000).as(' GENERATED4').select(' FRESHID33').as(' FRESHID33').select(' GENERATED4').select(' FRESHID36').as(' FRESHID36').select(' FRESHID33', ' FRESHID36').project('n.x', 'count(*)').by(__.select(' FRESHID33')).by(__.select(' FRESHID36'))

Then the result should be, in order: 0.000
n.x count(*)
1 1
2 1
And no side effects 0.017

23:03:29.972 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.972 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:29.974 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.975 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.975 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:29.979 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:29.979 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.979 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:29.982 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:29.983 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.983 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.034
Given an empty graph 0.000

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

And having executed: 0.004
CREATE ({foo: 'bar'})

23:03:29.990 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ({foo: 'bar'})}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:29.990 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({foo: 'bar'}) 23:03:29.992 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().property(single, 'foo', 'bar').barrier().limit(0)

When executing query: 0.004
MATCH (n)
WHERE n.foo = 'bar'
RETURN n

23:03:30.017 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) WHERE n.foo = 'bar' RETURN n}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.017 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) WHERE n.foo = 'bar' RETURN n 23:03:30.021 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').has('foo', eq('bar')).select('n').project('n').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
n
({foo: 'bar'})
And no side effects 0.025

23:03:30.022 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.022 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.025 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.028 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.028 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.031 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.034 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.034 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.037 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.040 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.041 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.033
Given an empty graph 0.000

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

And having executed: 0.006
CREATE (a:A)-[:T]->(b:B)

23:03:30.049 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A)-[:T]->(b:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.049 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A)-[:T]->(b:B) 23:03:30.052 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addE('T').from('a').to('b').barrier().limit(0)

When executing query: 0.004
MATCH p = (b)<--(a)
RETURN p

23:03:30.083 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = (b)<--(a) RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.083 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (b)<--(a) RETURN p 23:03:30.086 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().inE().aggregate(' cypher.path.edge.p').outV().path().project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
p
<(:B)<-[:T]-(:A)>
And no side effects 0.021

23:03:30.088 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.088 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.091 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.091 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.091 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.095 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.095 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.095 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.098 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.099 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.104 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.032
Given an empty graph 0.000

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

When executing query: 0.003
OPTIONAL MATCH (n)
RETURN n

23:03:30.143 [Test worker] DEBUG o.a.t.g.driver.Client - OPTIONAL MATCH (n) RETURN n}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.143 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: OPTIONAL MATCH (n) RETURN n 23:03:30.145 [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')).select('n').project('n').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
n
null
And no side effects 0.029

23:03:30.146 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.147 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.150 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.153 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.153 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.155 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.159 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.159 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.161 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.165 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.170 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.039
Given an empty graph 0.000

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

And having executed: 0.003
CREATE ()

23:03:30.177 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.177 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE () 23:03:30.179 [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)-[:NOT_EXIST]->(x)
RETURN n, x

23:03:30.210 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) OPTIONAL MATCH (n)-[:NOT_EXIST]->(x) RETURN n, x}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.210 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) OPTIONAL MATCH (n)-[:NOT_EXIST]->(x) RETURN n, x 23:03:30.213 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').choose(__.select('n').outE('NOT_EXIST').inV().as('x'), __.select('n').outE('NOT_EXIST').inV().as('x'), __.constant(' cypher.null').as('x')).select('n', 'x').project('n', 'x').by(__.select('n').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('x').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
n x
() null
And no side effects 0.030

23:03:30.215 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.216 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.219 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.221 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.221 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.224 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.227 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.228 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.230 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.234 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.240 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.036
Given an empty graph 0.000

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

And having executed: 0.003
CREATE ()

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

When executing query: 0.005
MATCH (n)
OPTIONAL MATCH (n)-[:NOT_EXIST]->(x)
RETURN n, collect(x)

23:03:30.277 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) OPTIONAL MATCH (n)-[:NOT_EXIST]->(x) RETURN n, collect(x)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.277 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) OPTIONAL MATCH (n)-[:NOT_EXIST]->(x) RETURN n, collect(x) 23:03:30.281 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').choose(__.select('n').outE('NOT_EXIST').inV().as('x'), __.select('n').outE('NOT_EXIST').inV().as('x'), __.constant(' cypher.null').as('x')).select('n', 'x').group().by(__.select('n').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.fold().project('n', 'collect(x)').by(__.unfold().select('n').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.unfold().select('x').is(neq(' cypher.null')).is(neq(' cypher.null')).valueMap(true).fold())).unfold().select(values)

Then the result should be: 0.000
n collect(x)
() []
And no side effects 0.027

23:03:30.282 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.282 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.285 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.286 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.286 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.289 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.293 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.293 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.296 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.299 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.304 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.038
Given an empty graph 0.000

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

And having executed: 0.003
CREATE (:A)

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

When executing query: 0.010
MATCH (a)<--()<--(b)-->()-->(c)
WHERE a:A
RETURN c

23:03:30.340 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)<--()<--(b)-->()-->(c) WHERE a:A RETURN c}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.340 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)<--()<--(b)-->()-->(c) WHERE a:A RETURN c 23:03:30.346 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('A').inE().as(' UNNAMED10').outV().inE().as(' UNNAMED15').outV().outE().as(' UNNAMED21').inV().outE().as(' UNNAMED26').inV().as('c').where(__.and(__.select(' UNNAMED10').where(neq(' UNNAMED26')), __.select(' UNNAMED15').where(neq(' UNNAMED21')), __.select(' UNNAMED10').where(neq(' UNNAMED21')), __.select(' UNNAMED15').where(neq(' UNNAMED26')), __.select(' UNNAMED21').where(neq(' UNNAMED26')), __.select(' UNNAMED10').where(neq(' UNNAMED15')))).select('c').project('c').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
c
And no side effects 0.023

23:03:30.351 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.351 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.354 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.354 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.355 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.357 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.360 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.361 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.363 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.364 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.369 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.034
Given an empty graph 0.000

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

And having executed: 0.007
CREATE (a), (b1:Foo), (b2)
CREATE (a)-[:T]->(b1),
       (a)-[:T]->(b2)

23:03:30.375 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a), (b1:Foo), (b2) CREATE (a)-[:T]->(b1), (a)-[:T]->(b2)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.376 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a), (b1:Foo), (b2) CREATE (a)-[:T]->(b1), (a)-[:T]->(b2) 23:03:30.379 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').addV('Foo').as('b1').addV().as('b2').addE('T').from('a').to('b1').addE('T').from('a').to('b2').barrier().limit(0)

When executing query: 0.004
MATCH (a)-->(b:Foo)
RETURN b

23:03:30.404 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-->(b:Foo) RETURN b}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.404 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-->(b:Foo) RETURN b 23:03:30.408 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().outE().inV().as('b').hasLabel('Foo').select('b').project('b').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
b
(:Foo)
And no side effects 0.021

23:03:30.409 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.409 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.411 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.412 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.412 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.415 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.416 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.416 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.419 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.419 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.425 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.035
Given an empty graph 0.000

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

And having executed: 0.008
CREATE (:A)-[:T1]->(:B),
       (:B)-[:T2]->(:A),
       (:B)-[:T3]->(:B),
       (:A)-[:T4]->(:A)

23:03:30.431 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A)-[:T1]->(:B), (:B)-[:T2]->(:A), (:B)-[:T3]->(:B), (:A)-[:T4]->(:A)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.431 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A)-[:T1]->(:B), (:B)-[:T2]->(:A), (:B)-[:T3]->(:B), (:A)-[:T4]->(:A) 23:03:30.435 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as(' UNNAMED8').addV('B').as(' UNNAMED20').addE('T1').from(' UNNAMED8').to(' UNNAMED20').addV('B').as(' UNNAMED33').addV('A').as(' UNNAMED45').addE('T2').from(' UNNAMED33').to(' UNNAMED45').addV('B').as(' UNNAMED58').addV('B').as(' UNNAMED70').addE('T3').from(' UNNAMED58').to(' UNNAMED70').addV('A').as(' UNNAMED83').addV('A').as(' UNNAMED95').addE('T4').from(' UNNAMED83').to(' UNNAMED95').barrier().limit(0)

When executing query: 0.004
MATCH (:A)-[r]->(:B)
RETURN r

23:03:30.461 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (:A)-[r]->(:B) RETURN r}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.461 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (:A)-[r]->(:B) RETURN r 23:03:30.465 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('A').outE().as('r').inV().hasLabel('B').select('r').project('r').by(__.choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()), __.constant(' cypher.null')))

Then the result should be: 0.000
r
[:T1]
And no side effects 0.022

23:03:30.466 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.466 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.469 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.469 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.469 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.473 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.473 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.474 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.476 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.477 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.482 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.010
Scenario Matching nodes using multiple labels
Steps
Given an empty graph 0.000

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

And having executed: 0.005
CREATE (:A:B:C), (:A:B), (:A:C), (:B:C),
       (:A), (:B), (:C)

23:03:30.489 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A:B:C), (:A:B), (:A:C), (:B:C), (:A), (:B), (:C)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.489 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A:B:C), (:A:B), (:A:C), (:B:C), (:A), (:B), (:C) 23:03:30.493 [gremlin-server-worker-1] WARN o.a.t.g.s.h.OpExecutorHandler - Multiple labels are not supported: A::B, A::B::C, A::C, B::C org.opencypher.gremlin.translation.exception.SyntaxException: Multiple labels are not supported: A::B, A::B::C, A::C, B::C at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at scala.Option.foreach(Option.scala:257) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:56) at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:733) at scala.collection.immutable.Map$Map2.foreach(Map.scala:137) at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:732) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:56) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:47) at org.opencypher.gremlin.translation.ir.TranslationWriter.write(TranslationWriter.scala) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.evalCypher(CypherOpProcessor.java:112) 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:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:159) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) at java.lang.Thread.run(Thread.java:748)

When executing query: 0.005
MATCH (a:A:B:C)
RETURN a

23:03:30.522 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a:A:B:C) RETURN a}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.522 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a:A:B:C) RETURN a 23:03:30.526 [gremlin-server-worker-1] WARN o.a.t.g.s.h.OpExecutorHandler - Multiple labels are not supported: B::C::A org.opencypher.gremlin.translation.exception.SyntaxException: Multiple labels are not supported: B::C::A at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at scala.Option.foreach(Option.scala:257) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:56) at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:733) at scala.collection.immutable.Map$Map2.foreach(Map.scala:137) at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:732) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:56) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:47) at org.opencypher.gremlin.translation.ir.TranslationWriter.write(TranslationWriter.scala) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.evalCypher(CypherOpProcessor.java:112) 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:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:159) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) at java.lang.Thread.run(Thread.java:748)

Then the result should be: 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "MatchAcceptance2": Scenario "Matching nodes using multiple labels" failed with message: Expected: | a |
| (:A:B:C) |, got error ExecutionFailed(UnknownError,runtime,Multiple labels are not supported: B::C::A,Some(org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Multiple labels are not supported: B::C::A))
	at org.opencypher.tools.tck.api.Scenario$$anonfun$executeOnGraph$1.apply(Scenario.scala:95)
	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)
Caused by: org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Multiple labels are not supported: B::C::A
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:246)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:197)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:123)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:67)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at org.apache.tinkerpop.gremlin.driver.handler.WebSocketClientHandler.channelRead0(WebSocketClientHandler.java:94)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921)
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135)
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131)
	... 1 more
a
(:A:B:C)
0.034
Given an empty graph 0.000

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

And having executed: 0.004
CREATE (), (:Foo)

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

When executing query: 0.004
MATCH (n)
RETURN (n:Foo)

23:03:30.557 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN (n:Foo)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.558 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN (n:Foo) 23:03:30.561 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('(n:Foo)').by(__.choose(neq(' cypher.null'), __.choose(__.hasLabel('Foo'), __.constant(true), __.constant(false)), __.constant(' cypher.null')))

Then the result should be: 0.000
(n:Foo)
true
false
And no side effects 0.026

23:03:30.562 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.562 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.565 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.565 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.565 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.568 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.572 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.572 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.575 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.576 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.581 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.043
Given an empty graph 0.000

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

And having executed: 0.012
CREATE (advertiser {name: 'advertiser1', id: 0}),
       (thing {name: 'Color', id: 1}),
       (red {name: 'red'}),
       (p1 {name: 'product1'}),
       (p2 {name: 'product4'})
CREATE (advertiser)-[:ADV_HAS_PRODUCT]->(p1),
       (advertiser)-[:ADV_HAS_PRODUCT]->(p2),
       (thing)-[:AA_HAS_VALUE]->(red),
       (p1)-[:AP_HAS_VALUE]->(red),
       (p2)-[:AP_HAS_VALUE]->(red)

23:03:30.589 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (advertiser {name: 'advertiser1', id: 0}), (thing {name: 'Color', id: 1}), (red {name: 'red'}), (p1 {name: 'product1'}), (p2 {name: 'product4'}) CREATE (advertiser)-[:ADV_HAS_PRODUCT]->(p1), (advertiser)-[:ADV_HAS_PRODUCT]->(p2), (thing)-[:AA_HAS_VALUE]->(red), (p1)-[:AP_HAS_VALUE]->(red), (p2)-[:AP_HAS_VALUE]->(red)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.589 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (advertiser {name: 'advertiser1', id: 0}), (thing {name: 'Color', id: 1}), (red {name: 'red'}), (p1 {name: 'product1'}), (p2 {name: 'product4'}) CREATE (advertiser)-[:ADV_HAS_PRODUCT]->(p1), (advertiser)-[:ADV_HAS_PRODUCT]->(p2), (thing)-[:AA_HAS_VALUE]->(red), (p1)-[:AP_HAS_VALUE]->(red), (p2)-[:AP_HAS_VALUE]->(red) 23:03:30.596 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('advertiser').property(single, 'name', 'advertiser1').property(single, 'id', 0).addV().as('thing').property(single, 'name', 'Color').property(single, 'id', 1).addV().as('red').property(single, 'name', 'red').addV().as('p1').property(single, 'name', 'product1').addV().as('p2').property(single, 'name', 'product4').addE('ADV_HAS_PRODUCT').from('advertiser').to('p1').addE('ADV_HAS_PRODUCT').from('advertiser').to('p2').addE('AA_HAS_VALUE').from('thing').to('red').addE('AP_HAS_VALUE').from('p1').to('red').addE('AP_HAS_VALUE').from('p2').to('red').barrier().limit(0)

And parameters are: 0.000
1 0
2 1
When executing query: 0.010
MATCH (advertiser)-[:ADV_HAS_PRODUCT]->(out)-[:AP_HAS_VALUE]->(red)<-[:AA_HAS_VALUE]-(a)
WHERE advertiser.id = $1
  AND a.id = $2
  AND red.name = 'red'
  AND out.name = 'product1'
RETURN out.name

23:03:30.622 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (advertiser)-[:ADV_HAS_PRODUCT]->(out)-[:AP_HAS_VALUE]->(red)<-[:AA_HAS_VALUE]-(a) WHERE advertiser.id = $1 AND a.id = $2 AND red.name = 'red' AND out.name = 'product1' RETURN out.name, bindings={1=0, 2=1}}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.623 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (advertiser)-[:ADV_HAS_PRODUCT]->(out)-[:AP_HAS_VALUE]->(red)<-[:AA_HAS_VALUE]-(a) WHERE advertiser.id = $1 AND a.id = $2 AND red.name = 'red' AND out.name = 'product1' RETURN out.name 23:03:30.631 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('advertiser').outE('ADV_HAS_PRODUCT').inV().as('out').has('name', eq('product1')).outE('AP_HAS_VALUE').inV().has('name', eq('red')).inE('AA_HAS_VALUE').outV().as('a').where(__.and(__.choose(__.constant(0), __.constant(0), __.constant(' cypher.null')).is(neq(' cypher.null')).as(' GENERATED4').select('advertiser').values('id').where(eq(' GENERATED4')), __.choose(__.constant(1), __.constant(1), __.constant(' cypher.null')).is(neq(' cypher.null')).as(' GENERATED5').select('a').values('id').where(eq(' GENERATED5')))).select('out').project('out.name').by(__.choose(neq(' cypher.null'), __.choose(__.values('name'), __.values('name'), __.constant(' cypher.null')), __.constant(' cypher.null')))

Then the result should be: 0.000
out.name
'product1'
And no side effects 0.020

23:03:30.633 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.633 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.635 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.636 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.636 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.639 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.639 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.640 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.643 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.647 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.648 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.031
Given an empty graph 0.000

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

And having executed: 0.009
CREATE (a:Person {name: 'Alice'}), (b:Person {name: 'Bob'}),
       (c), (d)
CREATE (a)-[:T]->(c),
       (b)-[:T]->(d)

23:03:30.655 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:Person {name: 'Alice'}), (b:Person {name: 'Bob'}), (c), (d) CREATE (a)-[:T]->(c), (b)-[:T]->(d)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.655 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:Person {name: 'Alice'}), (b:Person {name: 'Bob'}), (c), (d) CREATE (a)-[:T]->(c), (b)-[:T]->(d) 23:03:30.658 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('Person').as('a').property(single, 'name', 'Alice').addV('Person').as('b').property(single, 'name', 'Bob').addV().as('c').addV().as('d').addE('T').from('a').to('c').addE('T').from('b').to('d').barrier().limit(0)

When executing query: 0.005
MATCH (n:Person)-->()
WHERE n.name = 'Bob'
RETURN n

23:03:30.681 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n:Person)-->() WHERE n.name = 'Bob' RETURN n}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.681 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n:Person)-->() WHERE n.name = 'Bob' RETURN n 23:03:30.686 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').hasLabel('Person').has('name', eq('Bob')).outE().inV().select('n').project('n').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
n
(:Person {name: 'Bob'})
And no side effects 0.016

23:03:30.687 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.687 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.689 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.690 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.690 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.693 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.693 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.694 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.696 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.697 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.697 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.033
Given an empty graph 0.000

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

And having executed: 0.006
CREATE (a:A), (b:B), (c:C)
CREATE (a)-[:T]->(b),
       (a)-[:T]->(c)

23:03:30.704 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B), (c:C) CREATE (a)-[:T]->(b), (a)-[:T]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.705 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B), (c:C) CREATE (a)-[:T]->(b), (a)-[:T]->(c) 23:03:30.708 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addV('C').as('c').addE('T').from('a').to('b').addE('T').from('a').to('c').barrier().limit(0)

When executing query: 0.005
MATCH (a)-->(b)
MATCH (c)-->(d)
RETURN a, b, c, d

23:03:30.733 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-->(b) MATCH (c)-->(d) RETURN a, b, c, d}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.733 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-->(b) MATCH (c)-->(d) RETURN a, b, c, d 23:03:30.737 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').outE().inV().as('b').V().as('c').outE().inV().as('d').select('a', 'b', 'c', 'd').project('a', 'b', 'c', 'd').by(__.select('a').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('b').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('c').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('d').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
a b c d
(:A) (:B) (:A) (:B)
(:A) (:B) (:A) (:C)
(:A) (:C) (:A) (:B)
(:A) (:C) (:A) (:C)
And no side effects 0.021

23:03:30.738 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.739 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.741 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.742 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.742 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.745 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.746 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.746 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.749 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.750 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.754 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.039
Given an empty graph 0.000

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

And having executed: 0.012
CREATE (a:A), (b:B {id: 1}), (c:C {id: 2}), (d:D)
CREATE (a)-[:T]->(b),
       (a)-[:T]->(c),
       (a)-[:T]->(d),
       (b)-[:T]->(c),
       (b)-[:T]->(d),
       (c)-[:T]->(d)

23:03:30.761 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B {id: 1}), (c:C {id: 2}), (d:D) CREATE (a)-[:T]->(b), (a)-[:T]->(c), (a)-[:T]->(d), (b)-[:T]->(c), (b)-[:T]->(d), (c)-[:T]->(d)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.761 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B {id: 1}), (c:C {id: 2}), (d:D) CREATE (a)-[:T]->(b), (a)-[:T]->(c), (a)-[:T]->(d), (b)-[:T]->(c), (b)-[:T]->(d), (c)-[:T]->(d) 23:03:30.768 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').property(single, 'id', 1).addV('C').as('c').property(single, 'id', 2).addV('D').as('d').addE('T').from('a').to('b').addE('T').from('a').to('c').addE('T').from('a').to('d').addE('T').from('b').to('c').addE('T').from('b').to('d').addE('T').from('c').to('d').barrier().limit(0)

When executing query: 0.009
MATCH (a)--(b)--(c)--(d)--(a), (b)--(d)
WHERE a.id = 1
  AND c.id = 2
RETURN d

23:03:30.791 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)--(b)--(c)--(d)--(a), (b)--(d) WHERE a.id = 1 AND c.id = 2 RETURN d}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.792 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)--(b)--(c)--(d)--(a), (b)--(d) WHERE a.id = 1 AND c.id = 2 RETURN d 23:03:30.799 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('id', eq(1)).bothE().as(' UNNAMED10').otherV().as('b').bothE().as(' UNNAMED15').otherV().as('c').has('id', eq(2)).bothE().as(' UNNAMED20').otherV().as('d').bothE().as(' UNNAMED25').otherV().as(' GENERATED5').where(__.select(' GENERATED5').where(eq('a'))).dedup('a', ' UNNAMED10', 'b', ' UNNAMED15', 'c', ' UNNAMED20', 'd', ' UNNAMED25', 'a').select('b').is(neq(' cypher.null')).bothE().as(' UNNAMED35').otherV().as(' GENERATED8').where(__.select(' GENERATED8').where(eq('d'))).dedup('b', ' UNNAMED35', 'd').where(__.and(__.select(' UNNAMED10').where(neq(' UNNAMED35')), __.select(' UNNAMED10').where(neq(' UNNAMED15')), __.select(' UNNAMED20').where(neq(' UNNAMED35')), __.select(' UNNAMED15').where(neq(' UNNAMED25')), __.select(' UNNAMED25').where(neq(' UNNAMED35')), __.select(' UNNAMED10').where(neq(' UNNAMED20')), __.select(' UNNAMED10').where(neq(' UNNAMED25')), __.select(' UNNAMED15').where(neq(' UNNAMED35')), __.select(' UNNAMED15').where(neq(' UNNAMED20')), __.select(' UNNAMED20').where(neq(' UNNAMED25')))).select('d').project('d').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
d
(:A)
(:D)
And no side effects 0.016

23:03:30.801 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.802 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.804 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.804 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.805 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.807 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.808 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.808 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.810 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.811 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.812 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.033
Given an empty graph 0.000

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

And having executed: 0.008
CREATE (a {name: 'a'}), (b {name: 'b'}), (c {name: 'c'})
CREATE (a)-[:A]->(b),
       (b)-[:B]->(a),
       (b)-[:B]->(c)

23:03:30.819 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'a'}), (b {name: 'b'}), (c {name: 'c'}) CREATE (a)-[:A]->(b), (b)-[:B]->(a), (b)-[:B]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.819 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'a'}), (b {name: 'b'}), (c {name: 'c'}) CREATE (a)-[:A]->(b), (b)-[:B]->(a), (b)-[:B]->(c) 23:03:30.823 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'a').addV().as('b').property(single, 'name', 'b').addV().as('c').property(single, 'name', 'c').addE('A').from('a').to('b').addE('B').from('b').to('a').addE('B').from('b').to('c').barrier().limit(0)

When executing query: 0.004
MATCH (a)-[:A]->()-[:B]->(a)
RETURN a.name

23:03:30.848 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-[:A]->()-[:B]->(a) RETURN a.name}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.848 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[:A]->()-[:B]->(a) RETURN a.name 23:03:30.851 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').outE('A').inV().outE('B').inV().as(' GENERATED3').where(__.select(' GENERATED3').where(eq('a'))).select('a').project('a.name').by(__.choose(neq(' cypher.null'), __.choose(__.values('name'), __.values('name'), __.constant(' cypher.null')), __.constant(' cypher.null')))

Then the result should be: 0.000
a.name
'a'
And no side effects 0.020

23:03:30.852 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.852 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.855 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.856 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.856 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.858 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.859 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.859 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.862 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.865 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.866 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.034
Given an empty graph 0.000

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

And having executed: 0.010
CREATE (a {name: 'a'}), (b {name: 'b'}), (c {name: 'c'})
CREATE (a)-[:A]->(b),
       (b)-[:B]->(a),
       (b)-[:B]->(c)

23:03:30.874 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {name: 'a'}), (b {name: 'b'}), (c {name: 'c'}) CREATE (a)-[:A]->(b), (b)-[:B]->(a), (b)-[:B]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.874 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'a'}), (b {name: 'b'}), (c {name: 'c'}) CREATE (a)-[:A]->(b), (b)-[:B]->(a), (b)-[:B]->(c) 23:03:30.878 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'name', 'a').addV().as('b').property(single, 'name', 'b').addV().as('c').property(single, 'name', 'c').addE('A').from('a').to('b').addE('B').from('b').to('a').addE('B').from('b').to('c').barrier().limit(0)

When executing query: 0.005
MATCH (a)-[:A]->(b), (b)-[:B]->(a)
RETURN a.name

23:03:30.907 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-[:A]->(b), (b)-[:B]->(a) RETURN a.name}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.907 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[:A]->(b), (b)-[:B]->(a) RETURN a.name 23:03:30.911 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').outE('A').inV().is(neq(' cypher.null')).outE('B').inV().as(' GENERATED4').where(__.select(' GENERATED4').where(eq('a'))).select('a').project('a.name').by(__.choose(neq(' cypher.null'), __.choose(__.values('name'), __.values('name'), __.constant(' cypher.null')), __.constant(' cypher.null')))

Then the result should be: 0.000
a.name
'a'
And no side effects 0.019

23:03:30.912 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.912 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.915 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.915 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.916 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.918 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.919 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.919 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.922 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.925 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.926 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.033
Given an empty graph 0.000

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

And having executed: 0.004
CREATE ()-[:T]->()

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

When executing query: 0.003
MATCH (a)-[r*1..1]->(b)
RETURN r

23:03:30.962 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-[r*1..1]->(b) RETURN r}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.962 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[r*1..1]->(b) RETURN r 23:03:30.965 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').times(1).repeat(__.outE().as('r').inV()).simplePath().from(' cypher.path.start.GENERATED1').select('r').project('r').by(__.choose(neq(' cypher.null'), __.unfold().project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()).fold(), __.constant(' cypher.null')))

Then the result should be: 0.000
r
[[:T]]
And no side effects 0.025

23:03:30.966 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.966 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:30.969 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.970 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.970 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:30.973 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:30.973 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.974 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:30.977 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:30.980 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:30.985 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.036
Given an empty graph 0.000

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

When executing query: 0.008
OPTIONAL MATCH (a)
WITH a
MATCH (a)-->(b)
RETURN b

23:03:31.021 [Test worker] DEBUG o.a.t.g.driver.Client - OPTIONAL MATCH (a) WITH a MATCH (a)-->(b) RETURN b}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.021 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: OPTIONAL MATCH (a) WITH a MATCH (a)-->(b) RETURN b 23:03:31.025 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').choose(__.V().as('a'), __.V().as('a'), __.constant(' cypher.null').as('a')).select('a').as('a').is(neq(' cypher.null')).outE().inV().project('b').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
b
And no side effects 0.028

23:03:31.029 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.029 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.031 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.034 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.034 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.037 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.041 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.041 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.044 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.047 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.052 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.038
Given an empty graph 0.000

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

And having executed: 0.004
CREATE ()-[:T]->()

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

When executing query: 0.008
OPTIONAL MATCH (a:Label)
WITH a
MATCH (a)-->(b)
RETURN b

23:03:31.089 [Test worker] DEBUG o.a.t.g.driver.Client - OPTIONAL MATCH (a:Label) WITH a MATCH (a)-->(b) RETURN b}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.089 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: OPTIONAL MATCH (a:Label) WITH a MATCH (a)-->(b) RETURN b 23:03:31.093 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').choose(__.V().as('a').hasLabel('Label'), __.V().as('a').hasLabel('Label'), __.constant(' cypher.null').as('a')).select('a').as('a').is(neq(' cypher.null')).outE().inV().project('b').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
b
And no side effects 0.024

23:03:31.098 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.098 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.101 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.101 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.101 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.104 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.105 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.105 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.108 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.111 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.116 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.038
Given an empty graph 0.000

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

When executing query: 0.004
OPTIONAL MATCH (a)
WITH a
OPTIONAL MATCH (a)-->(b)
RETURN b

23:03:31.153 [Test worker] DEBUG o.a.t.g.driver.Client - OPTIONAL MATCH (a) WITH a OPTIONAL MATCH (a)-->(b) RETURN b}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.154 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: OPTIONAL MATCH (a) WITH a OPTIONAL MATCH (a)-->(b) RETURN b 23:03:31.158 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').choose(__.V().as('a'), __.V().as('a'), __.constant(' cypher.null').as('a')).select('a').as('a').choose(__.select('a').is(neq(' cypher.null')).outE().inV().as('b'), __.select('a').is(neq(' cypher.null')).outE().inV().as('b'), __.constant(' cypher.null').as('b')).select('b').project('b').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
b
null
And no side effects 0.033

23:03:31.159 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.159 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.161 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.166 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.166 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.170 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.173 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.173 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.176 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.180 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.185 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.032
Given an empty graph 0.000

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

When executing query: 0.003
OPTIONAL MATCH (a)
RETURN a

23:03:31.222 [Test worker] DEBUG o.a.t.g.driver.Client - OPTIONAL MATCH (a) RETURN a}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.222 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: OPTIONAL MATCH (a) RETURN a 23:03:31.224 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').choose(__.V().as('a'), __.V().as('a'), __.constant(' cypher.null').as('a')).select('a').project('a').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
a
null
And no side effects 0.029

23:03:31.225 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.225 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.228 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.231 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.231 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.234 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.237 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.238 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.240 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.244 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.249 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.039
Given an empty graph 0.000

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

And having executed: 0.003
CREATE ()

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

When executing query: 0.004
MATCH p = (a)
RETURN p

23:03:31.298 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = (a) RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.299 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (a) RETURN p 23:03:31.301 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().path().project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
p
<()>
And no side effects 0.030

23:03:31.303 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.303 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.306 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.307 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.307 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.310 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.315 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.315 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.318 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.323 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.328 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.040
Given an empty graph 0.000

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

And having executed: 0.004
CREATE ()

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

When executing query: 0.006
MATCH p = ()-[*0..]->()
RETURN p

23:03:31.375 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = ()-[*0..]->() RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.375 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = ()-[*0..]->() RETURN p 23:03:31.380 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.p').emit().repeat(__.outE().aggregate(' cypher.path.edge.p').inV()).until(__.path().from(' cypher.path.start.p').count(local).is(gte(21))).where(__.path().from(' cypher.path.start.p').count(local).is(gte(0))).simplePath().from(' cypher.path.start.p').path().project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
p
<()>
And no side effects 0.029

23:03:31.382 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.382 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.385 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.385 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.385 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.390 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.394 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.394 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.397 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.400 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.406 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.032
Given an empty graph 0.000

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

And having executed: 0.004
CREATE ({prop: 42})

23:03:31.412 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ({prop: 42})}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.412 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({prop: 42}) 23:03:31.414 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().property(single, 'prop', 42).barrier().limit(0)

When executing query: 0.005
MATCH (n)
RETURN n.prop AS n, count(n) AS count

23:03:31.439 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN n.prop AS n, count(n) AS count}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.439 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN n.prop AS n, count(n) AS count 23:03:31.443 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().group().by(__.choose(neq(' cypher.null'), __.choose(__.values('prop'), __.values('prop'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.fold().project('n', 'count').by(__.unfold().choose(neq(' cypher.null'), __.choose(__.values('prop'), __.values('prop'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.unfold().is(neq(' cypher.null')).count())).unfold().select(values)

Then the result should be: 0.000
n count
42 1
And no side effects 0.022

23:03:31.444 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.444 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.447 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.447 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.447 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.450 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.454 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.454 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.457 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.461 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.461 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.035
Given an empty graph 0.000

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

And having executed: 0.005
CREATE ()-[:T1]->(),
       ()-[:T2]->()

23:03:31.468 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T1]->(), ()-[:T2]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.468 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T1]->(), ()-[:T2]->() 23:03:31.470 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as(' UNNAMED8').addV().as(' UNNAMED18').addE('T1').from(' UNNAMED8').to(' UNNAMED18').addV().as(' UNNAMED29').addV().as(' UNNAMED39').addE('T2').from(' UNNAMED29').to(' UNNAMED39').barrier().limit(0)

When executing query: 0.005
MATCH ()-[r1]->()
WITH r1 AS r2
MATCH ()-[r2]->()
RETURN r2 AS rel

23:03:31.499 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r1]->() WITH r1 AS r2 MATCH ()-[r2]->() RETURN r2 AS rel}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.499 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r1]->() WITH r1 AS r2 MATCH ()-[r2]->() RETURN r2 AS rel 23:03:31.504 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().as('r2').V().outE().as(' GENERATED3').where(__.select(' GENERATED3').where(eq('r2'))).inV().select('r2').project('rel').by(__.choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()), __.constant(' cypher.null')))

Then the result should be: 0.000
rel
[:T1]
[:T2]
And no side effects 0.024

23:03:31.505 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.505 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.507 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.508 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.508 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.512 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.512 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.512 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.515 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.518 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.523 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.040
Given an empty graph 0.000

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

And having executed: 0.005
CREATE ()-[:T1]->(),
       ()-[:T2]->()

23:03:31.530 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T1]->(), ()-[:T2]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.530 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T1]->(), ()-[:T2]->() 23:03:31.532 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as(' UNNAMED8').addV().as(' UNNAMED18').addE('T1').from(' UNNAMED8').to(' UNNAMED18').addV().as(' UNNAMED29').addV().as(' UNNAMED39').addE('T2').from(' UNNAMED29').to(' UNNAMED39').barrier().limit(0)

When executing query: 0.007
MATCH ()-[r1]->()
WITH r1 AS r2, count(*) AS c
  ORDER BY c
MATCH ()-[r2]->()
RETURN r2 AS rel

23:03:31.560 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r1]->() WITH r1 AS r2, count(*) AS c ORDER BY c MATCH ()-[r2]->() RETURN r2 AS rel}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.560 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r1]->() WITH r1 AS r2, count(*) AS c ORDER BY c MATCH ()-[r2]->() RETURN r2 AS rel 23:03:31.567 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().group().by(__.identity()).by(__.fold().project('r2', 'c').by(__.unfold()).by(__.unfold().count())).unfold().select(values).as(' GENERATED2').select('r2').as('r2').select(' GENERATED2').select('c').as('c').select('r2', 'c').project('r2', 'c').by(__.select('r2')).by(__.select('c')).order().by(__.select('c'), incr).as(' GENERATED3').select('r2').as('r2').select(' GENERATED3').select('c').as('c').V().outE().as(' GENERATED6').where(__.select(' GENERATED6').where(eq('r2'))).inV().select('r2').project('rel').by(__.choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()), __.constant(' cypher.null')))

Then the result should be: 0.000
rel
[:T1]
[:T2]
And no side effects 0.027

23:03:31.568 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.570 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.572 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.573 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.573 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.576 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.577 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.577 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.580 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.584 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.589 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.040
Given an empty graph 0.000

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

And having executed: 0.006
CREATE ()-[:T1 {id: 0}]->(),
       ()-[:T2 {id: 1}]->()

23:03:31.597 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T1 {id: 0}]->(), ()-[:T2 {id: 1}]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.597 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T1 {id: 0}]->(), ()-[:T2 {id: 1}]->() 23:03:31.600 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as(' UNNAMED8').addV().as(' UNNAMED26').addE('T1').from(' UNNAMED8').to(' UNNAMED26').property('id', 0).addV().as(' UNNAMED37').addV().as(' UNNAMED55').addE('T2').from(' UNNAMED37').to(' UNNAMED55').property('id', 1).barrier().limit(0)

When executing query: 0.012
MATCH (a)-[r]->(b)
WITH a, r, b, count(*) AS c
  ORDER BY c
MATCH (a)-[r]->(b)
RETURN r AS rel
  ORDER BY rel.id

23:03:31.622 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-[r]->(b) WITH a, r, b, count(*) AS c ORDER BY c MATCH (a)-[r]->(b) RETURN r AS rel ORDER BY rel.id}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.622 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[r]->(b) WITH a, r, b, count(*) AS c ORDER BY c MATCH (a)-[r]->(b) RETURN r AS rel ORDER BY rel.id 23:03:31.632 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').outE().as('r').inV().as('b').select('a', 'r', 'b').group().by(__.project('a', 'r', 'b').by(__.select('a')).by(__.select('r')).by(__.select('b'))).by(__.fold().project('a', 'r', 'b', 'c').by(__.unfold().select('a')).by(__.unfold().select('r')).by(__.unfold().select('b')).by(__.unfold().count())).unfold().select(values).as(' GENERATED2').select('a').as('a').select(' GENERATED2').select('r').as('r').select(' GENERATED2').select('b').as('b').select(' GENERATED2').select('c').as('c').select('a', 'r', 'b', 'c').project('a', 'r', 'b', 'c').by(__.select('a')).by(__.select('r')).by(__.select('b')).by(__.select('c')).order().by(__.select('c'), incr).as(' GENERATED6').select('a').as('a').select(' GENERATED6').select('r').as('r').select(' GENERATED6').select('b').as('b').select(' GENERATED6').select('c').as('c').select('a').is(neq(' cypher.null')).outE().as(' GENERATED12').where(__.select(' GENERATED12').where(eq('r'))).inV().as(' GENERATED14').where(__.select(' GENERATED14').where(eq('b'))).select('r').as(' FRESHID86').project(' FRESHID86', ' FRESHID110').by(__.identity()).by(__.choose(neq(' cypher.null'), __.choose(__.values('id'), __.values('id'), __.constant(' cypher.null')), __.constant(' cypher.null'))).as(' GENERATED16').select(' FRESHID86').as(' FRESHID86').select(' GENERATED16').select(' FRESHID110').as(' FRESHID110').select(' FRESHID86', ' FRESHID110').project(' FRESHID86', ' FRESHID110').by(__.select(' FRESHID86')).by(__.select(' FRESHID110')).order().by(__.select(' FRESHID110'), incr).as(' GENERATED18').select(' FRESHID86').as(' FRESHID86').select(' GENERATED18').select(' FRESHID110').as(' FRESHID110').select(' FRESHID86').as(' FRESHID86').project('rel').by(__.choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()), __.constant(' cypher.null')))

Then the result should be, in order: 0.000
rel
[:T1 {id: 0}]
[:T2 {id: 1}]
And no side effects 0.021

23:03:31.634 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.634 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.638 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.639 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.639 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.641 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.642 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.642 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.646 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.650 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.654 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.033
Given an empty graph 0.000

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

And having executed: 0.004
CREATE (:A)-[:T]->(:B)

23:03:31.656 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A)-[:T]->(:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.656 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A)-[:T]->(:B) 23:03:31.659 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as(' UNNAMED8').addV('B').as(' UNNAMED19').addE('T').from(' UNNAMED8').to(' UNNAMED19').barrier().limit(0)

When executing query: 0.006
MATCH ()-[r]->()
WITH r
  LIMIT 1
OPTIONAL MATCH (a2)-[r]->(b2)
RETURN a2, r, b2

23:03:31.682 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() WITH r LIMIT 1 OPTIONAL MATCH (a2)-[r]->(b2) RETURN a2, r, b2}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.682 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() WITH r LIMIT 1 OPTIONAL MATCH (a2)-[r]->(b2) RETURN a2, r, b2 23:03:31.687 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().as('r').project('r').by(__.identity()).limit(1).select('r').as('r').choose(__.V().as('a2').outE().as(' GENERATED5').where(__.select(' GENERATED5').where(eq('r'))).inV().as('b2'), __.V().as('a2').outE().as(' GENERATED5').where(__.select(' GENERATED5').where(eq('r'))).inV().as('b2'), __.constant(' cypher.null').as('a2').as('b2')).select('a2', 'r', 'b2').project('a2', 'r', 'b2').by(__.select('a2').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('r').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()), __.constant(' cypher.null'))).by(__.select('b2').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
a2 r b2
(:A) [:T] (:B)
And no side effects 0.021

23:03:31.688 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.688 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.692 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.692 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.693 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.695 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.696 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.696 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.699 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.699 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.705 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.033
Given an empty graph 0.000

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

And having executed: 0.004
CREATE (:A)-[:T]->(:B)

23:03:31.711 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A)-[:T]->(:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.711 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A)-[:T]->(:B) 23:03:31.714 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as(' UNNAMED8').addV('B').as(' UNNAMED19').addE('T').from(' UNNAMED8').to(' UNNAMED19').barrier().limit(0)

When executing query: 0.006
MATCH (a1)-[r]->()
WITH r, a1
  LIMIT 1
OPTIONAL MATCH (a1)-[r]->(b2)
RETURN a1, r, b2

23:03:31.738 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a1)-[r]->() WITH r, a1 LIMIT 1 OPTIONAL MATCH (a1)-[r]->(b2) RETURN a1, r, b2}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.739 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a1)-[r]->() WITH r, a1 LIMIT 1 OPTIONAL MATCH (a1)-[r]->(b2) RETURN a1, r, b2 23:03:31.743 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a1').outE().as('r').inV().select('r', 'a1').project('r', 'a1').by(__.select('r')).by(__.select('a1')).limit(1).as(' GENERATED2').select('r').as('r').select(' GENERATED2').select('a1').as('a1').choose(__.select('a1').is(neq(' cypher.null')).outE().as(' GENERATED8').where(__.select(' GENERATED8').where(eq('r'))).inV().as('b2'), __.select('a1').is(neq(' cypher.null')).outE().as(' GENERATED8').where(__.select(' GENERATED8').where(eq('r'))).inV().as('b2'), __.constant(' cypher.null').as('b2')).select('a1', 'r', 'b2').project('a1', 'r', 'b2').by(__.select('a1').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('r').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()), __.constant(' cypher.null'))).by(__.select('b2').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
a1 r b2
(:A) [:T] (:B)
And no side effects 0.022

23:03:31.745 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.745 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.748 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.749 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.749 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.752 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.753 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.753 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.756 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.756 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.761 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.042
Given an empty graph 0.000

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

And having executed: 0.005
CREATE ()-[:T]->()

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

When executing query: 0.012
MATCH (a1)-[r]->()
WITH r, a1
  LIMIT 1
MATCH (a1:X)-[r]->(b2)
RETURN a1, r, b2

23:03:31.798 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a1)-[r]->() WITH r, a1 LIMIT 1 MATCH (a1:X)-[r]->(b2) RETURN a1, r, b2}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.798 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a1)-[r]->() WITH r, a1 LIMIT 1 MATCH (a1:X)-[r]->(b2) RETURN a1, r, b2 23:03:31.804 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a1').outE().as('r').inV().select('r', 'a1').project('r', 'a1').by(__.select('r')).by(__.select('a1')).limit(1).as(' GENERATED2').select('r').as('r').select(' GENERATED2').select('a1').as('a1').hasLabel('X').select('a1').is(neq(' cypher.null')).outE().as(' GENERATED6').where(__.select(' GENERATED6').where(eq('r'))).inV().as('b2').select('a1', 'r', 'b2').project('a1', 'r', 'b2').by(__.select('a1').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('r').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()), __.constant(' cypher.null'))).by(__.select('b2').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
a1 r b2
And no side effects 0.025

23:03:31.810 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.810 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.813 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.813 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.814 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.817 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.818 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.818 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.821 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.825 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.830 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.012
Scenario Matching with LIMIT and predicates, then matching again using a relationship and node that are both already bound along with a duplicate predicate
Steps
Given an empty graph 0.000

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

And having executed: 0.004
CREATE (:X:Y)-[:T]->()

23:03:31.836 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:X:Y)-[:T]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.836 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:X:Y)-[:T]->() 23:03:31.839 [gremlin-server-worker-1] WARN o.a.t.g.s.h.OpExecutorHandler - Multiple labels are not supported: X::Y org.opencypher.gremlin.translation.exception.SyntaxException: Multiple labels are not supported: X::Y at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at scala.Option.foreach(Option.scala:257) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:56) at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:733) at scala.collection.immutable.Map$Map2.foreach(Map.scala:137) at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:732) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:56) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:47) at org.opencypher.gremlin.translation.ir.TranslationWriter.write(TranslationWriter.scala) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.evalCypher(CypherOpProcessor.java:112) 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:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:159) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) at java.lang.Thread.run(Thread.java:748)

When executing query: 0.008
MATCH (a1:X:Y)-[r]->()
WITH r, a1
  LIMIT 1
MATCH (a1:Y)-[r]->(b2)
RETURN a1, r, b2

23:03:31.869 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a1:X:Y)-[r]->() WITH r, a1 LIMIT 1 MATCH (a1:Y)-[r]->(b2) RETURN a1, r, b2}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.869 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a1:X:Y)-[r]->() WITH r, a1 LIMIT 1 MATCH (a1:Y)-[r]->(b2) RETURN a1, r, b2 23:03:31.875 [gremlin-server-worker-1] WARN o.a.t.g.s.h.OpExecutorHandler - Multiple labels are not supported: X::Y org.opencypher.gremlin.translation.exception.SyntaxException: Multiple labels are not supported: X::Y at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at scala.Option.foreach(Option.scala:257) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:56) at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:733) at scala.collection.immutable.Map$Map2.foreach(Map.scala:137) at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:732) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:56) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:47) at org.opencypher.gremlin.translation.ir.TranslationWriter.write(TranslationWriter.scala) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.evalCypher(CypherOpProcessor.java:112) 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:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:159) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) at java.lang.Thread.run(Thread.java:748)

Then the result should be: 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "MatchAcceptance2": Scenario "Matching with LIMIT and predicates, then matching again using a relationship and node that are both already bound along with a duplicate predicate" failed with message: Expected: | a1 | r | b2 |
| (:X:Y) | [:T {}] | () |, got error ExecutionFailed(UnknownError,runtime,Multiple labels are not supported: X::Y,Some(org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Multiple labels are not supported: X::Y))
	at org.opencypher.tools.tck.api.Scenario$$anonfun$executeOnGraph$1.apply(Scenario.scala:95)
	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)
Caused by: org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Multiple labels are not supported: X::Y
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:246)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:197)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:123)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:67)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at org.apache.tinkerpop.gremlin.driver.handler.WebSocketClientHandler.channelRead0(WebSocketClientHandler.java:94)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921)
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135)
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131)
	... 1 more
a1 r b2
(:X:Y) [:T] ()
0.049
Given an empty graph 0.000

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

And having executed: 0.008
CREATE ()-[:T]->()

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

When executing query: 0.013
MATCH (a1)-[r:T]->()
WITH r, a1
  LIMIT 1
MATCH (a1)-[r:Y]->(b2)
RETURN a1, r, b2

23:03:31.915 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a1)-[r:T]->() WITH r, a1 LIMIT 1 MATCH (a1)-[r:Y]->(b2) RETURN a1, r, b2}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.915 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a1)-[r:T]->() WITH r, a1 LIMIT 1 MATCH (a1)-[r:Y]->(b2) RETURN a1, r, b2 23:03:31.922 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a1').outE('T').as('r').inV().select('r', 'a1').project('r', 'a1').by(__.select('r')).by(__.select('a1')).limit(1).as(' GENERATED2').select('r').as('r').select(' GENERATED2').select('a1').as('a1').is(neq(' cypher.null')).outE('Y').as(' GENERATED6').where(__.select(' GENERATED6').where(eq('r'))).inV().as('b2').select('a1', 'r', 'b2').project('a1', 'r', 'b2').by(__.select('a1').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('r').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()), __.constant(' cypher.null'))).by(__.select('b2').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
a1 r b2
And no side effects 0.027

23:03:31.928 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.928 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.931 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.931 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.931 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.934 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.935 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.935 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:31.938 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:31.941 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.949 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.033
Given an empty graph 0.000

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

And having executed: 0.005
CREATE (:A)-[:T]->(:B)

23:03:31.957 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A)-[:T]->(:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.957 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A)-[:T]->(:B) 23:03:31.959 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as(' UNNAMED8').addV('B').as(' UNNAMED19').addE('T').from(' UNNAMED8').to(' UNNAMED19').barrier().limit(0)

When executing query: 0.006
MATCH (a1)-[r:T]->() WITH r, a1
LIMIT 1
MATCH (a1)-[r:T]->(b2)
RETURN a1, r, b2

23:03:31.984 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a1)-[r:T]->() WITH r, a1 LIMIT 1 MATCH (a1)-[r:T]->(b2) RETURN a1, r, b2}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.984 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a1)-[r:T]->() WITH r, a1 LIMIT 1 MATCH (a1)-[r:T]->(b2) RETURN a1, r, b2 23:03:31.989 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a1').outE('T').as('r').inV().select('r', 'a1').project('r', 'a1').by(__.select('r')).by(__.select('a1')).limit(1).as(' GENERATED2').select('r').as('r').select(' GENERATED2').select('a1').as('a1').is(neq(' cypher.null')).outE('T').as(' GENERATED6').where(__.select(' GENERATED6').where(eq('r'))).inV().as('b2').select('a1', 'r', 'b2').project('a1', 'r', 'b2').by(__.select('a1').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('r').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()), __.constant(' cypher.null'))).by(__.select('b2').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
a1 r b2
(:A) [:T] (:B)
And no side effects 0.021

23:03:31.991 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.991 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:31.994 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.994 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.994 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:31.998 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:31.998 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:31.999 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:32.001 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:32.002 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.007 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.020
Scenario Matching relationships into a list and matching variable length using the list
Steps
Given an empty graph 0.000

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

And having executed: 0.007
CREATE (a:A), (b:B), (c:C)
CREATE (a)-[:Y]->(b),
       (b)-[:Y]->(c)

23:03:32.013 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B), (c:C) CREATE (a)-[:Y]->(b), (b)-[:Y]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.013 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B), (c:C) CREATE (a)-[:Y]->(b), (b)-[:Y]->(c) 23:03:32.017 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addV('C').as('c').addE('Y').from('a').to('b').addE('Y').from('b').to('c').barrier().limit(0)

When executing query: 0.012
MATCH ()-[r1]->()-[r2]->()
WITH [r1, r2] AS rs
  LIMIT 1
MATCH (first)-[rs*]->(second)
RETURN first, second

23:03:32.040 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r1]->()-[r2]->() WITH [r1, r2] AS rs LIMIT 1 MATCH (first)-[rs*]->(second) RETURN first, second}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.041 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r1]->()-[r2]->() WITH [r1, r2] AS rs LIMIT 1 MATCH (first)-[rs*]->(second) RETURN first, second 23:03:32.046 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().outE().as('r1').inV().outE().as('r2').inV().where(__.select('r1').where(neq('r2'))).select('r1', 'r2').project('rs').by(__.project(' GENERATED3', ' GENERATED4').by(__.select('r1')).by(__.select('r2')).select(values)).limit(1).select('rs').as('rs').V().as('first').as(' cypher.path.start.GENERATED7').repeat(__.outE().as(' GENERATED6').where(__.select(' GENERATED6').where(eq('rs'))).inV()).emit().until(__.path().from(' cypher.path.start.GENERATED7').count(local).is(gte(21))).as('second').select('first', 'second').project('first', 'second').by(__.select('first').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('second').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "MatchAcceptance2": Scenario "Matching relationships into a list and matching variable length using the list" failed with message: 
Expected (in any order of rows):
| first | second |
| (:A) | (:C) |
Actual:
| first | second |

	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)
first second
(:A) (:C)
0.021
Scenario Matching relationships into a list and matching variable length using the list, with bound nodes
Steps
Given an empty graph 0.000

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

And having executed: 0.007
CREATE (a:A), (b:B), (c:C)
CREATE (a)-[:Y]->(b),
       (b)-[:Y]->(c)

23:03:32.055 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B), (c:C) CREATE (a)-[:Y]->(b), (b)-[:Y]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.055 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B), (c:C) CREATE (a)-[:Y]->(b), (b)-[:Y]->(c) 23:03:32.058 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addV('C').as('c').addE('Y').from('a').to('b').addE('Y').from('b').to('c').barrier().limit(0)

When executing query: 0.014
MATCH (a)-[r1]->()-[r2]->(b)
WITH [r1, r2] AS rs, a AS first, b AS second
  LIMIT 1
MATCH (first)-[rs*]->(second)
RETURN first, second

23:03:32.084 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-[r1]->()-[r2]->(b) WITH [r1, r2] AS rs, a AS first, b AS second LIMIT 1 MATCH (first)-[rs*]->(second) RETURN first, second}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.085 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[r1]->()-[r2]->(b) WITH [r1, r2] AS rs, a AS first, b AS second LIMIT 1 MATCH (first)-[rs*]->(second) RETURN first, second 23:03:32.090 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').outE().as('r1').inV().outE().as('r2').inV().as('b').where(__.select('r1').where(neq('r2'))).select('r1', 'r2', 'a', 'b').project('rs', 'first', 'second').by(__.project(' GENERATED3', ' GENERATED4').by(__.select('r1')).by(__.select('r2')).select(values)).by(__.select('a')).by(__.select('b')).limit(1).as(' GENERATED5').select('rs').as('rs').select(' GENERATED5').select('first').as('first').select(' GENERATED5').select('second').as('second').select('first').is(neq(' cypher.null')).as(' cypher.path.start.GENERATED8').repeat(__.outE().as(' GENERATED7').where(__.select(' GENERATED7').where(eq('rs'))).inV()).emit().until(__.path().from(' cypher.path.start.GENERATED8').count(local).is(gte(21))).as(' GENERATED9').where(__.select(' GENERATED9').where(eq('second'))).select('first', 'second').project('first', 'second').by(__.select('first').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('second').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "MatchAcceptance2": Scenario "Matching relationships into a list and matching variable length using the list, with bound nodes" failed with message: 
Expected (in any order of rows):
| first | second |
| (:A) | (:C) |
Actual:
| first | second |

	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)
first second
(:A) (:C)
0.043
Given an empty graph 0.000

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

And having executed: 0.007
CREATE (a:A), (b:B), (c:C)
CREATE (a)-[:Y]->(b),
       (b)-[:Y]->(c)

23:03:32.100 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B), (c:C) CREATE (a)-[:Y]->(b), (b)-[:Y]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.100 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B), (c:C) CREATE (a)-[:Y]->(b), (b)-[:Y]->(c) 23:03:32.104 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addV('C').as('c').addE('Y').from('a').to('b').addE('Y').from('b').to('c').barrier().limit(0)

When executing query: 0.014
MATCH (a)-[r1]->()-[r2]->(b)
WITH [r1, r2] AS rs, a AS second, b AS first
  LIMIT 1
MATCH (first)-[rs*]->(second)
RETURN first, second

23:03:32.129 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-[r1]->()-[r2]->(b) WITH [r1, r2] AS rs, a AS second, b AS first LIMIT 1 MATCH (first)-[rs*]->(second) RETURN first, second}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.129 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[r1]->()-[r2]->(b) WITH [r1, r2] AS rs, a AS second, b AS first LIMIT 1 MATCH (first)-[rs*]->(second) RETURN first, second 23:03:32.136 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').outE().as('r1').inV().outE().as('r2').inV().as('b').where(__.select('r1').where(neq('r2'))).select('r1', 'r2', 'a', 'b').project('rs', 'second', 'first').by(__.project(' GENERATED3', ' GENERATED4').by(__.select('r1')).by(__.select('r2')).select(values)).by(__.select('a')).by(__.select('b')).limit(1).as(' GENERATED5').select('rs').as('rs').select(' GENERATED5').select('second').as('second').select(' GENERATED5').select('first').as('first').is(neq(' cypher.null')).as(' cypher.path.start.GENERATED8').repeat(__.outE().as(' GENERATED7').where(__.select(' GENERATED7').where(eq('rs'))).inV()).emit().until(__.path().from(' cypher.path.start.GENERATED8').count(local).is(gte(21))).as(' GENERATED9').where(__.select(' GENERATED9').where(eq('second'))).select('first', 'second').project('first', 'second').by(__.select('first').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('second').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
first second
And no side effects 0.021

23:03:32.143 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.143 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:32.146 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.146 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.147 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:32.150 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.150 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.150 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:32.154 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:32.154 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.160 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.035
Given an empty graph 0.000

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

And having executed: 0.005
CREATE (:A)-[:T]->(:B)

23:03:32.166 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A)-[:T]->(:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.166 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A)-[:T]->(:B) 23:03:32.168 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as(' UNNAMED8').addV('B').as(' UNNAMED19').addE('T').from(' UNNAMED8').to(' UNNAMED19').barrier().limit(0)

When executing query: 0.007
MATCH (a1)-[r]->()
WITH r, a1
  LIMIT 1
OPTIONAL MATCH (a1)<-[r]-(b2)
RETURN a1, r, b2

23:03:32.192 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a1)-[r]->() WITH r, a1 LIMIT 1 OPTIONAL MATCH (a1)<-[r]-(b2) RETURN a1, r, b2}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.192 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a1)-[r]->() WITH r, a1 LIMIT 1 OPTIONAL MATCH (a1)<-[r]-(b2) RETURN a1, r, b2 23:03:32.198 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a1').outE().as('r').inV().select('r', 'a1').project('r', 'a1').by(__.select('r')).by(__.select('a1')).limit(1).as(' GENERATED2').select('r').as('r').select(' GENERATED2').select('a1').as('a1').choose(__.select('a1').is(neq(' cypher.null')).inE().as(' GENERATED8').where(__.select(' GENERATED8').where(eq('r'))).outV().as('b2'), __.select('a1').is(neq(' cypher.null')).inE().as(' GENERATED8').where(__.select(' GENERATED8').where(eq('r'))).outV().as('b2'), __.constant(' cypher.null').as('b2')).select('a1', 'r', 'b2').project('a1', 'r', 'b2').by(__.select('a1').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('r').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()), __.constant(' cypher.null'))).by(__.select('b2').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
a1 r b2
(:A) [:T] null
And no side effects 0.022

23:03:32.199 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.200 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:32.202 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.203 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.203 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:32.206 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.207 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.207 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:32.209 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:32.210 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.215 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.040
Given an empty graph 0.000

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

And having executed: 0.004
CREATE (:A)-[:T]->(:B)

23:03:32.223 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A)-[:T]->(:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.223 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A)-[:T]->(:B) 23:03:32.225 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as(' UNNAMED8').addV('B').as(' UNNAMED19').addE('T').from(' UNNAMED8').to(' UNNAMED19').barrier().limit(0)

When executing query: 0.008
MATCH (a1)-[r]->()
WITH r, a1
  LIMIT 1
OPTIONAL MATCH (a2)<-[r]-(b2)
WHERE a1 = a2
RETURN a1, r, b2, a2

23:03:32.254 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a1)-[r]->() WITH r, a1 LIMIT 1 OPTIONAL MATCH (a2)<-[r]-(b2) WHERE a1 = a2 RETURN a1, r, b2, a2}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.255 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a1)-[r]->() WITH r, a1 LIMIT 1 OPTIONAL MATCH (a2)<-[r]-(b2) WHERE a1 = a2 RETURN a1, r, b2, a2 23:03:32.262 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a1').outE().as('r').inV().select('r', 'a1').project('r', 'a1').by(__.select('r')).by(__.select('a1')).limit(1).as(' GENERATED2').select('r').as('r').select(' GENERATED2').select('a1').as('a1').choose(__.V().as('a2').inE().as(' GENERATED6').where(__.select(' GENERATED6').where(eq('r'))).outV().as('b2').where(__.select('a1').where(eq('a2'))), __.V().as('a2').inE().as(' GENERATED6').where(__.select(' GENERATED6').where(eq('r'))).outV().as('b2').where(__.select('a1').where(eq('a2'))), __.constant(' cypher.null').as('a2').as('b2')).select('a1', 'r', 'b2', 'a2').project('a1', 'r', 'b2', 'a2').by(__.select('a1').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('r').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()), __.constant(' cypher.null'))).by(__.select('b2').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('a2').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
a1 r b2 a2
(:A) [:T] null null
And no side effects 0.026

23:03:32.263 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.264 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:32.266 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.267 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.267 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:32.270 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.271 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.271 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:32.275 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:32.275 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.283 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.039
Given an empty graph 0.000

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

And having executed: 0.004
CREATE ({prop: 42})

23:03:32.293 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ({prop: 42})}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.293 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({prop: 42}) 23:03:32.295 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().property(single, 'prop', 42).barrier().limit(0)

When executing query: 0.006
MATCH (n)
WITH n.prop AS n2
RETURN n2.prop

23:03:32.326 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) WITH n.prop AS n2 RETURN n2.prop}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.326 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) WITH n.prop AS n2 RETURN n2.prop 23:03:32.330 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.choose(neq(' cypher.null'), __.choose(__.values('prop'), __.values('prop'), __.constant(' cypher.null')), __.constant(' cypher.null'))).project('n2.prop').by(__.project(' GENERATED2', ' GENERATED3').by(__.identity()).by(__.constant('prop')).select(values).map(cypherContainerIndex())) 23:03:32.331 [gremlin-server-worker-1] ERROR o.o.g.s.o.c.CypherOpProcessor - Error during traversal iteration java.lang.IllegalArgumentException: Invalid property access of java.lang.Long at org.opencypher.gremlin.traversal.CustomFunctions.lambda$cypherContainerIndex$8(CustomFunctions.java:209) 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.next(AbstractStep.java:128) at org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.next(AbstractStep.java:38) at org.apache.tinkerpop.gremlin.process.traversal.util.DefaultTraversal.next(DefaultTraversal.java:200) at org.apache.tinkerpop.gremlin.process.traversal.util.TraversalUtil.apply(TraversalUtil.java:43) at org.apache.tinkerpop.gremlin.process.traversal.util.TraversalUtil.applyNullable(TraversalUtil.java:75) at org.apache.tinkerpop.gremlin.process.traversal.step.map.ProjectStep.map(ProjectStep.java:55) at org.apache.tinkerpop.gremlin.process.traversal.step.map.ProjectStep.map(ProjectStep.java:40) 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.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:89) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.handleIterator(CypherOpProcessor.java:190) 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:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:159) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) at java.lang.Thread.run(Thread.java:748)

Then a TypeError should be raised at runtime: PropertyAccessOnNonMap 0.000
Then a TypeError should be raised at runtime: PropertyAccessOnNonMap 0.027

23:03:32.333 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.333 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:32.336 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.336 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.337 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:32.341 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.345 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.345 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:32.348 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:32.352 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.353 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.042
Given an empty graph 0.000

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

And having executed: 0.005
CREATE ({bar: 1}), ({bar: 3}), ({bar: 2})

23:03:32.361 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ({bar: 1}), ({bar: 3}), ({bar: 2})}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.362 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({bar: 1}), ({bar: 3}), ({bar: 2}) 23:03:32.364 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().property(single, 'bar', 1).addV().property(single, 'bar', 3).addV().property(single, 'bar', 2).barrier().limit(0)

When executing query: 0.007
MATCH (foo)
RETURN foo.bar AS x
  ORDER BY x DESC
  LIMIT 4

23:03:32.397 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (foo) RETURN foo.bar AS x ORDER BY x DESC LIMIT 4}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.397 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (foo) RETURN foo.bar AS x ORDER BY x DESC LIMIT 4 23:03:32.403 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.choose(neq(' cypher.null'), __.choose(__.values('bar'), __.values('bar'), __.constant(' cypher.null')), __.constant(' cypher.null'))).as(' FRESHID23').project(' FRESHID23').by(__.identity()).order().by(__.select(' FRESHID23'), decr).limit(4).select(' FRESHID23').as(' FRESHID23').project('x').by(__.identity())

Then the result should be, in order: 0.000
x
3
2
1
And no side effects 0.029

23:03:32.404 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.404 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:32.408 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.409 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.409 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:32.413 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.417 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.417 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:32.421 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:32.425 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.426 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.041
Given an empty graph 0.000

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

When executing query: 0.006
MATCH (a)
RETURN count(a) > 0

23:03:32.472 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a) RETURN count(a) > 0}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.473 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a) RETURN count(a) > 0 23:03:32.477 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().count().as(' AGGREGATION17').project('count(a) > 0').by(__.constant(0).as(' GENERATED2').select(' AGGREGATION17').choose(__.or(__.is(eq(' cypher.null')), __.select(' GENERATED2').is(eq(' cypher.null'))), __.constant(' cypher.null'), __.choose(__.where(gt(' GENERATED2')), __.constant(true), __.constant(false))))

Then the result should be: 0.000
count(a) > 0
false
And no side effects 0.035

23:03:32.478 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.479 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:32.481 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.485 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.485 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:32.489 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.493 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.494 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:32.498 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:32.502 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.508 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.017
Scenario Matching variable length pattern with property predicate
Steps
Given an empty graph 0.000

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

And having executed: 0.005
CREATE (a:Artist:A), (b:Artist:B), (c:Artist:C)
CREATE (a)-[:WORKED_WITH {year: 1987}]->(b),
       (b)-[:WORKED_WITH {year: 1988}]->(c)

23:03:32.515 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:Artist:A), (b:Artist:B), (c:Artist:C) CREATE (a)-[:WORKED_WITH {year: 1987}]->(b), (b)-[:WORKED_WITH {year: 1988}]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.515 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:Artist:A), (b:Artist:B), (c:Artist:C) CREATE (a)-[:WORKED_WITH {year: 1987}]->(b), (b)-[:WORKED_WITH {year: 1988}]->(c) 23:03:32.520 [gremlin-server-worker-1] WARN o.a.t.g.s.h.OpExecutorHandler - Multiple labels are not supported: Artist::A, Artist::B, Artist::C org.opencypher.gremlin.translation.exception.SyntaxException: Multiple labels are not supported: Artist::A, Artist::B, Artist::C at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at scala.Option.foreach(Option.scala:257) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:56) at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:733) at scala.collection.immutable.Map$Map2.foreach(Map.scala:137) at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:732) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:56) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:47) at org.opencypher.gremlin.translation.ir.TranslationWriter.write(TranslationWriter.scala) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.evalCypher(CypherOpProcessor.java:112) 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:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:159) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) at java.lang.Thread.run(Thread.java:748)

When executing query: 0.012
MATCH (a:Artist)-[:WORKED_WITH* {year: 1988}]->(b:Artist)
RETURN *

23:03:32.558 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a:Artist)-[:WORKED_WITH* {year: 1988}]->(b:Artist) RETURN *}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.559 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a:Artist)-[:WORKED_WITH* {year: 1988}]->(b:Artist) RETURN * 23:03:32.565 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').hasLabel('Artist').as(' cypher.path.start.GENERATED1').repeat(__.outE('WORKED_WITH').has('year', eq(1988)).inV()).emit().until(__.path().from(' cypher.path.start.GENERATED1').count(local).is(gte(21))).as('b').hasLabel('Artist').select('a', 'b').project('a', 'b').by(__.select('a').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('b').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "MatchAcceptance2": Scenario "Matching variable length pattern with property predicate" failed with message: 
Expected (in any order of rows):
| a | b |
| (:Artist:B) | (:Artist:C) |
Actual:
| a | b |

	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)
a b
(:Artist:B) (:Artist:C)
0.057
Given an empty graph 0.000

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

And having executed: 0.011
CREATE (a:Label {id: 0}), (b:Label {id: 1}), (c:Label {id: 2})
CREATE (a)-[:T]->(b),
       (b)-[:T]->(c)

23:03:32.572 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:Label {id: 0}), (b:Label {id: 1}), (c:Label {id: 2}) CREATE (a)-[:T]->(b), (b)-[:T]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.572 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:Label {id: 0}), (b:Label {id: 1}), (c:Label {id: 2}) CREATE (a)-[:T]->(b), (b)-[:T]->(c) 23:03:32.578 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('Label').as('a').property(single, 'id', 0).addV('Label').as('b').property(single, 'id', 1).addV('Label').as('c').property(single, 'id', 2).addE('T').from('a').to('b').addE('T').from('b').to('c').barrier().limit(0)

When executing query: 0.019
MATCH (a), (b)
WHERE a.id = 0
  AND (a)-[:T]->(b:Label)
  OR (a)-[:T*]->(b:MissingLabel)
RETURN DISTINCT b

23:03:32.606 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a), (b) WHERE a.id = 0 AND (a)-[:T]->(b:Label) OR (a)-[:T*]->(b:MissingLabel) RETURN DISTINCT b}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.606 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a), (b) WHERE a.id = 0 AND (a)-[:T]->(b:Label) OR (a)-[:T*]->(b:MissingLabel) RETURN DISTINCT b 23:03:32.617 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').V().as('b').where(__.or(__.and(__.project(' GENERATED1', ' GENERATED2').by(__.select('a')).by(__.constant('id')).select(values).map(cypherContainerIndex()).is(neq(' cypher.null')).is(eq(0)), __.select('a').outE('T').inV().as(' GENERATED5').where(__.select(' GENERATED5').where(eq('b'))).hasLabel('Label')), __.select('a').as(' cypher.path.start.GENERATED7').repeat(__.outE('T').inV()).emit().until(__.path().from(' cypher.path.start.GENERATED7').count(local).is(gte(21))).as(' GENERATED8').where(__.select(' GENERATED8').where(eq('b'))).hasLabel('MissingLabel'))).select('b').project('b').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).dedup()

Then the result should be: 0.000
b
(:Label {id: 1})
And no side effects 0.025

23:03:32.625 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:32.626 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.629 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.630 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.630 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:32.635 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.635 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.636 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:32.640 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:32.640 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.641 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.050
Given an empty graph 0.000

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

And having executed: 0.014
CREATE (a:Blue), (b:Red), (c:Green), (d:Yellow)
CREATE (a)-[:T]->(b),
       (b)-[:T]->(c),
       (b)-[:T]->(d)

23:03:32.653 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:Blue), (b:Red), (c:Green), (d:Yellow) CREATE (a)-[:T]->(b), (b)-[:T]->(c), (b)-[:T]->(d)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.653 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:Blue), (b:Red), (c:Green), (d:Yellow) CREATE (a)-[:T]->(b), (b)-[:T]->(c), (b)-[:T]->(d) 23:03:32.660 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('Blue').as('a').addV('Red').as('b').addV('Green').as('c').addV('Yellow').as('d').addE('T').from('a').to('b').addE('T').from('b').to('c').addE('T').from('b').to('d').barrier().limit(0)

When executing query: 0.005
MATCH (a:Blue)-[r*]->(b:Green)
RETURN count(r)

23:03:32.697 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a:Blue)-[r*]->(b:Green) RETURN count(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.697 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a:Blue)-[r*]->(b:Green) RETURN count(r) 23:03:32.701 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('Blue').as(' cypher.path.start.GENERATED1').repeat(__.outE().as('r').inV()).emit().until(__.path().from(' cypher.path.start.GENERATED1').count(local).is(gte(21))).hasLabel('Green').select('r').is(neq(' cypher.null')).count().project('count(r)').by(__.identity())

Then the result should be: 0.000
count(r)
1
And no side effects 0.030

23:03:32.703 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.703 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:32.705 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.706 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.706 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:32.710 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.710 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.711 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:32.714 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:32.714 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.723 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.053
Given an empty graph 0.000

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

And having executed: 0.008
CREATE (a:Movie), (b)
CREATE (b)-[:T]->(a)

23:03:32.734 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:Movie), (b) CREATE (b)-[:T]->(a)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.734 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:Movie), (b) CREATE (b)-[:T]->(a) 23:03:32.738 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('Movie').as('a').addV().as('b').addE('T').from('b').to('a').barrier().limit(0)

When executing query: 0.007
MATCH p = (n:Movie)--(m)
RETURN p
  LIMIT 1

23:03:32.777 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (n:Movie)--(m) RETURN p LIMIT 1 23:03:32.782 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').hasLabel('Movie').bothE().as(' UNNAMED20').aggregate(' cypher.path.edge.p').otherV().as('m').dedup('n', ' UNNAMED20', 'm').path().project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null'))).limit(1) 23:03:32.784 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = (n:Movie)--(m) RETURN p LIMIT 1}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}}

Then the result should be: 0.000
p
<(:Movie)<-[:T]-()>
And no side effects 0.036

23:03:32.784 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.785 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:32.789 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.790 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.790 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:32.795 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.796 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.796 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:32.801 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:32.802 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.810 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.037
Given an empty graph 0.000

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

And having executed: 0.005
CREATE ()

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

When executing query: 0.005
MATCH p = (a)
WITH p
RETURN p

23:03:32.864 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = (a) WITH p RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.864 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (a) WITH p RETURN p 23:03:32.868 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().path().project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
p
<()>
And no side effects 0.026

23:03:32.869 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.869 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:32.872 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.872 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.872 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:32.875 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.879 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.879 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:32.882 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:32.886 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.890 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.038
Given an empty graph 0.000

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

And having executed: 0.008
CREATE (a:A), (b:B), (c:C)
CREATE (b)-[:T]->(a),
       (c)-[:T]->(b)

23:03:32.897 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B), (c:C) CREATE (b)-[:T]->(a), (c)-[:T]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.897 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B), (c:C) CREATE (b)-[:T]->(a), (c)-[:T]->(b) 23:03:32.902 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addV('C').as('c').addE('T').from('b').to('a').addE('T').from('c').to('b').barrier().limit(0)

When executing query: 0.005
MATCH p = (n)-->(m)--(o)
RETURN p

23:03:32.927 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = (n)-->(m)--(o) RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.927 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (n)-->(m)--(o) RETURN p 23:03:32.931 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').outE().as(' UNNAMED14').aggregate(' cypher.path.edge.p').inV().as('m').bothE().as(' UNNAMED20').aggregate(' cypher.path.edge.p').otherV().as('o').dedup('n', ' UNNAMED14', 'm', ' UNNAMED20', 'o').path().as('p').where(__.select(' UNNAMED14').where(neq(' UNNAMED20'))).select('p').project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
p
<(:C)-[:T]->(:B)-[:T]->(:A)>
And no side effects 0.024

23:03:32.932 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.933 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:32.935 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.936 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.936 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:32.939 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:32.940 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.940 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:32.943 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:32.944 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.950 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.039
Given an empty graph 0.000

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

And having executed: 0.008
CREATE (a:A), (b:B), (c:C), (d:D)
CREATE (b)-[:T]->(a),
       (c)-[:T]->(b),
       (d)-[:T]->(c)

23:03:32.957 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B), (c:C), (d:D) CREATE (b)-[:T]->(a), (c)-[:T]->(b), (d)-[:T]->(c)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.958 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B), (c:C), (d:D) CREATE (b)-[:T]->(a), (c)-[:T]->(b), (d)-[:T]->(c) 23:03:32.962 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addV('C').as('c').addV('D').as('d').addE('T').from('b').to('a').addE('T').from('c').to('b').addE('T').from('d').to('c').barrier().limit(0)

When executing query: 0.008
MATCH path = (n)-->(m)--(o)--(p)
RETURN path

23:03:32.988 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH path = (n)-->(m)--(o)--(p) RETURN path}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.988 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH path = (n)-->(m)--(o)--(p) RETURN path 23:03:32.994 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').outE().as(' UNNAMED17').aggregate(' cypher.path.edge.path').inV().as('m').bothE().as(' UNNAMED23').aggregate(' cypher.path.edge.path').otherV().as('o').bothE().as(' UNNAMED28').aggregate(' cypher.path.edge.path').otherV().as('p').dedup('n', ' UNNAMED17', 'm', ' UNNAMED23', 'o', ' UNNAMED28', 'p').path().as('path').where(__.and(__.select(' UNNAMED23').where(neq(' UNNAMED28')), __.select(' UNNAMED17').where(neq(' UNNAMED28')), __.select(' UNNAMED17').where(neq(' UNNAMED23')))).select('path').project('path').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.path').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
path
<(:D)-[:T]->(:C)-[:T]->(:B)-[:T]->(:A)>
And no side effects 0.022

23:03:32.997 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:32.997 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:33.000 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.001 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.001 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:33.004 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.005 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.005 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:33.008 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:33.009 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.014 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.023
Scenario Named path with undirected fixed variable length pattern
Steps
Given an empty graph 0.000

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

And having executed: 0.011
CREATE (db1:Start), (db2:End), (mid), (other)
CREATE (mid)-[:CONNECTED_TO]->(db1),
       (mid)-[:CONNECTED_TO]->(db2),
       (mid)-[:CONNECTED_TO]->(db2),
       (mid)-[:CONNECTED_TO]->(other),
       (mid)-[:CONNECTED_TO]->(other)

23:03:33.020 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (db1:Start), (db2:End), (mid), (other) CREATE (mid)-[:CONNECTED_TO]->(db1), (mid)-[:CONNECTED_TO]->(db2), (mid)-[:CONNECTED_TO]->(db2), (mid)-[:CONNECTED_TO]->(other), (mid)-[:CONNECTED_TO]->(other)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.020 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (db1:Start), (db2:End), (mid), (other) CREATE (mid)-[:CONNECTED_TO]->(db1), (mid)-[:CONNECTED_TO]->(db2), (mid)-[:CONNECTED_TO]->(db2), (mid)-[:CONNECTED_TO]->(other), (mid)-[:CONNECTED_TO]->(other) 23:03:33.026 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('Start').as('db1').addV('End').as('db2').addV().as('mid').addV().as('other').addE('CONNECTED_TO').from('mid').to('db1').addE('CONNECTED_TO').from('mid').to('db2').addE('CONNECTED_TO').from('mid').to('db2').addE('CONNECTED_TO').from('mid').to('other').addE('CONNECTED_TO').from('mid').to('other').barrier().limit(0)

When executing query: 0.012
MATCH topRoute = (:Start)<-[:CONNECTED_TO]-()-[:CONNECTED_TO*3..3]-(:End)
RETURN topRoute

23:03:33.054 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH topRoute = (:Start)<-[:CONNECTED_TO]-()-[:CONNECTED_TO*3..3]-(:End) RETURN topRoute}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.054 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH topRoute = (:Start)<-[:CONNECTED_TO]-()-[:CONNECTED_TO*3..3]-(:End) RETURN topRoute 23:03:33.060 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' UNNAMED18').hasLabel('Start').as(' cypher.path.start.topRoute').inE('CONNECTED_TO').as(' UNNAMED26').aggregate(' cypher.path.edge.topRoute').outV().as(' UNNAMED44').as(' cypher.path.start.topRoute').times(3).repeat(__.bothE('CONNECTED_TO').as(' UNNAMED46').aggregate(' cypher.path.edge.topRoute').otherV()).simplePath().from(' cypher.path.start.topRoute').as(' UNNAMED68').hasLabel('End').dedup(' UNNAMED18', ' UNNAMED26', ' UNNAMED44', ' UNNAMED46', ' UNNAMED68').path().project('topRoute').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.topRoute').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "MatchAcceptance2": Scenario "Named path with undirected fixed variable length pattern" failed with message: 
Expected (in any order of rows):
| topRoute |
| <(:Start)<-[:CONNECTED_TO {}]-()-[:CONNECTED_TO {}]->()<-[:CONNECTED_TO {}]-()-[:CONNECTED_TO {}]->(:End)> |
| <(:Start)<-[:CONNECTED_TO {}]-()-[:CONNECTED_TO {}]->()<-[:CONNECTED_TO {}]-()-[:CONNECTED_TO {}]->(:End)> |
| <(:Start)<-[:CONNECTED_TO {}]-()-[:CONNECTED_TO {}]->()<-[:CONNECTED_TO {}]-()-[:CONNECTED_TO {}]->(:End)> |
| <(:Start)<-[:CONNECTED_TO {}]-()-[:CONNECTED_TO {}]->()<-[:CONNECTED_TO {}]-()-[:CONNECTED_TO {}]->(:End)> |
Actual:
| topRoute |

	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)
topRoute
<(:Start)<-[:CONNECTED_TO]-()-[:CONNECTED_TO]->()<-[:CONNECTED_TO]-()-[:CONNECTED_TO]->(:End)>
<(:Start)<-[:CONNECTED_TO]-()-[:CONNECTED_TO]->()<-[:CONNECTED_TO]-()-[:CONNECTED_TO]->(:End)>
<(:Start)<-[:CONNECTED_TO]-()-[:CONNECTED_TO]->()<-[:CONNECTED_TO]-()-[:CONNECTED_TO]->(:End)>
<(:Start)<-[:CONNECTED_TO]-()-[:CONNECTED_TO]->()<-[:CONNECTED_TO]-()-[:CONNECTED_TO]->(:End)>
0.032
Given an empty graph 0.000

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

And having executed: 0.004
CREATE ({prop: 1})

23:03:33.068 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ({prop: 1})}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.068 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({prop: 1}) 23:03:33.071 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().property(single, 'prop', 1).barrier().limit(0)

When executing query: 0.003
MATCH (a)
RETURN a.prop

23:03:33.095 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a) RETURN a.prop}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.096 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a) RETURN a.prop 23:03:33.098 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('a.prop').by(__.choose(neq(' cypher.null'), __.choose(__.values('prop'), __.values('prop'), __.constant(' cypher.null')), __.constant(' cypher.null')))

Then the result should be: 0.000
a.prop
1
And no side effects 0.024

23:03:33.099 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.099 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:33.103 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.103 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.103 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:33.107 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.111 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.111 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:33.114 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:33.117 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.118 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.030
Given an empty graph 0.000

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

And having executed: 0.005
CREATE ()-[:T {prop: 1}]->()

23:03:33.125 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T {prop: 1}]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.125 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T {prop: 1}]->() 23:03:33.127 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as(' UNNAMED8').addV().as(' UNNAMED27').addE('T').from(' UNNAMED8').to(' UNNAMED27').property('prop', 1).barrier().limit(0)

When executing query: 0.004
MATCH ()-[r]->()
RETURN r.prop

23:03:33.150 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN r.prop}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.150 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN r.prop 23:03:33.153 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('r.prop').by(__.choose(neq(' cypher.null'), __.choose(__.values('prop'), __.values('prop'), __.constant(' cypher.null')), __.constant(' cypher.null')))

Then the result should be: 0.000
r.prop
1
And no side effects 0.020

23:03:33.154 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.154 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:33.157 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.158 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.158 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:33.162 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.162 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.162 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:33.165 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:33.168 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.174 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.040
Given an empty graph 0.000

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

And having executed: 0.006
CREATE (a:A), (b:B)
CREATE (a)-[:T]->(b)

23:03:33.176 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B) CREATE (a)-[:T]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.176 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B) CREATE (a)-[:T]->(b) 23:03:33.179 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addE('T').from('a').to('b').barrier().limit(0)

When executing query: 0.009
MATCH (a)-[r]->()
RETURN a AS foo, r AS bar

23:03:33.211 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a)-[r]->() RETURN a AS foo, r AS bar}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.212 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[r]->() RETURN a AS foo, r AS bar 23:03:33.219 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').outE().as('r').inV().select('a', 'r').project('foo', 'bar').by(__.select('a').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('r').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap(true)).by(__.inV().id()).by(__.outV().id()), __.constant(' cypher.null')))

Then the result should be: 0.000
foo bar
(:A) [:T]
And no side effects 0.024

23:03:33.221 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.221 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:33.224 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.225 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.225 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:33.228 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.229 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.229 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:33.233 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:33.233 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.239 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.039
Given an empty graph 0.000

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

And having executed: 0.007
CREATE ({foo: 1})

23:03:33.247 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ({foo: 1})}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.249 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({foo: 1}) 23:03:33.251 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().property(single, 'foo', 1).barrier().limit(0)

When executing query: 0.003
MATCH (a)
RETURN a.bar

23:03:33.283 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a) RETURN a.bar}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.284 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a) RETURN a.bar 23:03:33.287 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('a.bar').by(__.choose(neq(' cypher.null'), __.choose(__.values('bar'), __.values('bar'), __.constant(' cypher.null')), __.constant(' cypher.null')))

Then the result should be: 0.000
a.bar
null
And no side effects 0.028

23:03:33.287 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.288 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:33.290 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.291 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.291 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:33.295 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.299 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.299 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:33.303 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:33.307 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.308 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.051
Given an empty graph 0.000

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

And having executed: 0.005
CREATE ()-[:T {foo: 1}]->()

23:03:33.317 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T {foo: 1}]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.318 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T {foo: 1}]->() 23:03:33.320 [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('foo', 1).barrier().limit(0)

When executing query: 0.006
MATCH ()-[r]->()
RETURN r.bar

23:03:33.345 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN r.bar}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.346 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN r.bar 23:03:33.350 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('r.bar').by(__.choose(neq(' cypher.null'), __.choose(__.values('bar'), __.values('bar'), __.constant(' cypher.null')), __.constant(' cypher.null')))

Then the result should be: 0.000
r.bar
null
And no side effects 0.039

23:03:33.353 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:33.355 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.359 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.360 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.360 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:33.366 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.366 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.366 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:33.372 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:33.377 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.388 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.051
Given an empty graph 0.000

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

And having executed: 0.010
CREATE ({name: 'Philip J. Fry', age: 2046, seasons: [1, 2, 3, 4, 5, 6, 7]})

23:03:33.393 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ({name: 'Philip J. Fry', age: 2046, seasons: [1, 2, 3, 4, 5, 6, 7]})}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.393 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({name: 'Philip J. Fry', age: 2046, seasons: [1, 2, 3, 4, 5, 6, 7]}) 23:03:33.398 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().property(single, 'name', 'Philip J. Fry').property(single, 'age', 2046).property(single, 'seasons', __.project(' GENERATED1', ' GENERATED2', ' GENERATED3', ' GENERATED4', ' GENERATED5', ' GENERATED6', ' GENERATED7').by(__.constant(1)).by(__.constant(2)).by(__.constant(3)).by(__.constant(4)).by(__.constant(5)).by(__.constant(6)).by(__.constant(7)).select(values)).barrier().limit(0)

When executing query: 0.007
MATCH (a)
RETURN a.name, a.age, a.seasons

23:03:33.463 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a) RETURN a.name, a.age, a.seasons}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.463 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a) RETURN a.name, a.age, a.seasons 23:03:33.468 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('a.name', 'a.age', 'a.seasons').by(__.choose(neq(' cypher.null'), __.choose(__.values('name'), __.values('name'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.choose(neq(' cypher.null'), __.choose(__.values('age'), __.values('age'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.choose(neq(' cypher.null'), __.choose(__.values('seasons'), __.values('seasons'), __.constant(' cypher.null')), __.constant(' cypher.null')))

Then the result should be: 0.000
a.name a.age a.seasons
'Philip J. Fry' 2046 [1, 2, 3, 4, 5, 6, 7]
And no side effects 0.033

23:03:33.470 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.470 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:33.474 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.475 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.475 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:33.480 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.485 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.485 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:33.489 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03: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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.495 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.036
Given an empty graph 0.000

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

And having executed: 0.005
CREATE ({prop: 1})

23:03:33.505 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ({prop: 1})}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.505 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({prop: 1}) 23:03:33.507 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().property(single, 'prop', 1).barrier().limit(0)

When executing query: 0.005
MATCH (a)
RETURN a.prop + 1 AS foo

23:03:33.538 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a) RETURN a.prop + 1 AS foo}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.538 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a) RETURN a.prop + 1 AS foo 23:03:33.542 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('foo').by(__.project(' GENERATED1', ' GENERATED2').by(__.choose(neq(' cypher.null'), __.choose(__.values('prop'), __.values('prop'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.constant(1)).select(values).map(cypherPlus()))

Then the result should be: 0.000
foo
2
And no side effects 0.025

23:03:33.543 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.544 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:33.547 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.547 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.548 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:33.551 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.554 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.555 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:33.558 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:33.562 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.563 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.034
Given an empty graph 0.000

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

And having executed: 0.005
CREATE ({prop1: [1, 2, 3], prop2: [4, 5]})

23:03:33.569 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ({prop1: [1, 2, 3], prop2: [4, 5]})}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.569 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({prop1: [1, 2, 3], prop2: [4, 5]}) 23:03:33.572 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().property(single, 'prop1', __.project(' GENERATED1', ' GENERATED2', ' GENERATED3').by(__.constant(1)).by(__.constant(2)).by(__.constant(3)).select(values)).property(single, 'prop2', __.project(' GENERATED4', ' GENERATED5').by(__.constant(4)).by(__.constant(5)).select(values)).barrier().limit(0)

When executing query: 0.004
MATCH (a)
RETURN a.prop2 + a.prop1 AS foo

23:03:33.598 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a) RETURN a.prop2 + a.prop1 AS foo}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.598 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a) RETURN a.prop2 + a.prop1 AS foo 23:03:33.602 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('foo').by(__.project(' GENERATED1', ' GENERATED2').by(__.choose(neq(' cypher.null'), __.choose(__.values('prop2'), __.values('prop2'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.choose(neq(' cypher.null'), __.choose(__.values('prop1'), __.values('prop1'), __.constant(' cypher.null')), __.constant(' cypher.null'))).select(values).map(cypherPlus()))

Then the result should be: 0.000
foo
[4, 5, 1, 2, 3]
And no side effects 0.023

23:03:33.603 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.603 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:33.607 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.607 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.607 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:33.611 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.614 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.615 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:33.617 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:33.620 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.621 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.013
Scenario Variable length relationship variables are lists of relationships
Steps
Given an empty graph 0.000

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

And having executed: 0.006
CREATE (a), (b), (c)
CREATE (a)-[:T]->(b)

23:03:33.628 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a), (b), (c) CREATE (a)-[:T]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.628 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a), (b), (c) CREATE (a)-[:T]->(b) 23:03:33.631 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').addV().as('b').addV().addE('T').from('a').to('b').barrier().limit(0)

When executing query: 0.007
MATCH ()-[r*0..1]-()
RETURN last(r) AS l

23:03:33.660 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r*0..1]-() RETURN last(r) AS l}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.660 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r*0..1]-() RETURN last(r) AS l 23:03:33.665 [gremlin-server-worker-1] WARN o.a.t.g.s.h.OpExecutorHandler - Unknown function 'last' org.opencypher.gremlin.translation.exception.SyntaxException: Unknown function 'last' at org.opencypher.gremlin.translation.walker.ProjectionWalker.org$opencypher$gremlin$translation$walker$ProjectionWalker$$aggregation(ProjectionWalker.scala:370) at org.opencypher.gremlin.translation.walker.ProjectionWalker$$anonfun$org$opencypher$gremlin$translation$walker$ProjectionWalker$$pivot$1.applyOrElse(ProjectionWalker.scala:260) at org.opencypher.gremlin.translation.walker.ProjectionWalker$$anonfun$org$opencypher$gremlin$translation$walker$ProjectionWalker$$pivot$1.applyOrElse(ProjectionWalker.scala:258) at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:36) at scala.util.Failure$$anonfun$recover$1.apply(Try.scala:216) at scala.util.Try$.apply(Try.scala:192) at scala.util.Failure.recover(Try.scala:216) at org.opencypher.gremlin.translation.walker.ProjectionWalker.org$opencypher$gremlin$translation$walker$ProjectionWalker$$pivot(ProjectionWalker.scala:258) at org.opencypher.gremlin.translation.walker.ProjectionWalker$$anonfun$returnSubTraversals$1.apply(ProjectionWalker.scala:107) at org.opencypher.gremlin.translation.walker.ProjectionWalker$$anonfun$returnSubTraversals$1.apply(ProjectionWalker.scala:104) at scala.collection.immutable.List.foreach(List.scala:392) at org.opencypher.gremlin.translation.walker.ProjectionWalker.returnSubTraversals(ProjectionWalker.scala:104) at org.opencypher.gremlin.translation.walker.ProjectionWalker.walk(ProjectionWalker.scala:75) at org.opencypher.gremlin.translation.walker.ProjectionWalker$.walk(ProjectionWalker.scala:42) at org.opencypher.gremlin.translation.walker.StatementWalker.org$opencypher$gremlin$translation$walker$StatementWalker$$walkClause(StatementWalker.scala:104) at org.opencypher.gremlin.translation.walker.StatementWalker$$anonfun$walkSingle$1.apply(StatementWalker.scala:81) at org.opencypher.gremlin.translation.walker.StatementWalker$$anonfun$walkSingle$1.apply(StatementWalker.scala:81) at scala.collection.immutable.List.foreach(List.scala:392) at org.opencypher.gremlin.translation.walker.StatementWalker.walkSingle(StatementWalker.scala:81) at org.opencypher.gremlin.translation.walker.StatementWalker.walk(StatementWalker.scala:42) at org.opencypher.gremlin.translation.walker.StatementWalker$.walk(StatementWalker.scala:29) at org.opencypher.gremlin.translation.CypherAst.translate(CypherAst.scala:80) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.evalCypher(CypherOpProcessor.java:104) 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:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:159) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) at java.lang.Thread.run(Thread.java:748)

Then the result should be: 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "MatchAcceptance2": Scenario "Variable length relationship variables are lists of relationships" failed with message: Expected: | l |
| [:T {}] |
| [:T {}] |
| null |
| null |
| null |, got error ExecutionFailed(SyntaxError,compile time,UnknownFunction,Some(org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Unknown function 'last'))
	at org.opencypher.tools.tck.api.Scenario$$anonfun$executeOnGraph$1.apply(Scenario.scala:95)
	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)
Caused by: org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Unknown function 'last'
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:246)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:197)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:123)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:67)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at org.apache.tinkerpop.gremlin.driver.handler.WebSocketClientHandler.channelRead0(WebSocketClientHandler.java:94)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921)
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135)
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131)
	... 1 more
l
[:T]
[:T]
null
null
null
0.042
Given an empty graph 0.000

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

And having executed: 0.004
CREATE (a:A), (b:B)

23:03:33.669 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.669 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B) 23:03:33.671 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').addV('B').barrier().limit(0)

When executing query: 0.007
MATCH (a:A)
OPTIONAL MATCH (a)-[:FOO]->(b:B)
OPTIONAL MATCH (b)<-[:BAR*]-(c:B)
RETURN a, b, c

23:03:33.698 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a:A) OPTIONAL MATCH (a)-[:FOO]->(b:B) OPTIONAL MATCH (b)<-[:BAR*]-(c:B) RETURN a, b, c}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.698 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a:A) OPTIONAL MATCH (a)-[:FOO]->(b:B) OPTIONAL MATCH (b)<-[:BAR*]-(c:B) RETURN a, b, c 23:03:33.703 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').hasLabel('A').choose(__.select('a').outE('FOO').inV().as('b').hasLabel('B'), __.select('a').outE('FOO').inV().as('b').hasLabel('B'), __.constant(' cypher.null').as('b')).choose(__.select('b').is(neq(' cypher.null')).as(' cypher.path.start.GENERATED6').repeat(__.inE('BAR').outV()).emit().until(__.path().from(' cypher.path.start.GENERATED6').count(local).is(gte(21))).as('c').hasLabel('B'), __.select('b').is(neq(' cypher.null')).as(' cypher.path.start.GENERATED6').repeat(__.inE('BAR').outV()).emit().until(__.path().from(' cypher.path.start.GENERATED6').count(local).is(gte(21))).as('c').hasLabel('B'), __.constant(' cypher.null').as('c')).select('a', 'b', 'c').project('a', 'b', 'c').by(__.select('a').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('b').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null'))).by(__.select('c').choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
a b c
(:A) null null
And no side effects 0.031

23:03:33.705 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.705 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:33.708 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.709 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.709 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:33.713 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.718 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.718 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:33.721 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:33.722 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.728 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.014
Scenario Projecting a list of nodes and relationships
Steps
Given an empty graph 0.000

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

And having executed: 0.006
CREATE (a:A), (b:B)
CREATE (a)-[:T]->(b)

23:03:33.737 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B) CREATE (a)-[:T]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.737 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B) CREATE (a)-[:T]->(b) 23:03:33.740 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addE('T').from('a').to('b').barrier().limit(0)

When executing query: 0.007
MATCH (n)-[r]->(m)
RETURN [n, r, m] AS r

23:03:33.772 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n)-[r]->(m) RETURN [n, r, m] AS r}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.772 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n)-[r]->(m) RETURN [n, r, m] AS r 23:03:33.776 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').outE().as('r').inV().as('m').select('n', 'r', 'm').project('r').by(__.project(' GENERATED2', ' GENERATED3', ' GENERATED4').by(__.select('n')).by(__.select('r')).by(__.select('m')).select(values))

Then the result should be: 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "MatchAcceptance2": Scenario "Projecting a list of nodes and relationships" failed with message: Expected: | r |
| [(:A), [:T {}], (:B)] |, got error ExecutionFailed(TypeError,runtime,InvalidArgumentType,Some(java.lang.IllegalArgumentException: Unable to convert result v[22092]))
	at org.opencypher.tools.tck.api.Scenario$$anonfun$executeOnGraph$1.apply(Scenario.scala:95)
	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)
Caused by: java.lang.IllegalArgumentException: Unable to convert result v[22092]
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$.toCypherValue(TckGremlinCypherValueConverter.scala:137)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$7.apply(TckGremlinCypherValueConverter.scala:151)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$7.apply(TckGremlinCypherValueConverter.scala:151)
	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
	at scala.collection.Iterator$class.foreach(Iterator.scala:891)
	at scala.collection.AbstractIterator.foreach(Iterator.scala:1334)
	at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
	at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
	at scala.collection.TraversableLike$class.map(TraversableLike.scala:234)
	at scala.collection.AbstractTraversable.map(Traversable.scala:104)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$.toCypherList(TckGremlinCypherValueConverter.scala:151)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$.toCypherValue(TckGremlinCypherValueConverter.scala:136)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4$$anonfun$apply$1.apply(TckGremlinCypherValueConverter.scala:87)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4$$anonfun$apply$1.apply(TckGremlinCypherValueConverter.scala:87)
	at scala.collection.MapLike$MappedValues$$anonfun$foreach$3.apply(MapLike.scala:245)
	at scala.collection.MapLike$MappedValues$$anonfun$foreach$3.apply(MapLike.scala:245)
	at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:733)
	at scala.collection.Iterator$class.foreach(Iterator.scala:891)
	at scala.collection.AbstractIterator.foreach(Iterator.scala:1334)
	at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
	at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
	at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:732)
	at scala.collection.MapLike$MappedValues.foreach(MapLike.scala:245)
	at scala.collection.TraversableOnce$class.toMap(TraversableOnce.scala:316)
	at scala.collection.AbstractTraversable.toMap(Traversable.scala:104)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4.apply(TckGremlinCypherValueConverter.scala:87)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4.apply(TckGremlinCypherValueConverter.scala:87)
	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
	at scala.collection.Iterator$class.foreach(Iterator.scala:891)
	at scala.collection.AbstractIterator.foreach(Iterator.scala:1334)
	at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
	at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
	at scala.collection.TraversableLike$class.map(TraversableLike.scala:234)
	at scala.collection.AbstractTraversable.map(Traversable.scala:104)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$.toCypherValueRecords(TckGremlinCypherValueConverter.scala:86)
	at org.opencypher.gremlin.tck.TinkerGraphServerEmbeddedGraph$.cypher(TckTest.scala:54)
	at org.opencypher.tools.tck.api.Graph$class.execute(Graph.scala:62)
	at org.opencypher.gremlin.tck.TinkerGraphServerEmbeddedGraph$.execute(TckTest.scala:33)
	at org.opencypher.tools.tck.api.Scenario$ScenarioExecutionContext.execute(Scenario.scala:168)
	at org.opencypher.tools.tck.api.Scenario$$anonfun$executeOnGraph$1.apply(Scenario.scala:66)
	... 82 more
r
[(:A), [:T], (:B)]
0.015
Scenario Projecting a map of nodes and relationships
Steps
Given an empty graph 0.000

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

And having executed: 0.010
CREATE (a:A), (b:B)
CREATE (a)-[:T]->(b)

23:03:33.784 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B) CREATE (a)-[:T]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.784 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B) CREATE (a)-[:T]->(b) 23:03:33.788 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addE('T').from('a').to('b').barrier().limit(0)

When executing query: 0.004
MATCH (n)-[r]->(m)
RETURN {node1: n, rel: r, node2: m} AS m

23:03:33.827 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n)-[r]->(m) RETURN {node1: n, rel: r, node2: m} AS m}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.827 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n)-[r]->(m) RETURN {node1: n, rel: r, node2: m} AS m 23:03:33.831 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').outE().as('r').inV().as('m').select('n', 'r', 'm').project('m').by(__.project('node1', 'rel', 'node2').by(__.select('n')).by(__.select('r')).by(__.select('m')))

Then the result should be: 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "MatchAcceptance2": Scenario "Projecting a map of nodes and relationships" failed with message: Expected: | m |
| {node1: (:A), rel: [:T {}], node2: (:B)} |, got error ExecutionFailed(TypeError,runtime,InvalidArgumentType,Some(java.lang.IllegalArgumentException: Unable to convert result v[22095]))
	at org.opencypher.tools.tck.api.Scenario$$anonfun$executeOnGraph$1.apply(Scenario.scala:95)
	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)
Caused by: java.lang.IllegalArgumentException: Unable to convert result v[22095]
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$.toCypherValue(TckGremlinCypherValueConverter.scala:137)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$6.apply(TckGremlinCypherValueConverter.scala:143)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$6.apply(TckGremlinCypherValueConverter.scala:143)
	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
	at scala.collection.MapLike$FilteredKeys$$anonfun$foreach$1.apply(MapLike.scala:231)
	at scala.collection.MapLike$FilteredKeys$$anonfun$foreach$1.apply(MapLike.scala:231)
	at scala.collection.Iterator$class.foreach(Iterator.scala:891)
	at scala.collection.AbstractIterator.foreach(Iterator.scala:1334)
	at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
	at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
	at scala.collection.MapLike$FilteredKeys.foreach(MapLike.scala:231)
	at scala.collection.TraversableLike$class.map(TraversableLike.scala:234)
	at scala.collection.AbstractTraversable.map(Traversable.scala:104)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$.toCypherPropertyMap(TckGremlinCypherValueConverter.scala:143)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$.toCypherValue(TckGremlinCypherValueConverter.scala:134)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4$$anonfun$apply$1.apply(TckGremlinCypherValueConverter.scala:87)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4$$anonfun$apply$1.apply(TckGremlinCypherValueConverter.scala:87)
	at scala.collection.MapLike$MappedValues$$anonfun$foreach$3.apply(MapLike.scala:245)
	at scala.collection.MapLike$MappedValues$$anonfun$foreach$3.apply(MapLike.scala:245)
	at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:733)
	at scala.collection.Iterator$class.foreach(Iterator.scala:891)
	at scala.collection.AbstractIterator.foreach(Iterator.scala:1334)
	at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
	at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
	at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:732)
	at scala.collection.MapLike$MappedValues.foreach(MapLike.scala:245)
	at scala.collection.TraversableOnce$class.toMap(TraversableOnce.scala:316)
	at scala.collection.AbstractTraversable.toMap(Traversable.scala:104)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4.apply(TckGremlinCypherValueConverter.scala:87)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4.apply(TckGremlinCypherValueConverter.scala:87)
	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
	at scala.collection.Iterator$class.foreach(Iterator.scala:891)
	at scala.collection.AbstractIterator.foreach(Iterator.scala:1334)
	at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
	at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
	at scala.collection.TraversableLike$class.map(TraversableLike.scala:234)
	at scala.collection.AbstractTraversable.map(Traversable.scala:104)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$.toCypherValueRecords(TckGremlinCypherValueConverter.scala:86)
	at org.opencypher.gremlin.tck.TinkerGraphServerEmbeddedGraph$.cypher(TckTest.scala:54)
	at org.opencypher.tools.tck.api.Graph$class.execute(Graph.scala:62)
	at org.opencypher.gremlin.tck.TinkerGraphServerEmbeddedGraph$.execute(TckTest.scala:33)
	at org.opencypher.tools.tck.api.Scenario$ScenarioExecutionContext.execute(Scenario.scala:168)
	at org.opencypher.tools.tck.api.Scenario$$anonfun$executeOnGraph$1.apply(Scenario.scala:66)
	... 82 more
m
{node1: (:A), rel: [:T], node2: (:B)}
0.047
Given an empty graph 0.000

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

And having executed: 0.010
CREATE (a {prop: 'a'}), (b {prop: 'b'})
CREATE (a)-[:T]->(b)

23:03:33.834 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {prop: 'a'}), (b {prop: 'b'}) CREATE (a)-[:T]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.835 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {prop: 'a'}), (b {prop: 'b'}) CREATE (a)-[:T]->(b) 23:03:33.840 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'prop', 'a').addV().as('b').property(single, 'prop', 'b').addE('T').from('a').to('b').barrier().limit(0)

When executing query: 0.006
MATCH p = ({prop: 'a'})-->({prop: 'b'})
RETURN p

23:03:33.876 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = ({prop: 'a'})-->({prop: 'b'}) RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.877 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = ({prop: 'a'})-->({prop: 'b'}) RETURN p 23:03:33.881 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().has('prop', eq('a')).outE().aggregate(' cypher.path.edge.p').inV().has('prop', eq('b')).path().project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
p
<({prop: 'a'})-[:T]->({prop: 'b'})>
And no side effects 0.030

23:03:33.883 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.883 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:33.887 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.888 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.888 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:33.892 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.893 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.893 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:33.897 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:33.902 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.904 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.054
Given an empty graph 0.000

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

And having executed: 0.012
CREATE (a {prop: 'a'}), (b {prop: 'b'})
CREATE (a)-[:T]->(b)

23:03:33.915 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {prop: 'a'}), (b {prop: 'b'}) CREATE (a)-[:T]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.915 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {prop: 'a'}), (b {prop: 'b'}) CREATE (a)-[:T]->(b) 23:03:33.920 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'prop', 'a').addV().as('b').property(single, 'prop', 'b').addE('T').from('a').to('b').barrier().limit(0)

When executing query: 0.011
MATCH p = ({prop: 'a'})<--({prop: 'b'})
RETURN p

23:03:33.956 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = ({prop: 'a'})<--({prop: 'b'}) RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.956 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = ({prop: 'a'})<--({prop: 'b'}) RETURN p 23:03:33.961 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().has('prop', eq('a')).inE().aggregate(' cypher.path.edge.p').outV().has('prop', eq('b')).path().project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
p
And no side effects 0.029

23:03:33.968 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.972 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:33.975 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.976 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.976 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:33.981 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:33.981 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.981 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:33.986 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:33.990 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.991 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.049
Given an empty graph 0.000

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

And having executed: 0.007
CREATE (a), (b)
CREATE (a)-[:T]->(b),
       (b)-[:T]->(a)

23:03:33.999 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a), (b) CREATE (a)-[:T]->(b), (b)-[:T]->(a)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:33.999 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a), (b) CREATE (a)-[:T]->(b), (b)-[:T]->(a) 23:03:34.002 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').addV().as('b').addE('T').from('a').to('b').addE('T').from('b').to('a').barrier().limit(0)

When executing query: 0.010
MATCH p = (n)-->(k)<--(n)
RETURN p

23:03:34.037 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = (n)-->(k)<--(n) RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.038 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (n)-->(k)<--(n) RETURN p 23:03:34.042 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').outE().as(' UNNAMED14').aggregate(' cypher.path.edge.p').inV().inE().as(' UNNAMED20').aggregate(' cypher.path.edge.p').outV().as(' GENERATED1').where(__.select(' GENERATED1').where(eq('n'))).path().as('p').where(__.select(' UNNAMED14').where(neq(' UNNAMED20'))).select('p').project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
p
And no side effects 0.031

23:03:34.048 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.048 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:34.051 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:34.052 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.052 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:34.055 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:34.056 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.056 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:34.061 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:34.065 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.071 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.044
Given an empty graph 0.000

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

And having executed: 0.008
CREATE (a:A), (b:B)
CREATE (a)-[:T1]->(b),
       (b)-[:T2]->(a)

23:03:34.080 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B) CREATE (a)-[:T1]->(b), (b)-[:T2]->(a)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.080 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B) CREATE (a)-[:T1]->(b), (b)-[:T2]->(a) 23:03:34.085 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addE('T1').from('a').to('b').addE('T2').from('b').to('a').barrier().limit(0)

When executing query: 0.006
MATCH p = (n)<-->(k)<--(n)
RETURN p

23:03:34.119 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = (n)<-->(k)<--(n) RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.119 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (n)<-->(k)<--(n) RETURN p 23:03:34.124 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').bothE().as(' UNNAMED14').aggregate(' cypher.path.edge.p').otherV().as('k').inE().as(' UNNAMED21').aggregate(' cypher.path.edge.p').outV().as(' GENERATED1').where(__.select(' GENERATED1').where(eq('n'))).dedup('n', ' UNNAMED14', 'k', ' UNNAMED21', 'n').path().as('p').where(__.select(' UNNAMED14').where(neq(' UNNAMED21'))).select('p').project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
p
<(:A)<-[:T2]-(:B)<-[:T1]-(:A)>
<(:B)<-[:T1]-(:A)<-[:T2]-(:B)>
And no side effects 0.028

23:03:34.126 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.126 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:34.129 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:34.130 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.130 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:34.134 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:34.134 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.134 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:34.137 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:34.138 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.147 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.044
Given an empty graph 0.000

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

And having executed: 0.008
CREATE (a:A), (b:B)
CREATE (a)-[:T1]->(b),
       (b)-[:T2]->(a)

23:03:34.155 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B) CREATE (a)-[:T1]->(b), (b)-[:T2]->(a)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.156 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B) CREATE (a)-[:T1]->(b), (b)-[:T2]->(a) 23:03:34.159 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addE('T1').from('a').to('b').addE('T2').from('b').to('a').barrier().limit(0)

When executing query: 0.008
MATCH p=(n)<-->(k)<-->(n)
RETURN p

23:03:34.190 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p=(n)<-->(k)<-->(n) RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.190 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p=(n)<-->(k)<-->(n) RETURN p 23:03:34.195 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').bothE().as(' UNNAMED12').aggregate(' cypher.path.edge.p').otherV().as('k').bothE().as(' UNNAMED19').aggregate(' cypher.path.edge.p').otherV().as(' GENERATED1').where(__.select(' GENERATED1').where(eq('n'))).dedup('n', ' UNNAMED12', 'k', ' UNNAMED19', 'n').path().as('p').where(__.select(' UNNAMED12').where(neq(' UNNAMED19'))).select('p').project('p').by(__.choose(neq(' cypher.null'), __.project(' cypher.relationship', ' cypher.element').by(__.select(' cypher.path.edge.p').unfold().project(' cypher.id', ' cypher.inv', ' cypher.outv').by(__.id()).by(__.inV().id()).by(__.outV().id()).fold()).by(__.unfold().is(neq(' cypher.start')).valueMap(true).fold()), __.constant(' cypher.null')))

Then the result should be: 0.000
p
<(:A)<-[:T2]-(:B)<-[:T1]-(:A)>
<(:A)-[:T1]->(:B)-[:T2]->(:A)>
<(:B)<-[:T1]-(:A)<-[:T2]-(:B)>
<(:B)-[:T2]->(:A)-[:T1]->(:B)>
And no side effects 0.027

23:03:34.199 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.199 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:34.203 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:34.204 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.204 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:34.208 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:34.208 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.208 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:34.212 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:34.212 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.219 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.014
Scenario Matching nodes with many labels
Steps
Given an empty graph 0.000

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

And having executed: 0.006
CREATE (a:A:B:C:D:E:F:G:H:I:J:K:L:M),
       (b:U:V:W:X:Y:Z)
CREATE (a)-[:T]->(b)

23:03:34.227 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A:B:C:D:E:F:G:H:I:J:K:L:M), (b:U:V:W:X:Y:Z) CREATE (a)-[:T]->(b)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.228 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A:B:C:D:E:F:G:H:I:J:K:L:M), (b:U:V:W:X:Y:Z) CREATE (a)-[:T]->(b) 23:03:34.232 [gremlin-server-worker-1] WARN o.a.t.g.s.h.OpExecutorHandler - Multiple labels are not supported: A::B::C::D::E::F::G::H::I::J::K::L::M, U::V::W::X::Y::Z org.opencypher.gremlin.translation.exception.SyntaxException: Multiple labels are not supported: A::B::C::D::E::F::G::H::I::J::K::L::M, U::V::W::X::Y::Z at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at scala.Option.foreach(Option.scala:257) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:56) at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:733) at scala.collection.immutable.Map$Map2.foreach(Map.scala:137) at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:732) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:56) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:47) at org.opencypher.gremlin.translation.ir.TranslationWriter.write(TranslationWriter.scala) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.evalCypher(CypherOpProcessor.java:112) 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:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:159) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) at java.lang.Thread.run(Thread.java:748)

When executing query: 0.007
MATCH (n:A:B:C:D:E:F:G:H:I:J:K:L:M)-[:T]->(m:Z:Y:X:W:V:U)
RETURN n, m

23:03:34.268 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n:A:B:C:D:E:F:G:H:I:J:K:L:M)-[:T]->(m:Z:Y:X:W:V:U) RETURN n, m}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.268 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n:A:B:C:D:E:F:G:H:I:J:K:L:M)-[:T]->(m:Z:Y:X:W:V:U) RETURN n, m 23:03:34.274 [gremlin-server-worker-1] WARN o.a.t.g.s.h.OpExecutorHandler - Multiple labels are not supported: G::B::E::D::L::M::C::F::J::I::H::K::A, U::Z::X::V::W::Y org.opencypher.gremlin.translation.exception.SyntaxException: Multiple labels are not supported: G::B::E::D::L::M::C::F::J::I::H::K::A, U::Z::X::V::W::Y at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3$$anonfun$apply$1.apply(TranslationWriter.scala:57) at scala.Option.foreach(Option.scala:257) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:57) at org.opencypher.gremlin.translation.ir.TranslationWriter$$anonfun$write$3.apply(TranslationWriter.scala:56) at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:733) at scala.collection.immutable.Map$Map2.foreach(Map.scala:137) at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:732) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:56) at org.opencypher.gremlin.translation.ir.TranslationWriter$.write(TranslationWriter.scala:47) at org.opencypher.gremlin.translation.ir.TranslationWriter.write(TranslationWriter.scala) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.evalCypher(CypherOpProcessor.java:112) 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:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:159) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) at java.lang.Thread.run(Thread.java:748)

Then the result should be: 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "MatchAcceptance2": Scenario "Matching nodes with many labels" failed with message: Expected: | n | m |
| (:E:J:F:A:M:I:G:L:B:C:H:K:D) | (:X:Y:U:V:W:Z) |, got error ExecutionFailed(UnknownError,runtime,Multiple labels are not supported: G::B::E::D::L::M::C::F::J::I::H::K::A, U::Z::X::V::W::Y,Some(org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Multiple labels are not supported: G::B::E::D::L::M::C::F::J::I::H::K::A, U::Z::X::V::W::Y))
	at org.opencypher.tools.tck.api.Scenario$$anonfun$executeOnGraph$1.apply(Scenario.scala:95)
	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)
Caused by: org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Multiple labels are not supported: G::B::E::D::L::M::C::F::J::I::H::K::A, U::Z::X::V::W::Y
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:246)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:197)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:123)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:67)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at org.apache.tinkerpop.gremlin.driver.handler.WebSocketClientHandler.channelRead0(WebSocketClientHandler.java:94)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921)
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135)
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131)
	... 1 more
n m
(:A:B:C:D:E:F:G:H:I:J:K:L:M) (:Z:Y:X:W:V:U)
0.031
Scenario Matching longer variable length paths
Steps
Given an empty graph 0.000

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

And having executed: 0.017
CREATE (a {prop: 'start'}), (b {prop: 'end'})
WITH *
UNWIND range(1, 20) AS i
CREATE (n {prop: i})
WITH [a] + collect(n) + [b] AS nodeList
UNWIND range(0, size(nodeList) - 2, 1) AS i
WITH nodeList[i] AS n1, nodeList[i+1] AS n2
CREATE (n1)-[:T]->(n2)

23:03:34.277 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a {prop: 'start'}), (b {prop: 'end'}) WITH * UNWIND range(1, 20) AS i CREATE (n {prop: i}) WITH [a] + collect(n) + [b] AS nodeList UNWIND range(0, size(nodeList) - 2, 1) AS i WITH nodeList[i] AS n1, nodeList[i+1] AS n2 CREATE (n1)-[:T]->(n2)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.277 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {prop: 'start'}), (b {prop: 'end'}) WITH * UNWIND range(1, 20) AS i CREATE (n {prop: i}) WITH [a] + collect(n) + [b] AS nodeList UNWIND range(0, size(nodeList) - 2, 1) AS i WITH nodeList[i] AS n1, nodeList[i+1] AS n2 CREATE (n1)-[:T]->(n2) 23:03:34.292 [gremlin-server-worker-1] WARN o.a.t.g.s.h.OpExecutorHandler - Vector(SignedDecimalIntegerLiteral(0), Subtract(FunctionInvocation(Namespace(List()),FunctionName(size),false,Vector(Variable(nodeList))),SignedDecimalIntegerLiteral(2)), SignedDecimalIntegerLiteral(1)) (of class scala.collection.immutable.Vector) scala.MatchError: Vector(SignedDecimalIntegerLiteral(0), Subtract(FunctionInvocation(Namespace(List()),FunctionName(size),false,Vector(Variable(nodeList))),SignedDecimalIntegerLiteral(2)), SignedDecimalIntegerLiteral(1)) (of class scala.collection.immutable.Vector) at org.opencypher.gremlin.translation.walker.ExpressionWalker.range(ExpressionWalker.scala:430) at org.opencypher.gremlin.translation.walker.ExpressionWalker.org$opencypher$gremlin$translation$walker$ExpressionWalker$$walkLocal(ExpressionWalker.scala:218) at org.opencypher.gremlin.translation.walker.ExpressionWalker.walk(ExpressionWalker.scala:59) at org.opencypher.gremlin.translation.walker.ExpressionWalker$.walk(ExpressionWalker.scala:40) at org.opencypher.gremlin.translation.walker.UnwindWalker.walkClause(UnwindWalker.scala:46) at org.opencypher.gremlin.translation.walker.UnwindWalker$.walkClause(UnwindWalker.scala:33) at org.opencypher.gremlin.translation.walker.StatementWalker.org$opencypher$gremlin$translation$walker$StatementWalker$$walkClause(StatementWalker.scala:94) at org.opencypher.gremlin.translation.walker.StatementWalker$$anonfun$walkSingle$1.apply(StatementWalker.scala:81) at org.opencypher.gremlin.translation.walker.StatementWalker$$anonfun$walkSingle$1.apply(StatementWalker.scala:81) at scala.collection.immutable.List.foreach(List.scala:392) at org.opencypher.gremlin.translation.walker.StatementWalker.walkSingle(StatementWalker.scala:81) at org.opencypher.gremlin.translation.walker.StatementWalker.walk(StatementWalker.scala:42) at org.opencypher.gremlin.translation.walker.StatementWalker$.walk(StatementWalker.scala:29) at org.opencypher.gremlin.translation.CypherAst.translate(CypherAst.scala:80) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.evalCypher(CypherOpProcessor.java:104) 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:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:159) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:312) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1304) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:921) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:135) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:581) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:498) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) at java.lang.Thread.run(Thread.java:748)

When executing query: 0.013
MATCH (n {prop: 'start'})-[:T*]->(m {prop: 'end'})
RETURN m

23:03:34.343 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n {prop: 'start'})-[:T*]->(m {prop: 'end'}) RETURN m}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.343 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n {prop: 'start'})-[:T*]->(m {prop: 'end'}) RETURN m 23:03:34.350 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().has('prop', eq('start')).as(' cypher.path.start.GENERATED1').repeat(__.outE('T').inV()).emit().until(__.path().from(' cypher.path.start.GENERATED1').count(local).is(gte(21))).as('m').has('prop', eq('end')).select('m').project('m').by(__.choose(neq(' cypher.null'), __.valueMap(true), __.constant(' cypher.null')))

Then the result should be: 0.000
org.opencypher.tools.tck.api.Scenario$ScenarioFailedException: Feature "MatchAcceptance2": Scenario "Matching longer variable length paths" failed with message: 
Expected (in any order of rows):
| m |
| ({prop: 'end'}) |
Actual:
| m |

	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)
m
({prop: 'end'})
0.057
Given an empty graph 0.000

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

And having executed: 0.015
CREATE (a:A), (b:B)
CREATE (a)-[:T1]->(b),
       (b)-[:T2]->(a)

23:03:34.359 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B) CREATE (a)-[:T1]->(b), (b)-[:T2]->(a)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.361 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B) CREATE (a)-[:T1]->(b), (b)-[:T2]->(a) 23:03:34.368 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').addV('B').as('b').addE('T1').from('a').to('b').addE('T2').from('b').to('a').barrier().limit(0)

When executing query: 0.011
MATCH (a)
MERGE (b)
WITH *
OPTIONAL MATCH (a)--(b)
RETURN count(*)

23:03:34.416 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a) MERGE (b) WITH * OPTIONAL MATCH (a)--(b) RETURN count(*)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.418 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a) MERGE (b) WITH * OPTIONAL MATCH (a)--(b) RETURN count(*) 23:03:34.426 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').choose(__.V().as('b'), __.V().as('b'), __.identity().addV().as('b')).select('a', 'b').project('a', 'b').by(__.select('a')).by(__.select('b')).as(' GENERATED1').select('a').as('a').select(' GENERATED1').select('b').as('b').choose(__.select('a').is(neq(' cypher.null')).bothE().as(' UNNAMED46').otherV().as(' GENERATED8').where(__.select(' GENERATED8').where(eq('b'))).dedup('a', ' UNNAMED46', 'b'), __.select('a').is(neq(' cypher.null')).bothE().as(' UNNAMED46').otherV().as(' GENERATED8').where(__.select(' GENERATED8').where(eq('b'))).dedup('a', ' UNNAMED46', 'b'), __.constant(' cypher.null').as(' UNNAMED46')).count().project('count(*)').by(__.identity())

Then the result should be: 0.000
count(*)
6
And no side effects 0.030

23:03:34.428 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.429 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:34.433 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:34.434 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.434 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:34.440 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:34.441 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.441 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:34.444 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:34.445 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.451 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.037
Given an empty graph 0.000

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

And having executed: 0.007
CREATE (a)
CREATE (a)-[:T]->(a)

23:03:34.461 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a) CREATE (a)-[:T]->(a) 23:03:34.462 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a) CREATE (a)-[:T]->(a)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.464 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').addE('T').from('a').to('a').barrier().limit(0)

When executing query: 0.004
MATCH ()-[r]-()
RETURN type(r) AS r

23:03:34.496 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]-() RETURN type(r) AS r}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.496 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]-() RETURN type(r) AS r 23:03:34.499 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' UNNAMED7').bothE().as('r').otherV().as(' UNNAMED14').dedup(' UNNAMED7', 'r', ' UNNAMED14').select('r').project('r').by(__.choose(neq(' cypher.null'), __.label().is(neq('vertex')), __.constant(' cypher.null')))

Then the result should be: 0.000
r
'T'
And no side effects 0.025

23:03:34.500 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.500 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 23:03:34.502 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:34.503 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.503 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 23:03:34.506 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.choose(neq(' cypher.null'), __.id(), __.constant(' cypher.null'))) 23:03:34.507 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.507 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 23:03:34.510 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 23:03:34.513 [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:37875, hostUri=ws://localhost:37875/gremlin}} 23:03:34.519 [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:37875, hostUri=ws://localhost:37875/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0