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

Feature Report

Steps Scenarios Features
Feature Passed Failed Skipped Pending Undefined Total Passed Failed Total Duration Status
MatchAcceptance2 462 11 0 0 0 473 87 11 98 1.692 Failed
Feature MatchAcceptance2
0.028
Given an empty graph 0.000

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

When executing query: 0.004
MATCH (n)
RETURN n

16:49:30.090 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN n}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.090 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN n 16:49:30.092 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('n').by(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.015
Given an empty graph 0.000

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

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

16:49:30.135 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN r}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.136 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN r 16:49:30.137 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('r').by(__.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id()))

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

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

0.014
Given an empty graph 0.000

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

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

16:49:30.151 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.152 [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) 16:49:30.153 [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.003
MATCH (:Root {name: 'x'})-->(i:TextNode)
WHERE i.id > 'te'
RETURN i

16:49:30.163 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.163 [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 16:49:30.166 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('Root').has('name', eq('x')).outE().inV().hasLabel('TextNode').has('id', gt('te')).project('i').by(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.020
Given an empty graph 0.000

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

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

16:49:30.175 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.175 [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) 16:49:30.177 [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.005
MATCH (:Root {name: 'x'})-->(i)
WHERE exists(i.id) OR i.id > 'te'
RETURN i

16:49:30.186 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.186 [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 16:49:30.191 [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(__.select('i').choose(neq(' cypher.null'), __.choose(__.values('id'), __.values('id'), __.constant(' cypher.null'))).choose(__.is(neq(' cypher.null')), __.constant(true), __.constant(false)).is(neq(' cypher.null')).is(eq(true)), __.select('i').values('id').is(gt('te')))).select('i').project('i').by(__.choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens')))

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

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

0.023
Given an empty graph 0.000

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

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

16:49:30.204 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.204 [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) 16:49:30.207 [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.004
MATCH p = ()-[*]->()
WITH count(*) AS count, p AS p
WITH nodes(p) AS nodes
RETURN *

16:49:30.225 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.225 [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 * 16:49:30.228 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.p').repeat(__.outE().as(' UNNAMED13').aggregate(' cypher.path.edge.p').inV()).emit().until(__.path().from(' cypher.path.start.p').count(local).is(gte(21))).path().from(' cypher.path.start.p').as('p').optional(__.select(all, ' UNNAMED13').as(' UNNAMED13')).select('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(__.map(__.unfold().is(cypherIsNode()).fold())).project('nodes').by(__.local(__.unfold().choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens')).fold()))

Then the result should be: 0.000
nodes
[({num: 1}), ({num: 2})]
[({num: 3}), ({num: 4})]
And no side effects 0.013

16:49:30.229 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.229 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:30.231 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:30.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.232 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:30.233 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:30.234 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.234 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:30.236 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:30.238 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.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:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.027
Given an empty graph 0.000

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

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

16:49:30.243 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.243 [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) 16:49:30.246 [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

16:49:30.262 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.262 [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 16:49:30.267 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('A')).emit().repeat(__.outE('CONTAINS').as(' UNNAMED22').inV()).until(__.path().from('a').count(local).is(gte(3))).where(__.path().from('a').count(local).is(between(0, 4))).simplePath().from('a').as('b').emit().repeat(__.outE('FRIEND').as(' UNNAMED44').inV()).until(__.path().from('b').count(local).is(gte(3))).where(__.path().from('b').count(local).is(between(0, 4))).simplePath().from('b').as('c').optional(__.select(all, ' UNNAMED22').as(' UNNAMED22')).optional(__.select(all, ' UNNAMED44').as(' UNNAMED44')).select('a', 'b', 'c').project('a', 'b', 'c').by(__.select('a').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('b').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('c').valueMap().with('~tinkerpop.valueMap.tokens'))

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.014

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

0.021
Given an empty graph 0.000

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

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

16:49:30.284 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.284 [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) 16:49:30.286 [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.002
MATCH (a {name: 'A'})-[*]->(x)
RETURN x

16:49:30.301 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.301 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a {name: 'A'})-[*]->(x) RETURN x 16:49:30.303 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('A')).repeat(__.outE().as(' UNNAMED22').inV()).emit().until(__.path().from('a').count(local).is(gte(21))).as('x').optional(__.select(all, ' UNNAMED22').as(' UNNAMED22')).select('x').project('x').by(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.024
Given an empty graph 0.000

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

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

16:49:30.317 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.317 [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) 16:49:30.319 [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.004
MATCH p = ({name: 'A'})-[:KNOWS*..2]->()
RETURN p

16:49:30.332 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.332 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = ({name: 'A'})-[:KNOWS*..2]->() RETURN p 16:49:30.334 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.p').has('name', eq('A')).repeat(__.outE('KNOWS').as(' UNNAMED24').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().from(' cypher.path.start.p').as('p').optional(__.select(all, ' UNNAMED24').as(' UNNAMED24')).select('p').project('p').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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.015

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

0.022
Given an empty graph 0.000

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

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

16:49:30.353 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.353 [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) 16:49:30.356 [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.003
MATCH p = ({name: 'A'})-[:KNOWS*..]->()
RETURN p

16:49:30.371 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.371 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = ({name: 'A'})-[:KNOWS*..]->() RETURN p 16:49:30.373 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.p').has('name', eq('A')).repeat(__.outE('KNOWS').as(' UNNAMED24').aggregate(' cypher.path.edge.p').inV()).emit().until(__.path().from(' cypher.path.start.p').count(local).is(gte(21))).path().from(' cypher.path.start.p').as('p').optional(__.select(all, ' UNNAMED24').as(' UNNAMED24')).select('p').project('p').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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.010

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

0.017
Given an empty graph 0.000

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

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

16:49:30.386 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.386 [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) 16:49:30.388 [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.003
MATCH (a {name: 'A'}), (c {name: 'C'})
MATCH (a)-->(b)
RETURN a, b, c

16:49:30.402 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.403 [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 16:49:30.406 [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').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('b').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('c').valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.018
Given an empty graph 0.000

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

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

16:49:30.417 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.417 [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) 16:49:30.419 [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.003
MATCH (a {name: 'A'}), (b {name: 'B'})
MATCH (a)-->(x)<-->(b)
RETURN x

16:49:30.431 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.432 [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 16:49:30.434 [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(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.027
Given an empty graph 0.000

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

And having executed: 0.010
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)

16:49:30.446 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.446 [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) 16:49:30.451 [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.006
MATCH (a {name: 'A'}), (b {name: 'B'}), (c {name: 'C'})
MATCH (a)-->(x), (b)-->(x), (c)-->(x)
RETURN x

16:49:30.469 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.469 [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 16:49:30.474 [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(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.035
Given an empty graph 0.000

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

And having executed: 0.017
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)

16:49:30.487 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.487 [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) 16:49:30.499 [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.006
MATCH (a {name: 'a'}), (b {name: 'b'}), (c {name: 'c'})
MATCH (a)-->(x), (b)-->(x), (c)-->(x)
RETURN x

16:49:30.517 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.517 [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 16:49:30.522 [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(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.019
Given an empty graph 0.000

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

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

16:49:30.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.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) 16:49:30.537 [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.003
MATCH (a {name: 'A'})
OPTIONAL MATCH (a)-[:KNOWS]->()-[:KNOWS]->(foo)
RETURN foo

16:49:30.550 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.551 [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 16:49:30.554 [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().with('~tinkerpop.valueMap.tokens')))

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

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

0.019
Given an empty graph 0.000

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

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

16:49:30.566 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.566 [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) 16:49:30.567 [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.005
MATCH (a {name: 'A'}), (x)
WHERE x.name IN ['B', 'C']
OPTIONAL MATCH p = (a)-->(x)
RETURN x, p

16:49:30.579 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.580 [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 16:49:30.583 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('A')).V().as('x').has('name', within('B', 'C')).choose(__.V().as(' cypher.match.start.p').as(' GENERATED3').where(__.select(' GENERATED3').where(eq('a'))).outE().aggregate(' cypher.path.edge.p').inV().as(' GENERATED4').where(__.select(' GENERATED4').where(eq('x'))).path().from(' cypher.match.start.p').as('p'), __.V().as(' cypher.match.start.p').as(' GENERATED3').where(__.select(' GENERATED3').where(eq('a'))).outE().aggregate(' cypher.path.edge.p').inV().as(' GENERATED4').where(__.select(' GENERATED4').where(eq('x'))).path().from(' cypher.match.start.p').as('p'), __.constant(' cypher.null').as('p')).select('x', 'p').project('x', 'p').by(__.select('x').choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens'))).by(__.select('p').choose(neq(' cypher.null'), __.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold())))

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

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

0.021
Given an empty graph 0.000

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

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

16:49:30.597 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.597 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {name: 'A'}), (b {name: 'B'}) CREATE (a)-[:X]->(b) 16:49:30.599 [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.004
MATCH (a {name: 'A'})
OPTIONAL MATCH p = (a)-->(b)-[*]->(c)
RETURN p

16:49:30.616 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.616 [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 16:49:30.619 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('A')).choose(__.V().as(' cypher.match.start.p').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().from(' cypher.match.start.p').as('p'), __.V().as(' cypher.match.start.p').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().from(' cypher.match.start.p').as('p'), __.constant(' cypher.null').as('p')).select('p').project('p').by(__.choose(neq(' cypher.null'), __.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold())))

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

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

0.023
Given an empty graph 0.000

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

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

16:49:30.633 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.633 [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) 16:49:30.635 [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.007
MATCH (a {name: 'A'}), (x)
WHERE x.name IN ['B', 'C']
OPTIONAL MATCH p = (a)-[r*]->(x)
RETURN r, x, p

16:49:30.649 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.649 [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 16:49:30.654 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').has('name', eq('A')).V().as('x').has('name', within('B', 'C')).choose(__.V().as(' cypher.match.start.p').as(' GENERATED3').where(__.select(' GENERATED3').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(' GENERATED4').where(__.select(' GENERATED4').where(eq('x'))).path().from(' cypher.match.start.p').as('p').optional(__.select(all, 'r').as('r')), __.V().as(' cypher.match.start.p').as(' GENERATED3').where(__.select(' GENERATED3').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(' GENERATED4').where(__.select(' GENERATED4').where(eq('x'))).path().from(' cypher.match.start.p').as('p').optional(__.select(all, 'r').as('r')), __.constant(' cypher.null').as('r').as('p')).select('r', 'x', 'p').project('r', 'x', 'p').by(__.select('r').choose(neq(' cypher.null'), __.local(__.unfold().choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id())).fold()))).by(__.select('x').choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens'))).by(__.select('p').choose(neq(' cypher.null'), __.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold())))

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.011

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

0.017
Given an empty graph 0.000

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

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

16:49:30.669 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.669 [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) 16:49:30.671 [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.003
MATCH (a:A)
MATCH (a)-[r*2]->()
RETURN r

16:49:30.685 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.685 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a:A) MATCH (a)-[r*2]->() RETURN r 16:49:30.687 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().hasLabel('A').as(' cypher.path.start.GENERATED2').times(2).repeat(__.outE().as('r').inV()).simplePath().from(' cypher.path.start.GENERATED2').optional(__.select(all, 'r').as('r')).select('r').project('r').by(__.local(__.unfold().choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id())).fold()))

Then the result should be (ignoring element order for lists): 0.000
r
[[:X], [:Y]]
And no side effects 0.009

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

0.014
Given an empty graph 0.000

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

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

16:49:30.698 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.698 [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) 16:49:30.700 [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.003
MATCH (a:A), (other:B)
OPTIONAL MATCH (a)-[r]->(other)
WITH other WHERE r IS NULL
RETURN other

16:49:30.709 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.710 [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 16:49:30.712 [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('other').project('other').by(__.identity()).where(__.select('r').is(eq(' cypher.null'))).select('other').as('other').project('other').by(__.choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens')))

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

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

0.013
Given an empty graph 0.000

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

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

16:49:30.722 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.722 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a), (b {name: 'Mark'}) CREATE (a)-[:T]->(b) 16:49:30.723 [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.002
MATCH (n)-->(x0)
OPTIONAL MATCH (x0)-->(x1)
WHERE x1.foo = 'bar'
RETURN x0.name

16:49:30.733 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.733 [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 16:49:30.735 [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'))))

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

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

0.012
Given an empty graph 0.000

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

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

16:49:30.744 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.744 [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) 16:49:30.746 [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.002
MATCH (a)-->(b)
WHERE b:B
OPTIONAL MATCH (a)-->(c)
WHERE c:C
RETURN a.name

16:49:30.755 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.755 [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 16:49:30.757 [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'))))

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

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

0.011
Given an empty graph 0.000

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

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

16:49:30.765 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.765 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A {id: 0})-[:ADMIN]->(:B {id: 1}) 16:49:30.766 [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.002
MATCH (a)-[:ADMIN]-(b)
WHERE a:A
RETURN a.id, b.id

16:49:30.774 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.774 [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 16:49:30.776 [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(__.values('id'), __.values('id'), __.constant(' cypher.null'))).by(__.select('b').choose(neq(' cypher.null'), __.choose(__.values('id'), __.values('id'), __.constant(' cypher.null'))))

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

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

0.012
Given an empty graph 0.000

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

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

16:49:30.784 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A), (:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.784 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A), (:B) 16:49:30.785 [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.001
MATCH (n)
RETURN n

16:49:30.801 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN n}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.801 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN n 16:49:30.802 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('n').by(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

16:49:30.802 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.802 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:30.803 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49: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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.804 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:30.805 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:30.806 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.806 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:30.807 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:30.808 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.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:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.013
Given an empty graph 0.000

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

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

16:49:30.812 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A), (:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.813 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A), (:B) 16:49:30.813 [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.002
MATCH (a), (b)
WHERE a <> b
RETURN a, b

16:49:30.824 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.824 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a), (b) WHERE a <> b RETURN a, b 16:49:30.825 [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').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('b').valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.020
Given an empty graph 0.000

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

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

16:49:30.836 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.836 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a), (b), (c) CREATE (a)-[:T]->(b), (b)-[:T]->(c) 16:49:30.838 [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.004
MATCH (a)-->(b), (b)-->(b)
RETURN b

16:49:30.851 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.851 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-->(b), (b)-->(b) RETURN b 16:49:30.853 [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(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

16:49:30.856 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.856 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:30.857 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:30.858 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.858 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:30.859 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49: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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49: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 16:49:30.861 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:30.862 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.865 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.017
Given an empty graph 0.000

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

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

16:49:30.869 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A), (:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.869 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A), (:B) 16:49:30.870 [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 (a:A), (b:B)
OPTIONAL MATCH (a)-[r*]-(b)
WHERE r IS NULL
  AND a <> b
RETURN b

16:49:30.883 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.883 [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 16:49:30.885 [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')))).optional(__.select(all, 'r').as('r')), __.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')))).optional(__.select(all, 'r').as('r')), __.constant(' cypher.null').as('r')).select('b').project('b').by(__.choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens')))

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

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

0.014
Given an empty graph 0.000

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

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

16:49:30.899 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.899 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B) CREATE (a)-[:T]->(b) 16:49:30.900 [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.001
MATCH (a)-[:T|:T]->(b)
RETURN b

16:49:30.912 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.912 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[:T|:T]->(b) RETURN b 16:49:30.914 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().outE('T').inV().project('b').by(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.016
Given an empty graph 0.000

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

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

16:49:30.925 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.925 [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) 16:49:30.927 [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.003
MATCH (a:A)-->(n)-->(m)
RETURN n.x, count(*)
  ORDER BY n.x
  LIMIT 1000

16:49:30.938 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.938 [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 16:49:30.941 [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(__.values('x'), __.values('x'), __.constant(' cypher.null'))).by(__.fold().project('n.x', 'count(*)').by(__.unfold().choose(neq(' cypher.null'), __.choose(__.values('x'), __.values('x'), __.constant(' cypher.null')))).by(__.unfold().count())).unfold().select(values).order().by(__.select('n.x'), asc).limit(1000)

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

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

0.014
Given an empty graph 0.000

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

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

16:49:30.950 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ({foo: 'bar'})}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.950 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({foo: 'bar'}) 16:49:30.951 [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.001
MATCH (n)
WHERE n.foo = 'bar'
RETURN n

16:49:30.964 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.964 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) WHERE n.foo = 'bar' RETURN n 16:49:30.965 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().has('foo', eq('bar')).project('n').by(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

16:49:30.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.966 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:30.966 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:30.967 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.967 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:30.968 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:30.970 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.970 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:30.971 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:30.972 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.973 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.014
Given an empty graph 0.000

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

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

16:49:30.977 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.977 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A)-[:T]->(b:B) 16:49:30.978 [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.001
MATCH p = (b)<--(a)
RETURN p

16:49:30.989 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:30.989 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (b)<--(a) RETURN p 16:49:30.991 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('b').inE().aggregate(' cypher.path.edge.p').outV().path().from('b').project('p').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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

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

0.012
Given an empty graph 0.000

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

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

16:49:31.015 [Test worker] DEBUG o.a.t.g.driver.Client - OPTIONAL MATCH (n) RETURN n}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.016 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: OPTIONAL MATCH (n) RETURN n 16:49:31.017 [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().with('~tinkerpop.valueMap.tokens')))

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

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

0.014
Given an empty graph 0.000

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

And having executed: 0.001
CREATE ()

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

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

16:49:31.041 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.041 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) OPTIONAL MATCH (n)-[:NOT_EXIST]->(x) RETURN n, x 16:49:31.043 [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().with('~tinkerpop.valueMap.tokens'))).by(__.select('x').choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens')))

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

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

0.014
Given an empty graph 0.000

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

And having executed: 0.001
CREATE ()

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

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

16:49:31.066 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.066 [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) 16:49:31.068 [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')).by(__.fold().project('n', 'collect(x)').by(__.unfold().select('n')).by(__.unfold().select('x').is(neq(' cypher.null')).fold())).unfold().select(values).project('n', 'collect(x)').by(__.select('n').choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens'))).by(__.select('collect(x)').choose(neq(' cypher.null'), __.local(__.unfold().choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens')).fold())))

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

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

0.021
Given an empty graph 0.000

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

And having executed: 0.001
CREATE (:A)

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

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

16:49:31.092 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.092 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)<--()<--(b)-->()-->(c) WHERE a:A RETURN c 16:49:31.095 [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(' UNNAMED21').where(neq(' UNNAMED26')), __.select(' UNNAMED10').where(neq(' UNNAMED21')), __.select(' UNNAMED10').where(neq(' UNNAMED26')), __.select(' UNNAMED15').where(neq(' UNNAMED21')), __.select(' UNNAMED15').where(neq(' UNNAMED26')), __.select(' UNNAMED10').where(neq(' UNNAMED15')))).select('c').project('c').by(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.015
Given an empty graph 0.000

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

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

16:49:31.112 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.112 [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) 16:49:31.113 [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.001
MATCH (a)-->(b:Foo)
RETURN b

16:49:31.123 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.124 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-->(b:Foo) RETURN b 16:49:31.125 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().outE().inV().hasLabel('Foo').project('b').by(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.015
Given an empty graph 0.000

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

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

16:49:31.136 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.136 [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) 16:49:31.138 [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.002
MATCH (:A)-[r]->(:B)
RETURN r

16:49:31.150 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.150 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (:A)-[r]->(:B) RETURN r 16:49:31.152 [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(__.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id()))

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

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

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

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

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

16:49:31.161 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.162 [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) 16:49:31.163 [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:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) at io.netty.handler.codec.http.websocketx.Utf8FrameValidator.channelRead(Utf8FrameValidator.java:77) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:204) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) at java.lang.Thread.run(Thread.java:748)

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

16:49:31.175 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.175 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a:A:B:C) RETURN a 16:49:31.176 [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:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) at io.netty.handler.codec.http.websocketx.Utf8FrameValidator.channelRead(Utf8FrameValidator.java:77) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:204) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) at java.lang.Thread.run(Thread.java:748)

Then 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:259)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:198)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:124)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:68)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at org.apache.tinkerpop.gremlin.driver.handler.WebSocketClientHandler.channelRead0(WebSocketClientHandler.java:89)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
	... 1 more
a
(:A:B:C)
0.015
Given an empty graph 0.000

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

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

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

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

16:49:31.193 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN (n:Foo)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.193 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN (n:Foo) 16:49:31.194 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('(n:Foo)').by(__.choose(__.hasLabel('Foo'), __.constant(true), __.constant(false)))

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

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

0.019
Given an empty graph 0.000

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

And having executed: 0.006
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)

16:49:31.207 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.207 [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) 16:49:31.209 [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.003
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

16:49:31.222 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.222 [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 16:49:31.225 [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'))))

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

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

0.013
Given an empty graph 0.000

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

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

16:49:31.234 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.235 [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) 16:49:31.237 [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.002
MATCH (n:Person)-->()
WHERE n.name = 'Bob'
RETURN n

16:49:31.247 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.247 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n:Person)-->() WHERE n.name = 'Bob' RETURN n 16:49:31.249 [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(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.015
Given an empty graph 0.000

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

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

16:49:31.257 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.257 [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) 16:49:31.259 [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.002
MATCH (a)-->(b)
MATCH (c)-->(d)
RETURN a, b, c, d

16:49:31.270 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.270 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-->(b) MATCH (c)-->(d) RETURN a, b, c, d 16:49:31.272 [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').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('b').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('c').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('d').valueMap().with('~tinkerpop.valueMap.tokens'))

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.009

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

0.018
Given an empty graph 0.000

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

And having executed: 0.005
CREATE (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)

16:49:31.283 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.283 [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) 16:49:31.286 [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.004
MATCH (a)--(b)--(c)--(d)--(a), (b)--(d)
WHERE a.id = 1
  AND c.id = 2
RETURN d

16:49:31.296 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.296 [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 16:49:31.300 [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(' UNNAMED15').where(neq(' UNNAMED20')), __.select(' UNNAMED15').where(neq(' UNNAMED35')), __.select(' UNNAMED15').where(neq(' UNNAMED25')), __.select(' UNNAMED10').where(neq(' UNNAMED20')), __.select(' UNNAMED10').where(neq(' UNNAMED25')), __.select(' UNNAMED20').where(neq(' UNNAMED25')), __.select(' UNNAMED10').where(neq(' UNNAMED35')), __.select(' UNNAMED10').where(neq(' UNNAMED15')), __.select(' UNNAMED20').where(neq(' UNNAMED35')), __.select(' UNNAMED25').where(neq(' UNNAMED35')))).select('d').project('d').by(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.018
Given an empty graph 0.000

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

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

16:49:31.309 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.309 [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) 16:49:31.311 [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.002
MATCH (a)-[:A]->()-[:B]->(a)
RETURN a.name

16:49:31.324 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.324 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[:A]->()-[:B]->(a) RETURN a.name 16:49:31.325 [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(__.values('name'), __.values('name'), __.constant(' cypher.null')))

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

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

0.018
Given an empty graph 0.000

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

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

16:49:31.338 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.339 [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) 16:49:31.341 [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.003
MATCH (a)-[:A]->(b), (b)-[:B]->(a)
RETURN a.name

16:49:31.355 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.355 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[:A]->(b), (b)-[:B]->(a) RETURN a.name 16:49:31.357 [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(__.values('name'), __.values('name'), __.constant(' cypher.null')))

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

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

0.013
Given an empty graph 0.000

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

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

16:49:31.370 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.370 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T]->() 16:49:31.371 [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.002
MATCH (a)-[r*1..1]->(b)
RETURN r

16:49:31.381 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.381 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[r*1..1]->(b) RETURN r 16:49:31.383 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').times(1).repeat(__.outE().as('r').inV()).simplePath().from('a').optional(__.select(all, 'r').as('r')).select('r').project('r').by(__.local(__.unfold().choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id())).fold()))

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

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

0.019
Given an empty graph 0.000

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

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

16:49:31.410 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.411 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: OPTIONAL MATCH (a) WITH a MATCH (a)-->(b) RETURN b 16:49:31.412 [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().with('~tinkerpop.valueMap.tokens')))

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

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

0.016
Given an empty graph 0.000

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

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

16:49:31.430 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.430 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T]->() 16:49:31.431 [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
OPTIONAL MATCH (a:Label)
WITH a
MATCH (a)-->(b)
RETURN b

16:49:31.442 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.442 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: OPTIONAL MATCH (a:Label) WITH a MATCH (a)-->(b) RETURN b 16:49:31.444 [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().with('~tinkerpop.valueMap.tokens')))

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

16:49:31.445 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.445 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:31.447 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49: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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.447 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:31.448 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:31.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.449 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:31.450 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:31.451 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.453 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.015
Given an empty graph 0.000

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

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

16:49:31.469 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.469 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: OPTIONAL MATCH (a) WITH a OPTIONAL MATCH (a)-->(b) RETURN b 16:49:31.470 [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().with('~tinkerpop.valueMap.tokens')))

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

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

0.013
Given an empty graph 0.000

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

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

16:49:31.500 [Test worker] DEBUG o.a.t.g.driver.Client - OPTIONAL MATCH (a) RETURN a}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.500 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: OPTIONAL MATCH (a) RETURN a 16:49:31.502 [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().with('~tinkerpop.valueMap.tokens')))

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

16:49:31.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.503 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:31.504 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:31.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.505 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:31.506 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:31.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.507 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:31.509 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:31.510 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.512 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.013
Given an empty graph 0.000

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

And having executed: 0.001
CREATE ()

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

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

16:49:31.527 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = (a) RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.527 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (a) RETURN p 16:49:31.528 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').path().from('a').project('p').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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

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

0.017
Given an empty graph 0.000

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

And having executed: 0.001
CREATE ()

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

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

16:49:31.554 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH p = ()-[*0..]->() RETURN p}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.554 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = ()-[*0..]->() RETURN p 16:49:31.555 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.p').emit().repeat(__.outE().as(' UNNAMED13').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().from(' cypher.path.start.p').as('p').optional(__.select(all, ' UNNAMED13').as(' UNNAMED13')).select('p').project('p').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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

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

0.014
Given an empty graph 0.000

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

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

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

16:49:31.581 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.581 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN n.prop AS n, count(n) AS count 16:49:31.583 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().group().by(__.choose(__.values('prop'), __.values('prop'), __.constant(' cypher.null'))).by(__.fold().project('n', 'count').by(__.unfold().choose(neq(' cypher.null'), __.choose(__.values('prop'), __.values('prop'), __.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.010

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

0.016
Given an empty graph 0.000

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

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

16:49:31.595 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T1]->(), ()-[:T2]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.595 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T1]->(), ()-[:T2]->() 16:49:31.596 [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.003
MATCH ()-[r1]->()
WITH r1 AS r2
MATCH ()-[r2]->()
RETURN r2 AS rel

16:49:31.612 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.612 [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 16:49:31.615 [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(__.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id()))

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

16:49:31.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.616 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:31.617 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:31.618 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.618 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:31.619 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:31.619 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.619 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:31.620 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:31.621 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.624 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.015
Given an empty graph 0.000

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

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

16:49:31.627 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T1]->(), ()-[:T2]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.627 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T1]->(), ()-[:T2]->() 16:49:31.628 [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.002
MATCH ()-[r1]->()
WITH r1 AS r2, count(*) AS c
  ORDER BY c
MATCH ()-[r2]->()
RETURN r2 AS rel

16:49:31.639 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.639 [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 16:49:31.641 [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).order().by(__.select('c'), asc).as(' GENERATED2').select('r2').as('r2').select(' GENERATED2').select('c').as('c').V().outE().as(' GENERATED3').where(__.select(' GENERATED3').where(eq('r2'))).inV().select('r2').project('rel').by(__.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id()))

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

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

0.017
Given an empty graph 0.000

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

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

16:49:31.652 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.652 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T1 {id: 0}]->(), ()-[:T2 {id: 1}]->() 16:49:31.654 [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.004
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

16:49:31.663 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.663 [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 16:49:31.666 [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).order().by(__.select('c'), asc).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').outE().as(' GENERATED4').where(__.select(' GENERATED4').where(eq('r'))).inV().as(' GENERATED6').where(__.select(' GENERATED6').where(eq('b'))).select('r').project('rel').by(__.identity()).order().by(__.select('rel').choose(neq(' cypher.null'), __.choose(__.values('id'), __.values('id'), __.constant(' cypher.null'))), asc).project('rel').by(__.select('rel').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id())))

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

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

0.017
Given an empty graph 0.000

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

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

16:49:31.679 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A)-[:T]->(:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.679 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A)-[:T]->(:B) 16:49:31.680 [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.003
MATCH ()-[r]->()
WITH r
  LIMIT 1
OPTIONAL MATCH (a2)-[r]->(b2)
RETURN a2, r, b2

16:49:31.692 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.692 [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 16:49:31.695 [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(' GENERATED4').where(__.select(' GENERATED4').where(eq('r'))).inV().as('b2'), __.V().as('a2').outE().as(' GENERATED4').where(__.select(' GENERATED4').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().with('~tinkerpop.valueMap.tokens'))).by(__.select('r').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id()))).by(__.select('b2').choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens')))

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

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

0.016
Given an empty graph 0.000

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

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

16:49:31.709 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A)-[:T]->(:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.709 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A)-[:T]->(:B) 16:49:31.710 [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.003
MATCH (a1)-[r]->()
WITH r, a1
  LIMIT 1
OPTIONAL MATCH (a1)-[r]->(b2)
RETURN a1, r, b2

16:49:31.725 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.725 [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 16:49:31.728 [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(' GENERATED6').where(__.select(' GENERATED6').where(eq('r'))).inV().as('b2'), __.select('a1').is(neq(' cypher.null')).outE().as(' GENERATED6').where(__.select(' GENERATED6').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().with('~tinkerpop.valueMap.tokens'))).by(__.select('r').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id()))).by(__.select('b2').choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens')))

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

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

0.016
Given an empty graph 0.000

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

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

16:49:31.739 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.739 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T]->() 16:49:31.740 [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.004
MATCH (a1)-[r]->()
WITH r, a1
  LIMIT 1
MATCH (a1:X)-[r]->(b2)
RETURN a1, r, b2

16:49:31.752 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.752 [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 16:49:31.755 [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').is(neq(' cypher.null')).outE().as(' GENERATED4').where(__.select(' GENERATED4').where(eq('r'))).inV().as('b2').select('a1', 'r', 'b2').project('a1', 'r', 'b2').by(__.select('a1').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('r').project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id())).by(__.select('b2').valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.005
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

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

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

16:49:31.768 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:X:Y)-[:T]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.768 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:X:Y)-[:T]->() 16:49:31.769 [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:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) at io.netty.handler.codec.http.websocketx.Utf8FrameValidator.channelRead(Utf8FrameValidator.java:77) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:204) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) at java.lang.Thread.run(Thread.java:748)

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

16:49:31.782 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.782 [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 16:49:31.785 [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:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) at io.netty.handler.codec.http.websocketx.Utf8FrameValidator.channelRead(Utf8FrameValidator.java:77) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:204) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) at java.lang.Thread.run(Thread.java:748)

Then 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:259)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:198)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:124)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:68)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at org.apache.tinkerpop.gremlin.driver.handler.WebSocketClientHandler.channelRead0(WebSocketClientHandler.java:89)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
	... 1 more
a1 r b2
(:X:Y) [:T] ()
0.019
Given an empty graph 0.000

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

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

16:49:31.786 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.787 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T]->() 16:49:31.787 [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.005
MATCH (a1)-[r:T]->()
WITH r, a1
  LIMIT 1
MATCH (a1)-[r:Y]->(b2)
RETURN a1, r, b2

16:49:31.801 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.801 [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 16:49:31.804 [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(' GENERATED4').where(__.select(' GENERATED4').where(eq('r'))).inV().as('b2').select('a1', 'r', 'b2').project('a1', 'r', 'b2').by(__.select('a1').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('r').project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id())).by(__.select('b2').valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.020
Given an empty graph 0.000

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

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

16:49:31.819 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A)-[:T]->(:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.819 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A)-[:T]->(:B) 16:49:31.820 [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.005
MATCH (a1)-[r:T]->() WITH r, a1
LIMIT 1
MATCH (a1)-[r:T]->(b2)
RETURN a1, r, b2

16:49:31.833 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.833 [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 16:49:31.837 [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(' GENERATED4').where(__.select(' GENERATED4').where(eq('r'))).inV().as('b2').select('a1', 'r', 'b2').project('a1', 'r', 'b2').by(__.select('a1').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('r').project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id())).by(__.select('b2').valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

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

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

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

16:49:31.852 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.852 [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) 16:49:31.854 [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.005
MATCH ()-[r1]->()-[r2]->()
WITH [r1, r2] AS rs
  LIMIT 1
MATCH (first)-[rs*]->(second)
RETURN first, second

16:49:31.868 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.868 [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 16:49:31.871 [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').repeat(__.outE().as(' GENERATED6').where(__.select(' GENERATED6').where(eq('rs'))).inV()).emit().until(__.path().from('first').count(local).is(gte(21))).as('second').optional(__.select(all, 'rs').as('rs')).select('first', 'second').project('first', 'second').by(__.select('first').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('second').valueMap().with('~tinkerpop.valueMap.tokens'))

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.010
Scenario Matching relationships into a list and matching variable length using the list, with bound nodes
Steps
Given an empty graph 0.000

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

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

16:49:31.874 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.875 [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) 16:49:31.876 [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.006
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

16:49:31.889 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.890 [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 16:49:31.893 [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'))).optional(__.select(all, 'rs').as('rs')).select('first', 'second').project('first', 'second').by(__.select('first').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('second').valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

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

16:49:31.897 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.897 [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) 16:49:31.899 [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.009
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

16:49:31.912 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.912 [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 16:49:31.916 [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'))).optional(__.select(all, 'rs').as('rs')).select('first', 'second').project('first', 'second').by(__.select('first').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('second').valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.026
Given an empty graph 0.000

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

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

16:49:31.936 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A)-[:T]->(:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.936 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A)-[:T]->(:B) 16:49:31.937 [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.011
MATCH (a1)-[r]->()
WITH r, a1
  LIMIT 1
OPTIONAL MATCH (a1)<-[r]-(b2)
RETURN a1, r, b2

16:49:31.953 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.953 [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 16:49:31.956 [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(' GENERATED6').where(__.select(' GENERATED6').where(eq('r'))).outV().as('b2'), __.select('a1').is(neq(' cypher.null')).inE().as(' GENERATED6').where(__.select(' GENERATED6').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().with('~tinkerpop.valueMap.tokens'))).by(__.select('r').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id()))).by(__.select('b2').choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens')))

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

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

0.019
Given an empty graph 0.000

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

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

16:49:31.978 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:A)-[:T]->(:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.978 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:A)-[:T]->(:B) 16:49:31.979 [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.003
MATCH (a1)-[r]->()
WITH r, a1
  LIMIT 1
OPTIONAL MATCH (a2)<-[r]-(b2)
WHERE a1 = a2
RETURN a1, r, b2, a2

16:49:31.992 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:31.992 [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 16:49:31.995 [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(' GENERATED4').where(__.select(' GENERATED4').where(eq('r'))).outV().as('b2').where(__.select('a1').where(eq('a2'))), __.V().as('a2').inE().as(' GENERATED4').where(__.select(' GENERATED4').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().with('~tinkerpop.valueMap.tokens'))).by(__.select('r').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id()))).by(__.select('b2').choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens'))).by(__.select('a2').choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens')))

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

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

0.015
Given an empty graph 0.000

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

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

16:49:32.010 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ({prop: 42})}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.010 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({prop: 42}) 16:49:32.011 [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.002
MATCH (n)
WITH n.prop AS n2
RETURN n2.prop

16:49:32.023 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.023 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) WITH n.prop AS n2 RETURN n2.prop 16:49:32.024 [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')))).project('n2.prop').by(__.project(' GENERATED2', ' GENERATED3').by(__.identity()).by(__.constant('prop')).select(values).map(cypherContainerIndex())) 16:49:32.025 [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$9(CustomFunctions.java:212) 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:96) at org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor.handleIterator(AbstractOpProcessor.java:74) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.handleIterator(CypherOpProcessor.java:191) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.lambda$evalCypher$0(CypherOpProcessor.java:128) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.inTransaction(CypherOpProcessor.java:136) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.evalCypher(CypherOpProcessor.java:128) at org.apache.tinkerpop.gremlin.server.handler.OpExecutorHandler.channelRead0(OpExecutorHandler.java:68) at org.apache.tinkerpop.gremlin.server.handler.OpExecutorHandler.channelRead0(OpExecutorHandler.java:43) at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) at io.netty.handler.codec.http.websocketx.Utf8FrameValidator.channelRead(Utf8FrameValidator.java:77) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:204) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) at java.lang.Thread.run(Thread.java:748)

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

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

0.016
Given an empty graph 0.000

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

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

16:49:32.036 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.037 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({bar: 1}), ({bar: 3}), ({bar: 2}) 16:49:32.038 [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.002
MATCH (foo)
RETURN foo.bar AS x
  ORDER BY x DESC
  LIMIT 4

16:49:32.050 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.050 [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 16:49:32.052 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('x').by(__.choose(__.values('bar'), __.values('bar'), __.constant(' cypher.null'))).order().by(__.select('x'), desc).limit(4)

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

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

0.014
Given an empty graph 0.000

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

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

16:49:32.077 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.077 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a) RETURN count(a) > 0 16:49:32.079 [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.012

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

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

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

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

16:49:32.092 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.092 [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) 16:49:32.094 [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:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) at io.netty.handler.codec.http.websocketx.Utf8FrameValidator.channelRead(Utf8FrameValidator.java:77) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:204) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) at java.lang.Thread.run(Thread.java:748)

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

16:49:32.112 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.112 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a:Artist)-[:WORKED_WITH* {year: 1988}]->(b:Artist) RETURN * 16:49:32.115 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').hasLabel('Artist').repeat(__.outE('WORKED_WITH').as(' UNNAMED17').has('year', eq(1988)).inV()).emit().until(__.path().from('a').count(local).is(gte(21))).as('b').hasLabel('Artist').optional(__.select(all, ' UNNAMED17').as(' UNNAMED17')).select('a', 'b').project('a', 'b').by(__.select('a').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('b').valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

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

16:49:32.119 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.119 [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) 16:49:32.120 [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.005
MATCH (a), (b)
WHERE a.id = 0
  AND (a)-[:T]->(b:Label)
  OR (a)-[:T*]->(b:MissingLabel)
RETURN DISTINCT b

16:49:32.130 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.130 [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 16:49:32.134 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').V().as('b').where(__.or(__.and(__.select('a').values('id').is(eq(0)), __.select('a').outE('T').inV().as(' GENERATED4').where(__.select(' GENERATED4').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(__.identity()).dedup().project('b').by(__.select('b').valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

0.026
Given an empty graph 0.000

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

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

16:49:32.148 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.148 [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) 16:49:32.151 [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)

16:49:32.171 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.171 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a:Blue)-[r*]->(b:Green) RETURN count(r) 16:49:32.175 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').hasLabel('Blue').repeat(__.outE().as('r').inV()).emit().until(__.path().from('a').count(local).is(gte(21))).hasLabel('Green').optional(__.select(all, 'r').as('r')).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.015

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

0.016
Given an empty graph 0.000

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

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

16:49:32.192 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.192 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:Movie), (b) CREATE (b)-[:T]->(a) 16:49:32.195 [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.002
MATCH p = (n:Movie)--(m)
RETURN p
  LIMIT 1

16:49:32.211 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.211 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (n:Movie)--(m) RETURN p LIMIT 1 16:49:32.213 [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().from('n').as('p').project('p').by(__.identity()).limit(1).project('p').by(__.select('p').is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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

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

0.014
Given an empty graph 0.000

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

And having executed: 0.001
CREATE ()

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

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

16:49:32.236 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.236 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (a) WITH p RETURN p 16:49:32.238 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').path().from('a').project('p').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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

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

0.019
Given an empty graph 0.000

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

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

16:49:32.250 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.250 [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) 16:49:32.252 [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.002
MATCH p = (n)-->(m)--(o)
RETURN p

16:49:32.265 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.266 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (n)-->(m)--(o) RETURN p 16:49:32.267 [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().from('n').as('p').where(__.select(' UNNAMED14').where(neq(' UNNAMED20'))).select('p').project('p').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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

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

0.018
Given an empty graph 0.000

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

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

16:49:32.281 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.281 [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) 16:49:32.283 [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.003
MATCH path = (n)-->(m)--(o)--(p)
RETURN path

16:49:32.295 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.295 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH path = (n)-->(m)--(o)--(p) RETURN path 16:49:32.298 [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().from('n').as('path').where(__.and(__.select(' UNNAMED23').where(neq(' UNNAMED28')), __.select(' UNNAMED17').where(neq(' UNNAMED28')), __.select(' UNNAMED17').where(neq(' UNNAMED23')))).select('path').project('path').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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

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

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

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

And having executed: 0.005
CREATE (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)

16:49:32.310 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.310 [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) 16:49:32.313 [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.009
MATCH topRoute = (:Start)<-[:CONNECTED_TO]-()-[:CONNECTED_TO*3..3]-(:End)
RETURN topRoute

16:49:32.326 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.326 [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 16:49:32.331 [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().from(' UNNAMED18').project('topRoute').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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

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

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

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

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

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

16:49:32.364 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.364 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:32.366 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:32.367 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.367 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:32.369 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:32.372 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.372 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:32.374 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:32.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.378 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.014
Given an empty graph 0.000

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

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

16:49:32.384 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T {prop: 1}]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.384 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T {prop: 1}]->() 16:49:32.386 [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.001
MATCH ()-[r]->()
RETURN r.prop

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

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

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

0.015
Given an empty graph 0.000

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

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

16:49:32.413 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.413 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B) CREATE (a)-[:T]->(b) 16:49:32.414 [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.002
MATCH (a)-[r]->()
RETURN a AS foo, r AS bar

16:49:32.427 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.428 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a)-[r]->() RETURN a AS foo, r AS bar 16:49:32.429 [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').valueMap().with('~tinkerpop.valueMap.tokens')).by(__.select('r').project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id()))

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

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

0.015
Given an empty graph 0.000

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

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

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

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

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

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

0.013
Given an empty graph 0.000

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

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

16:49:32.468 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ()-[:T {foo: 1}]->()}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.468 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ()-[:T {foo: 1}]->() 16:49:32.469 [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.001
MATCH ()-[r]->()
RETURN r.bar

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

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

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

0.015
Given an empty graph 0.000

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

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

16:49:32.491 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.491 [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]}) 16:49:32.492 [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.002
MATCH (a)
RETURN a.name, a.age, a.seasons

16:49:32.506 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.506 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a) RETURN a.name, a.age, a.seasons 16:49:32.507 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('a.name', 'a.age', 'a.seasons').by(__.choose(__.values('name'), __.values('name'), __.constant(' cypher.null'))).by(__.choose(neq(' cypher.null'), __.choose(__.values('age'), __.values('age'), __.constant(' cypher.null')))).by(__.choose(neq(' cypher.null'), __.choose(__.values('seasons'), __.values('seasons'), __.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.009

16:49:32.508 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.508 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:32.509 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:32.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.510 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:32.511 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:32.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.512 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:32.513 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:32.515 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.515 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.012
Given an empty graph 0.000

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

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

16:49:32.518 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ({prop: 1})}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.518 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({prop: 1}) 16:49:32.519 [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.001
MATCH (a)
RETURN a.prop + 1 AS foo

16:49:32.529 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.529 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a) RETURN a.prop + 1 AS foo 16:49:32.530 [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')))).by(__.constant(1)).select(values).map(cypherPlus()))

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

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

0.014
Given an empty graph 0.000

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

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

16:49:32.540 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.540 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({prop1: [1, 2, 3], prop2: [4, 5]}) 16:49:32.541 [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.002
MATCH (a)
RETURN a.prop2 + a.prop1 AS foo

16:49:32.552 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.552 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a) RETURN a.prop2 + a.prop1 AS foo 16:49:32.554 [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')))).by(__.choose(neq(' cypher.null'), __.choose(__.values('prop1'), __.values('prop1'), __.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.009

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

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

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

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

16:49:32.565 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.565 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a), (b), (c) CREATE (a)-[:T]->(b) 16:49:32.566 [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.004
MATCH ()-[r*0..1]-()
RETURN last(r) AS l

16:49:32.577 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.577 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r*0..1]-() RETURN last(r) AS l 16:49:32.580 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').emit().repeat(__.bothE().as('r').otherV()).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(' UNNAMED19').dedup(' cypher.path.start.GENERATED1', 'r', ' UNNAMED19').optional(__.select(all, 'r').as('r')).select('r').project('l').by(__.choose(__.tail(local, 1), __.tail(local, 1), __.constant(' cypher.null'))).project('l').by(__.select('l').choose(neq(' cypher.null'), __.project(' cypher.element', ' cypher.inv', ' cypher.outv').by(__.valueMap().with('~tinkerpop.valueMap.tokens')).by(__.inV().id()).by(__.outV().id()))) 16:49:32.581 [gremlin-server-worker-1] ERROR o.o.g.s.o.c.CypherOpProcessor - Error during traversal iteration java.lang.IllegalArgumentException: Neither the sideEffects, map, nor path has a r-key: DedupGlobalStep([r, cypher.path.start.GENERATED1, UNNAMED19]) at org.apache.tinkerpop.gremlin.process.traversal.step.Scoping.getScopeValue(Scoping.java:124) at org.apache.tinkerpop.gremlin.process.traversal.step.filter.DedupGlobalStep.lambda$filter$0(DedupGlobalStep.java:77) at java.lang.Iterable.forEach(Iterable.java:75) at java.util.Collections$UnmodifiableCollection.forEach(Collections.java:1080) at org.apache.tinkerpop.gremlin.process.traversal.step.filter.DedupGlobalStep.filter(DedupGlobalStep.java:77) at org.apache.tinkerpop.gremlin.process.traversal.step.filter.FilterStep.processNextStart(FilterStep.java:38) at org.apache.tinkerpop.gremlin.process.traversal.step.filter.DedupGlobalStep.processNextStart(DedupGlobalStep.java:105) 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.OptionalStep.processNextStart(OptionalStep.java:51) 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.map.SelectOneStep.processNextStart(SelectOneStep.java:131) 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.step.util.ExpandableStepIterator.next(ExpandableStepIterator.java:50) at org.apache.tinkerpop.gremlin.process.traversal.step.map.MapStep.processNextStart(MapStep.java:36) at org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.hasNext(AbstractStep.java:143) at org.apache.tinkerpop.gremlin.process.traversal.util.DefaultTraversal.hasNext(DefaultTraversal.java:192) at org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor.handleIterator(AbstractOpProcessor.java:96) at org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor.handleIterator(AbstractOpProcessor.java:74) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.handleIterator(CypherOpProcessor.java:191) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.lambda$evalCypher$0(CypherOpProcessor.java:128) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.inTransaction(CypherOpProcessor.java:136) at org.opencypher.gremlin.server.op.cypher.CypherOpProcessor.evalCypher(CypherOpProcessor.java:128) at org.apache.tinkerpop.gremlin.server.handler.OpExecutorHandler.channelRead0(OpExecutorHandler.java:68) at org.apache.tinkerpop.gremlin.server.handler.OpExecutorHandler.channelRead0(OpExecutorHandler.java:43) at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) at io.netty.handler.codec.http.websocketx.Utf8FrameValidator.channelRead(Utf8FrameValidator.java:77) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:204) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) at java.lang.Thread.run(Thread.java:748)

Then 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(UnknownError,runtime,Neither the sideEffects, map, nor path has a r-key: DedupGlobalStep([r,   cypher.path.start.GENERATED1,   UNNAMED19]),Some(org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Neither the sideEffects, map, nor path has a r-key: DedupGlobalStep([r,   cypher.path.start.GENERATED1,   UNNAMED19])))
	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: Neither the sideEffects, map, nor path has a r-key: DedupGlobalStep([r,   cypher.path.start.GENERATED1,   UNNAMED19])
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:259)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:198)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:124)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:68)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at org.apache.tinkerpop.gremlin.driver.handler.WebSocketClientHandler.channelRead0(WebSocketClientHandler.java:89)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
	... 1 more
l
[:T]
[:T]
null
null
null
0.028
Given an empty graph 0.000

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

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

16:49:32.583 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A), (b:B)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.583 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B) 16:49:32.584 [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

16:49:32.603 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.603 [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 16:49:32.609 [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').as(' UNNAMED64').outV()).emit().until(__.path().from(' cypher.path.start.GENERATED6').count(local).is(gte(21))).as('c').hasLabel('B').optional(__.select(all, ' UNNAMED64').as(' UNNAMED64')), __.select('b').is(neq(' cypher.null')).as(' cypher.path.start.GENERATED6').repeat(__.inE('BAR').as(' UNNAMED64').outV()).emit().until(__.path().from(' cypher.path.start.GENERATED6').count(local).is(gte(21))).as('c').hasLabel('B').optional(__.select(all, ' UNNAMED64').as(' UNNAMED64')), __.constant(' cypher.null').as(' UNNAMED64').as('c')).select('a', 'b', 'c').project('a', 'b', 'c').by(__.select('a').choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens'))).by(__.select('b').choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens'))).by(__.select('c').choose(neq(' cypher.null'), __.valueMap().with('~tinkerpop.valueMap.tokens')))

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

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

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

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

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

16:49:32.630 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.630 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B) CREATE (a)-[:T]->(b) 16:49:32.632 [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 (n)-[r]->(m)
RETURN [n, r, m] AS r

16:49:32.645 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.646 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n)-[r]->(m) RETURN [n, r, m] AS r 16:49:32.648 [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[22679]))
	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[22679]
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$.toCypherValue(TckGremlinCypherValueConverter.scala:143)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$7.apply(TckGremlinCypherValueConverter.scala:159)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$7.apply(TckGremlinCypherValueConverter.scala:159)
	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:159)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$.toCypherValue(TckGremlinCypherValueConverter.scala:142)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4$$anonfun$apply$1.apply(TckGremlinCypherValueConverter.scala:90)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4$$anonfun$apply$1.apply(TckGremlinCypherValueConverter.scala:90)
	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:90)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4.apply(TckGremlinCypherValueConverter.scala:90)
	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:89)
	at org.opencypher.gremlin.tck.TinkerGraphServerEmbeddedGraph$.cypher(TckTest.scala:56)
	at org.opencypher.tools.tck.api.Graph$class.execute(Graph.scala:62)
	at org.opencypher.gremlin.tck.TinkerGraphServerEmbeddedGraph$.execute(TckTest.scala:35)
	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.007
Scenario Projecting a map of nodes and relationships
Steps
Given an empty graph 0.000

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

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

16:49:32.651 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.651 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A), (b:B) CREATE (a)-[:T]->(b) 16:49:32.653 [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.002
MATCH (n)-[r]->(m)
RETURN {node1: n, rel: r, node2: m} AS m

16:49:32.668 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.668 [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 16:49:32.669 [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[22682]))
	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[22682]
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$.toCypherValue(TckGremlinCypherValueConverter.scala:143)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$6.apply(TckGremlinCypherValueConverter.scala:151)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$6.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.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:151)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$.toCypherValue(TckGremlinCypherValueConverter.scala:139)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4$$anonfun$apply$1.apply(TckGremlinCypherValueConverter.scala:90)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4$$anonfun$apply$1.apply(TckGremlinCypherValueConverter.scala:90)
	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:90)
	at org.opencypher.gremlin.tck.TckGremlinCypherValueConverter$$anonfun$4.apply(TckGremlinCypherValueConverter.scala:90)
	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:89)
	at org.opencypher.gremlin.tck.TinkerGraphServerEmbeddedGraph$.cypher(TckTest.scala:56)
	at org.opencypher.tools.tck.api.Graph$class.execute(Graph.scala:62)
	at org.opencypher.gremlin.tck.TinkerGraphServerEmbeddedGraph$.execute(TckTest.scala:35)
	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.016
Given an empty graph 0.000

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

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

16:49:32.671 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.671 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {prop: 'a'}), (b {prop: 'b'}) CREATE (a)-[:T]->(b) 16:49:32.673 [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.003
MATCH p = ({prop: 'a'})-->({prop: 'b'})
RETURN p

16:49:32.684 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.684 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = ({prop: 'a'})-->({prop: 'b'}) RETURN p 16:49:32.686 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.p').has('prop', eq('a')).outE().aggregate(' cypher.path.edge.p').inV().has('prop', eq('b')).path().from(' cypher.path.start.p').project('p').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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

16:49:32.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.687 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:32.688 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:32.689 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.689 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:32.690 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:32.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.690 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:32.692 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:32.693 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.694 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.024
Given an empty graph 0.000

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

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

16:49:32.697 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.697 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a {prop: 'a'}), (b {prop: 'b'}) CREATE (a)-[:T]->(b) 16:49:32.699 [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.007
MATCH p = ({prop: 'a'})<--({prop: 'b'})
RETURN p

16:49:32.715 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.716 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = ({prop: 'a'})<--({prop: 'b'}) RETURN p 16:49:32.719 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.p').has('prop', eq('a')).inE().aggregate(' cypher.path.edge.p').outV().has('prop', eq('b')).path().from(' cypher.path.start.p').project('p').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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

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

0.023
Given an empty graph 0.000

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

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

16:49:32.738 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.738 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a), (b) CREATE (a)-[:T]->(b), (b)-[:T]->(a) 16:49:32.740 [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.004
MATCH p = (n)-->(k)<--(n)
RETURN p

16:49:32.762 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.762 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (n)-->(k)<--(n) RETURN p 16:49:32.764 [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().from('n').as('p').where(__.select(' UNNAMED14').where(neq(' UNNAMED20'))).select('p').project('p').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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

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

0.018
Given an empty graph 0.000

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

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

16:49:32.781 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.781 [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) 16:49:32.782 [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.004
MATCH p = (n)<-->(k)<--(n)
RETURN p

16:49:32.796 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.796 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p = (n)<-->(k)<--(n) RETURN p 16:49:32.798 [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().from('n').as('p').where(__.select(' UNNAMED14').where(neq(' UNNAMED21'))).select('p').project('p').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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

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

0.017
Given an empty graph 0.000

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

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

16:49:32.811 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.811 [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) 16:49:32.813 [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.003
MATCH p=(n)<-->(k)<-->(n)
RETURN p

16:49:32.824 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.824 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH p=(n)<-->(k)<-->(n) RETURN p 16:49:32.826 [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().from('n').as('p').where(__.select(' UNNAMED12').where(neq(' UNNAMED19'))).select('p').project('p').by(__.is(neq(' cypher.unused')).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().with('~tinkerpop.valueMap.tokens').fold()))

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.010

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

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

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

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

16:49:32.839 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.840 [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) 16:49:32.841 [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:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) at io.netty.handler.codec.http.websocketx.Utf8FrameValidator.channelRead(Utf8FrameValidator.java:77) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:204) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) at java.lang.Thread.run(Thread.java:748)

When executing query: 0.004
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

16:49:32.864 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.865 [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 16:49:32.867 [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:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) at io.netty.handler.codec.http.websocketx.Utf8FrameValidator.channelRead(Utf8FrameValidator.java:77) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler$1.channelRead(WebSocketServerProtocolHandler.java:204) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) at java.lang.Thread.run(Thread.java:748)

Then 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:259)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinResponseHandler.channelRead0(Handler.java:198)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:124)
	at org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:68)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at org.apache.tinkerpop.gremlin.driver.handler.WebSocketClientHandler.channelRead0(WebSocketClientHandler.java:89)
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:647)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:582)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:499)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:461)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
	... 1 more
n m
(:A:B:C:D:E:F:G:H:I:J:K:L:M) (:Z:Y:X:W:V:U)
0.025
Scenario Matching longer variable length paths
Steps
Given an empty graph 0.000

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

And having executed: 0.019
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)

16:49:32.870 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.870 [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) 16:49:32.879 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().as('a').property(single, 'prop', 'start').addV().as('b').property(single, 'prop', 'end').select('a', 'b').project('a', 'b').by(__.select('a')).by(__.select('b')).as(' GENERATED1').select('a').as('a').select(' GENERATED1').select('b').as('b').repeat(__.sideEffect(__.loops().is(gte(1)).aggregate(' GENERATED2'))).until(__.loops().is(gt(20))).select(' GENERATED2').unfold().as('i').addV().as('n').property(single, 'prop', __.select('i')).select('a', 'n', 'b').group().by(__.project(' AGGREGATION104', ' AGGREGATION123').by(__.project(' GENERATED3').by(__.select('a')).select(values)).by(__.project(' GENERATED4').by(__.select('b')).select(values))).by(__.fold().project(' AGGREGATION104', ' AGGREGATION110', ' AGGREGATION123').by(__.unfold().project(' GENERATED3').by(__.select('a')).select(values)).by(__.unfold().select('n').is(neq(' cypher.null')).fold()).by(__.unfold().project(' GENERATED4').by(__.select('b')).select(values))).unfold().select(values).as(' GENERATED5').select(' AGGREGATION104').as(' AGGREGATION104').select(' GENERATED5').select(' AGGREGATION110').as(' AGGREGATION110').select(' GENERATED5').select(' AGGREGATION123').as(' AGGREGATION123').select(' AGGREGATION104', ' AGGREGATION110', ' AGGREGATION123').map(__.select(' AGGREGATION123').as(' GENERATED6').select(' AGGREGATION110').as(' GENERATED7').select(' AGGREGATION104').choose(__.or(__.is(eq(' cypher.null')), __.select(' GENERATED7').is(eq(' cypher.null'))), __.constant(' cypher.null'), __.local(__.union(__.unfold(), __.select(' GENERATED7').unfold()).fold())).choose(__.or(__.is(eq(' cypher.null')), __.select(' GENERATED6').is(eq(' cypher.null'))), __.constant(' cypher.null'), __.local(__.union(__.unfold(), __.select(' GENERATED6').unfold()).fold()))).as('nodeList').constant(2).as('__GENERATED12').select('nodeList').count(local).choose(__.or(__.is(eq(' cypher.null')), __.select('__GENERATED12').is(eq(' cypher.null'))), __.constant(' cypher.null'), __.math('_ - __GENERATED12')).as('__GENERATED11').sideEffect(__.is(lt(0)).constant('INVALID_RANGE').map(cypherException())).sideEffect(__.math('__GENERATED11 - 0').is(gt(10000)).constant('INVALID_RANGE').map(cypherException())).repeat(__.sideEffect(__.loops().where(__.math('(_ - 0) % 1').is(eq(0))).aggregate(' GENERATED10'))).until(__.loops().where(gt('__GENERATED11'))).select(' GENERATED10').unfold().as('i').select('nodeList', 'i').project('n1', 'n2').by(__.project(' GENERATED13', ' GENERATED14').by(__.select('nodeList')).by(__.select('i')).select(values).map(cypherContainerIndex())).by(__.project(' GENERATED15', ' GENERATED16').by(__.select('nodeList')).by(__.constant(1).as('__GENERATED17').select('i').choose(__.or(__.is(eq(' cypher.null')), __.select('__GENERATED17').is(eq(' cypher.null'))), __.constant(' cypher.null'), __.math('_ + __GENERATED17'))).select(values).map(cypherContainerIndex())).as(' GENERATED18').select('n1').as('n1').select(' GENERATED18').select('n2').as('n2').addE('T').from('n1').to('n2').barrier().limit(0)

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

16:49:32.903 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.903 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n {prop: 'start'})-[:T*]->(m {prop: 'end'}) RETURN m 16:49:32.905 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('n').has('prop', eq('start')).repeat(__.outE('T').as(' UNNAMED26').inV()).emit().until(__.path().from('n').count(local).is(gte(21))).as('m').has('prop', eq('end')).optional(__.select(all, ' UNNAMED26').as(' UNNAMED26')).select('m').project('m').by(__.valueMap().with('~tinkerpop.valueMap.tokens'))

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

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

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

16:49:32.910 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.910 [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) 16:49:32.912 [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.003
MATCH (a)
MERGE (b)
WITH *
OPTIONAL MATCH (a)--(b)
RETURN count(*)

16:49:32.925 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.925 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a) MERGE (b) WITH * OPTIONAL MATCH (a)--(b) RETURN count(*) 16:49:32.927 [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(' GENERATED6').where(__.select(' GENERATED6').where(eq('b'))).dedup('a', ' UNNAMED46', 'b'), __.select('a').is(neq(' cypher.null')).bothE().as(' UNNAMED46').otherV().as(' GENERATED6').where(__.select(' GENERATED6').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.013

16:49:32.929 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.929 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:49:32.930 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:49:32.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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.931 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:49:32.933 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:49:32.933 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.933 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:49:32.935 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().map(__.label().is(neq('vertex')).fold()).unfold().project('label').by(__.identity()).dedup() 16:49:32.936 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().as('V').properties().project('nodeId', 'key', 'value').by(__.select('V').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.939 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:37305, hostUri=ws://localhost:37305/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.017
Given an empty graph 0.000

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

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

16:49:32.943 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.943 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a) CREATE (a)-[:T]->(a) 16:49:32.945 [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.002
MATCH ()-[r]-()
RETURN type(r) AS r

16:49:32.964 [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:37305, hostUri=ws://localhost:37305/gremlin}} 16:49:32.964 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]-() RETURN type(r) AS r 16:49:32.966 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as(' cypher.path.start.GENERATED1').bothE().as('r').otherV().as(' UNNAMED14').dedup(' cypher.path.start.GENERATED1', 'r', ' UNNAMED14').select('r').project('r').by(__.label().is(neq('vertex')))

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

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