Project Number Date
cypher-for-gremlin 0.9.12 13 Sep 2018, 16:07

Feature Report

Steps Scenarios Features
Feature Passed Failed Skipped Pending Undefined Total Passed Failed Total Duration Status
UnwindAcceptance 61 0 0 0 0 61 14 0 14 0.520 Passed
Feature UnwindAcceptance
0.050
Given any graph 0.032

16:07:30.468 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.469 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); }} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.470 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); 16:07:30.487 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').property(single, 'name', 'a').addV('X').as('b1').property(single, 'name', 'b1').addV('X').as('b2').property(single, 'name', 'b2').addV('X').as('b3').property(single, 'name', 'b3').addV('X').as('b4').property(single, 'name', 'b4').addV('X').as('c11').property(single, 'name', 'c11').addV('X').as('c12').property(single, 'name', 'c12').addV('X').as('c21').property(single, 'name', 'c21').addV('X').as('c22').property(single, 'name', 'c22').addV('X').as('c31').property(single, 'name', 'c31').addV('X').as('c32').property(single, 'name', 'c32').addV('X').as('c41').property(single, 'name', 'c41').addV('X').as('c42').property(single, 'name', 'c42').addE('KNOWS').from('a').to('b1').addE('KNOWS').from('a').to('b2').addE('FOLLOWS').from('a').to('b3').addE('FOLLOWS').from('a').to('b4').addE('FRIEND').from('b1').to('c11').addE('FRIEND').from('b1').to('c12').addE('FRIEND').from('b2').to('c21').addE('FRIEND').from('b2').to('c22').addE('FRIEND').from('b3').to('c31').addE('FRIEND').from('b3').to('c32').addE('FRIEND').from('b4').to('c41').addE('FRIEND').from('b4').to('c42').addE('FRIEND').from('b1').to('b2').addE('FRIEND').from('b2').to('b3').addE('FRIEND').from('b3').to('b4').addE('FRIEND').from('b4').to('b1').barrier().limit(0)

When executing query: 0.002
UNWIND [1, 2, 3] AS x
RETURN x

16:07:30.519 [Test worker] DEBUG o.a.t.g.driver.Client - UNWIND [1, 2, 3] AS x RETURN x}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.520 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: UNWIND [1, 2, 3] AS x RETURN x 16:07:30.521 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').project(' GENERATED1', ' GENERATED2', ' GENERATED3').by(__.constant(1)).by(__.constant(2)).by(__.constant(3)).select(values).unfold().project('x').by(__.identity())

Then the result should be: 0.000
x
1
2
3
And no side effects 0.015

16:07:30.522 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.522 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:07:30.525 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:07:30.526 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.527 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:07:30.530 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:07:30.531 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.531 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:07:30.533 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 16:07:30.533 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.534 [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:36913, hostUri=ws://localhost:36913/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.050
Given any graph 0.030

16:07:30.538 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.538 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); }} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.538 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); 16:07:30.555 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').property(single, 'name', 'a').addV('X').as('b1').property(single, 'name', 'b1').addV('X').as('b2').property(single, 'name', 'b2').addV('X').as('b3').property(single, 'name', 'b3').addV('X').as('b4').property(single, 'name', 'b4').addV('X').as('c11').property(single, 'name', 'c11').addV('X').as('c12').property(single, 'name', 'c12').addV('X').as('c21').property(single, 'name', 'c21').addV('X').as('c22').property(single, 'name', 'c22').addV('X').as('c31').property(single, 'name', 'c31').addV('X').as('c32').property(single, 'name', 'c32').addV('X').as('c41').property(single, 'name', 'c41').addV('X').as('c42').property(single, 'name', 'c42').addE('KNOWS').from('a').to('b1').addE('KNOWS').from('a').to('b2').addE('FOLLOWS').from('a').to('b3').addE('FOLLOWS').from('a').to('b4').addE('FRIEND').from('b1').to('c11').addE('FRIEND').from('b1').to('c12').addE('FRIEND').from('b2').to('c21').addE('FRIEND').from('b2').to('c22').addE('FRIEND').from('b3').to('c31').addE('FRIEND').from('b3').to('c32').addE('FRIEND').from('b4').to('c41').addE('FRIEND').from('b4').to('c42').addE('FRIEND').from('b1').to('b2').addE('FRIEND').from('b2').to('b3').addE('FRIEND').from('b3').to('b4').addE('FRIEND').from('b4').to('b1').barrier().limit(0)

When executing query: 0.002
UNWIND range(1, 3) AS x
RETURN x

16:07:30.585 [Test worker] DEBUG o.a.t.g.driver.Client - UNWIND range(1, 3) AS x RETURN x}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.585 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: UNWIND range(1, 3) AS x RETURN x 16:07:30.587 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').repeat(__.loops().aggregate(' GENERATED1')).times(4).cap(' GENERATED1').unfold().skip(1).limit(3).project('x').by(__.identity())

Then the result should be: 0.000
x
1
2
3
And no side effects 0.017

16:07:30.588 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.588 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:07:30.590 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:07:30.591 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.591 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:07:30.595 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:07:30.595 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.596 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:07:30.598 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 16:07:30.599 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.601 [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:36913, hostUri=ws://localhost:36913/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.045
Given any graph 0.029

16:07:30.605 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.605 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); }} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.606 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); 16:07:30.623 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').property(single, 'name', 'a').addV('X').as('b1').property(single, 'name', 'b1').addV('X').as('b2').property(single, 'name', 'b2').addV('X').as('b3').property(single, 'name', 'b3').addV('X').as('b4').property(single, 'name', 'b4').addV('X').as('c11').property(single, 'name', 'c11').addV('X').as('c12').property(single, 'name', 'c12').addV('X').as('c21').property(single, 'name', 'c21').addV('X').as('c22').property(single, 'name', 'c22').addV('X').as('c31').property(single, 'name', 'c31').addV('X').as('c32').property(single, 'name', 'c32').addV('X').as('c41').property(single, 'name', 'c41').addV('X').as('c42').property(single, 'name', 'c42').addE('KNOWS').from('a').to('b1').addE('KNOWS').from('a').to('b2').addE('FOLLOWS').from('a').to('b3').addE('FOLLOWS').from('a').to('b4').addE('FRIEND').from('b1').to('c11').addE('FRIEND').from('b1').to('c12').addE('FRIEND').from('b2').to('c21').addE('FRIEND').from('b2').to('c22').addE('FRIEND').from('b3').to('c31').addE('FRIEND').from('b3').to('c32').addE('FRIEND').from('b4').to('c41').addE('FRIEND').from('b4').to('c42').addE('FRIEND').from('b1').to('b2').addE('FRIEND').from('b2').to('b3').addE('FRIEND').from('b3').to('b4').addE('FRIEND').from('b4').to('b1').barrier().limit(0)

When executing query: 0.004
WITH [1, 2, 3] AS first, [4, 5, 6] AS second
UNWIND (first + second) AS x
RETURN x

16:07:30.646 [Test worker] DEBUG o.a.t.g.driver.Client - WITH [1, 2, 3] AS first, [4, 5, 6] AS second UNWIND (first + second) AS x RETURN x}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.646 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: WITH [1, 2, 3] AS first, [4, 5, 6] AS second UNWIND (first + second) AS x RETURN x 16:07:30.650 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').project('first', 'second').by(__.project(' GENERATED1', ' GENERATED2', ' GENERATED3').by(__.constant(1)).by(__.constant(2)).by(__.constant(3)).select(values)).by(__.project(' GENERATED4', ' GENERATED5', ' GENERATED6').by(__.constant(4)).by(__.constant(5)).by(__.constant(6)).select(values)).as(' GENERATED7').select('first').as('first').select(' GENERATED7').select('second').as('second').as(' GENERATED8').select('first').choose(__.or(__.is(eq(' cypher.null')), __.select(' GENERATED8').is(eq(' cypher.null'))), __.constant(' cypher.null'), __.local(__.union(__.unfold(), __.select(' GENERATED8').unfold()).fold())).unfold().project('x').by(__.identity())

Then the result should be: 0.000
x
1
2
3
4
5
6
And no side effects 0.011

16:07:30.651 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.651 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:07:30.653 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:07:30.653 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.653 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:07:30.655 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:07:30.656 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.656 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:07:30.658 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 16:07:30.658 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.659 [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:36913, hostUri=ws://localhost:36913/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.036
Given any graph 0.021

16:07:30.662 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.663 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); }} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.663 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); 16:07:30.675 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').property(single, 'name', 'a').addV('X').as('b1').property(single, 'name', 'b1').addV('X').as('b2').property(single, 'name', 'b2').addV('X').as('b3').property(single, 'name', 'b3').addV('X').as('b4').property(single, 'name', 'b4').addV('X').as('c11').property(single, 'name', 'c11').addV('X').as('c12').property(single, 'name', 'c12').addV('X').as('c21').property(single, 'name', 'c21').addV('X').as('c22').property(single, 'name', 'c22').addV('X').as('c31').property(single, 'name', 'c31').addV('X').as('c32').property(single, 'name', 'c32').addV('X').as('c41').property(single, 'name', 'c41').addV('X').as('c42').property(single, 'name', 'c42').addE('KNOWS').from('a').to('b1').addE('KNOWS').from('a').to('b2').addE('FOLLOWS').from('a').to('b3').addE('FOLLOWS').from('a').to('b4').addE('FRIEND').from('b1').to('c11').addE('FRIEND').from('b1').to('c12').addE('FRIEND').from('b2').to('c21').addE('FRIEND').from('b2').to('c22').addE('FRIEND').from('b3').to('c31').addE('FRIEND').from('b3').to('c32').addE('FRIEND').from('b4').to('c41').addE('FRIEND').from('b4').to('c42').addE('FRIEND').from('b1').to('b2').addE('FRIEND').from('b2').to('b3').addE('FRIEND').from('b3').to('b4').addE('FRIEND').from('b4').to('b1').barrier().limit(0)

When executing query: 0.003
UNWIND RANGE(1, 2) AS row
WITH collect(row) AS rows
UNWIND rows AS x
RETURN x

16:07:30.696 [Test worker] DEBUG o.a.t.g.driver.Client - UNWIND RANGE(1, 2) AS row WITH collect(row) AS rows UNWIND rows AS x RETURN x}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.696 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: UNWIND RANGE(1, 2) AS row WITH collect(row) AS rows UNWIND rows AS x RETURN x 16:07:30.698 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').repeat(__.loops().aggregate(' GENERATED1')).times(3).cap(' GENERATED1').unfold().skip(1).limit(2).fold().unfold().is(neq(' cypher.null')).project('x').by(__.identity())

Then the result should be: 0.000
x
1
2
And no side effects 0.011

16:07:30.699 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.699 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:07:30.701 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:07:30.702 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.702 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:07:30.704 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:07:30.704 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.704 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:07:30.706 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 16:07:30.707 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.707 [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:36913, hostUri=ws://localhost:36913/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:07:30.711 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}}

And having executed: 0.003
CREATE ({id: 1}), ({id: 2})

16:07:30.712 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE ({id: 1}), ({id: 2})}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.712 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE ({id: 1}), ({id: 2}) 16:07:30.713 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV().property(single, 'id', 1).addV().property(single, 'id', 2).barrier().limit(0)

When executing query: 0.002
MATCH (row)
WITH collect(row) AS rows
UNWIND rows AS node
RETURN node.id

16:07:30.730 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (row) WITH collect(row) AS rows UNWIND rows AS node RETURN node.id}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.730 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (row) WITH collect(row) AS rows UNWIND rows AS node RETURN node.id 16:07:30.733 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('node.id').by(__.choose(__.values('id'), __.values('id'), __.constant(' cypher.null')))

Then the result should be: 0.000
node.id
1
2
And no side effects 0.015

16:07:30.733 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.733 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:07:30.735 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:07:30.735 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.735 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:07:30.737 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:07: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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.740 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:07:30.741 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 16:07:30.744 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.744 [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:36913, hostUri=ws://localhost:36913/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:07:30.748 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}}

And having executed: 0.002
CREATE (:Year {year: 2016})

16:07:30.749 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (:Year {year: 2016})}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.749 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (:Year {year: 2016}) 16:07:30.750 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('Year').property(single, 'year', 2016).barrier().limit(0)

And parameters are: 0.000
events [{year: 2016, id: 1}, {year: 2016, id: 2}]
When executing query: 0.008
UNWIND $events AS event
MATCH (y:Year {year: event.year})
MERGE (e:Event {id: event.id})
MERGE (y)<-[:IN]-(e)
RETURN e.id AS x
ORDER BY x

16:07:30.765 [Test worker] DEBUG o.a.t.g.driver.Client - UNWIND $events AS event MATCH (y:Year {year: event.year}) MERGE (e:Event {id: event.id}) MERGE (y)<-[:IN]-(e) RETURN e.id AS x ORDER BY x, bindings={events=[{year=2016, id=1}, {year=2016, id=2}]}}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.765 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: UNWIND $events AS event MATCH (y:Year {year: event.year}) MERGE (e:Event {id: event.id}) MERGE (y)<-[:IN]-(e) RETURN e.id AS x ORDER BY x 16:07:30.771 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').choose(__.constant([[year: 2016, id: 1], [year: 2016, id: 2]]), __.constant([[year: 2016, id: 1], [year: 2016, id: 2]]), __.constant(' cypher.null')).unfold().as('event').V().as('y').hasLabel('Year').where(__.project(' GENERATED2', ' GENERATED3').by(__.select('event')).by(__.constant('year')).select(values).map(cypherContainerIndex()).is(neq(' cypher.null')).as(' GENERATED1').select('y').values('year').where(eq(' GENERATED1'))).choose(__.V().as('e').hasLabel('Event').where(__.project(' GENERATED7', ' GENERATED8').by(__.select('event')).by(__.constant('id')).select(values).map(cypherContainerIndex()).is(neq(' cypher.null')).as(' GENERATED6').select('e').values('id').where(eq(' GENERATED6'))), __.V().as('e').hasLabel('Event').where(__.project(' GENERATED7', ' GENERATED8').by(__.select('event')).by(__.constant('id')).select(values).map(cypherContainerIndex()).is(neq(' cypher.null')).as(' GENERATED6').select('e').values('id').where(eq(' GENERATED6'))), __.identity().addV('Event').as('e').property(single, 'id', __.project(' GENERATED4', ' GENERATED5').by(__.select('event')).by(__.constant('id')).select(values).map(cypherContainerIndex()))).choose(__.select('y').inE('IN').outV().as(' GENERATED13').where(__.select(' GENERATED13').where(eq('e'))), __.select('y').inE('IN').outV().as(' GENERATED13').where(__.select(' GENERATED13').where(eq('e'))), __.identity().addE('IN').from('e').to('y')).select('e').project(' FRESHID119').by(__.choose(neq(' cypher.null'), __.choose(__.values('id'), __.values('id'), __.constant(' cypher.null')), __.constant(' cypher.null'))).order().by(__.select(' FRESHID119'), incr).select(' FRESHID119').as(' FRESHID119').project('x').by(__.identity())

Then the result should be, in order: 0.000
x
1
2
And the side effects should be: 0.011
+nodes 2
+relationships 2
+labels 1
+properties 2

16:07:30.773 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.773 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:07:30.775 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:07:30.776 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.776 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:07:30.778 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:07:30.778 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.778 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:07:30.780 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 16:07:30.780 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07: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:36913, hostUri=ws://localhost:36913/gremlin}} -labels: 0 +labels: 1 +nodes: 2 -nodes: 0 -properties: 0 +properties: 2 -relationships: 0 +relationships: 2

0.043
Given any graph 0.021

16:07:30.785 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.785 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); }} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.785 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); 16:07:30.797 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').property(single, 'name', 'a').addV('X').as('b1').property(single, 'name', 'b1').addV('X').as('b2').property(single, 'name', 'b2').addV('X').as('b3').property(single, 'name', 'b3').addV('X').as('b4').property(single, 'name', 'b4').addV('X').as('c11').property(single, 'name', 'c11').addV('X').as('c12').property(single, 'name', 'c12').addV('X').as('c21').property(single, 'name', 'c21').addV('X').as('c22').property(single, 'name', 'c22').addV('X').as('c31').property(single, 'name', 'c31').addV('X').as('c32').property(single, 'name', 'c32').addV('X').as('c41').property(single, 'name', 'c41').addV('X').as('c42').property(single, 'name', 'c42').addE('KNOWS').from('a').to('b1').addE('KNOWS').from('a').to('b2').addE('FOLLOWS').from('a').to('b3').addE('FOLLOWS').from('a').to('b4').addE('FRIEND').from('b1').to('c11').addE('FRIEND').from('b1').to('c12').addE('FRIEND').from('b2').to('c21').addE('FRIEND').from('b2').to('c22').addE('FRIEND').from('b3').to('c31').addE('FRIEND').from('b3').to('c32').addE('FRIEND').from('b4').to('c41').addE('FRIEND').from('b4').to('c42').addE('FRIEND').from('b1').to('b2').addE('FRIEND').from('b2').to('b3').addE('FRIEND').from('b3').to('b4').addE('FRIEND').from('b4').to('b1').barrier().limit(0)

When executing query: 0.004
WITH [[1, 2, 3], [4, 5, 6]] AS lol
UNWIND lol AS x
UNWIND x AS y
RETURN y

16:07:30.822 [Test worker] DEBUG o.a.t.g.driver.Client - WITH [[1, 2, 3], [4, 5, 6]] AS lol UNWIND lol AS x UNWIND x AS y RETURN y}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.822 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: WITH [[1, 2, 3], [4, 5, 6]] AS lol UNWIND lol AS x UNWIND x AS y RETURN y 16:07:30.826 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').map(__.project(' GENERATED1', ' GENERATED2').by(__.project(' GENERATED3', ' GENERATED4', ' GENERATED5').by(__.constant(1)).by(__.constant(2)).by(__.constant(3)).select(values)).by(__.project(' GENERATED6', ' GENERATED7', ' GENERATED8').by(__.constant(4)).by(__.constant(5)).by(__.constant(6)).select(values)).select(values)).unfold().unfold().project('y').by(__.identity())

Then the result should be: 0.000
y
1
2
3
4
5
6
And no side effects 0.016

16:07:30.827 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.827 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:07:30.829 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:07:30.829 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.830 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:07:30.832 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:07:30.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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.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:07:30.834 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 16:07:30.835 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.835 [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:36913, hostUri=ws://localhost:36913/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.043
Given any graph 0.027

16:07:30.845 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.845 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); }} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.845 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); 16:07:30.858 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').property(single, 'name', 'a').addV('X').as('b1').property(single, 'name', 'b1').addV('X').as('b2').property(single, 'name', 'b2').addV('X').as('b3').property(single, 'name', 'b3').addV('X').as('b4').property(single, 'name', 'b4').addV('X').as('c11').property(single, 'name', 'c11').addV('X').as('c12').property(single, 'name', 'c12').addV('X').as('c21').property(single, 'name', 'c21').addV('X').as('c22').property(single, 'name', 'c22').addV('X').as('c31').property(single, 'name', 'c31').addV('X').as('c32').property(single, 'name', 'c32').addV('X').as('c41').property(single, 'name', 'c41').addV('X').as('c42').property(single, 'name', 'c42').addE('KNOWS').from('a').to('b1').addE('KNOWS').from('a').to('b2').addE('FOLLOWS').from('a').to('b3').addE('FOLLOWS').from('a').to('b4').addE('FRIEND').from('b1').to('c11').addE('FRIEND').from('b1').to('c12').addE('FRIEND').from('b2').to('c21').addE('FRIEND').from('b2').to('c22').addE('FRIEND').from('b3').to('c31').addE('FRIEND').from('b3').to('c32').addE('FRIEND').from('b4').to('c41').addE('FRIEND').from('b4').to('c42').addE('FRIEND').from('b1').to('b2').addE('FRIEND').from('b2').to('b3').addE('FRIEND').from('b3').to('b4').addE('FRIEND').from('b4').to('b1').barrier().limit(0)

When executing query: 0.003
UNWIND [] AS empty
RETURN empty

16:07:30.884 [Test worker] DEBUG o.a.t.g.driver.Client - UNWIND [] AS empty RETURN empty}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.884 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: UNWIND [] AS empty RETURN empty 16:07:30.886 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').constant([]).unfold().project('empty').by(__.identity())

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

16:07:30.887 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.887 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:07:30.889 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:07:30.889 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.890 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:07:30.892 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:07:30.892 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.892 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:07:30.894 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 16:07:30.895 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07: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:36913, hostUri=ws://localhost:36913/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.036
Given any graph 0.021

16:07:30.901 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.901 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); }} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.901 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); 16:07:30.913 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').property(single, 'name', 'a').addV('X').as('b1').property(single, 'name', 'b1').addV('X').as('b2').property(single, 'name', 'b2').addV('X').as('b3').property(single, 'name', 'b3').addV('X').as('b4').property(single, 'name', 'b4').addV('X').as('c11').property(single, 'name', 'c11').addV('X').as('c12').property(single, 'name', 'c12').addV('X').as('c21').property(single, 'name', 'c21').addV('X').as('c22').property(single, 'name', 'c22').addV('X').as('c31').property(single, 'name', 'c31').addV('X').as('c32').property(single, 'name', 'c32').addV('X').as('c41').property(single, 'name', 'c41').addV('X').as('c42').property(single, 'name', 'c42').addE('KNOWS').from('a').to('b1').addE('KNOWS').from('a').to('b2').addE('FOLLOWS').from('a').to('b3').addE('FOLLOWS').from('a').to('b4').addE('FRIEND').from('b1').to('c11').addE('FRIEND').from('b1').to('c12').addE('FRIEND').from('b2').to('c21').addE('FRIEND').from('b2').to('c22').addE('FRIEND').from('b3').to('c31').addE('FRIEND').from('b3').to('c32').addE('FRIEND').from('b4').to('c41').addE('FRIEND').from('b4').to('c42').addE('FRIEND').from('b1').to('b2').addE('FRIEND').from('b2').to('b3').addE('FRIEND').from('b3').to('b4').addE('FRIEND').from('b4').to('b1').barrier().limit(0)

When executing query: 0.003
UNWIND null AS nil
RETURN nil

16:07:30.935 [Test worker] DEBUG o.a.t.g.driver.Client - UNWIND null AS nil RETURN nil}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.935 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: UNWIND null AS nil RETURN nil 16:07:30.936 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject([]).unfold().as('nil').inject(' cypher.start').select('nil').project('nil').by(__.identity())

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

16:07:30.938 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.938 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:07:30.940 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:07:30.940 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.940 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:07:30.942 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:07:30.943 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.943 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:07:30.945 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 16:07:30.945 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07: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:36913, hostUri=ws://localhost:36913/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.040
Given any graph 0.026

16:07:30.949 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.950 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); }} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.950 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); 16:07:30.963 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').property(single, 'name', 'a').addV('X').as('b1').property(single, 'name', 'b1').addV('X').as('b2').property(single, 'name', 'b2').addV('X').as('b3').property(single, 'name', 'b3').addV('X').as('b4').property(single, 'name', 'b4').addV('X').as('c11').property(single, 'name', 'c11').addV('X').as('c12').property(single, 'name', 'c12').addV('X').as('c21').property(single, 'name', 'c21').addV('X').as('c22').property(single, 'name', 'c22').addV('X').as('c31').property(single, 'name', 'c31').addV('X').as('c32').property(single, 'name', 'c32').addV('X').as('c41').property(single, 'name', 'c41').addV('X').as('c42').property(single, 'name', 'c42').addE('KNOWS').from('a').to('b1').addE('KNOWS').from('a').to('b2').addE('FOLLOWS').from('a').to('b3').addE('FOLLOWS').from('a').to('b4').addE('FRIEND').from('b1').to('c11').addE('FRIEND').from('b1').to('c12').addE('FRIEND').from('b2').to('c21').addE('FRIEND').from('b2').to('c22').addE('FRIEND').from('b3').to('c31').addE('FRIEND').from('b3').to('c32').addE('FRIEND').from('b4').to('c41').addE('FRIEND').from('b4').to('c42').addE('FRIEND').from('b1').to('b2').addE('FRIEND').from('b2').to('b3').addE('FRIEND').from('b3').to('b4').addE('FRIEND').from('b4').to('b1').barrier().limit(0)

When executing query: 0.002
UNWIND [1, 1, 2, 2, 3, 3, 4, 4, 5, 5] AS duplicate
RETURN duplicate

16:07:30.987 [Test worker] DEBUG o.a.t.g.driver.Client - UNWIND [1, 1, 2, 2, 3, 3, 4, 4, 5, 5] AS duplicate RETURN duplicate}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:30.988 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: UNWIND [1, 1, 2, 2, 3, 3, 4, 4, 5, 5] AS duplicate RETURN duplicate 16:07:30.990 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').project(' GENERATED1', ' GENERATED2', ' GENERATED3', ' GENERATED4', ' GENERATED5', ' GENERATED6', ' GENERATED7', ' GENERATED8', ' GENERATED9', ' GENERATED10').by(__.constant(1)).by(__.constant(1)).by(__.constant(2)).by(__.constant(2)).by(__.constant(3)).by(__.constant(3)).by(__.constant(4)).by(__.constant(4)).by(__.constant(5)).by(__.constant(5)).select(values).unfold().project('duplicate').by(__.identity())

Then the result should be: 0.000
duplicate
1
1
2
2
3
3
4
4
5
5
And no side effects 0.011

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

0.042
Given any graph 0.027

16:07:31.002 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.007 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); }} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.007 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); 16:07:31.019 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').property(single, 'name', 'a').addV('X').as('b1').property(single, 'name', 'b1').addV('X').as('b2').property(single, 'name', 'b2').addV('X').as('b3').property(single, 'name', 'b3').addV('X').as('b4').property(single, 'name', 'b4').addV('X').as('c11').property(single, 'name', 'c11').addV('X').as('c12').property(single, 'name', 'c12').addV('X').as('c21').property(single, 'name', 'c21').addV('X').as('c22').property(single, 'name', 'c22').addV('X').as('c31').property(single, 'name', 'c31').addV('X').as('c32').property(single, 'name', 'c32').addV('X').as('c41').property(single, 'name', 'c41').addV('X').as('c42').property(single, 'name', 'c42').addE('KNOWS').from('a').to('b1').addE('KNOWS').from('a').to('b2').addE('FOLLOWS').from('a').to('b3').addE('FOLLOWS').from('a').to('b4').addE('FRIEND').from('b1').to('c11').addE('FRIEND').from('b1').to('c12').addE('FRIEND').from('b2').to('c21').addE('FRIEND').from('b2').to('c22').addE('FRIEND').from('b3').to('c31').addE('FRIEND').from('b3').to('c32').addE('FRIEND').from('b4').to('c41').addE('FRIEND').from('b4').to('c42').addE('FRIEND').from('b1').to('b2').addE('FRIEND').from('b2').to('b3').addE('FRIEND').from('b3').to('b4').addE('FRIEND').from('b4').to('b1').barrier().limit(0)

When executing query: 0.002
WITH [1, 2, 3] AS list
UNWIND list AS x
RETURN *

16:07:31.052 [Test worker] DEBUG o.a.t.g.driver.Client - WITH [1, 2, 3] AS list UNWIND list AS x RETURN *}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.052 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: WITH [1, 2, 3] AS list UNWIND list AS x RETURN * 16:07:31.054 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').map(__.project(' GENERATED1', ' GENERATED2', ' GENERATED3').by(__.constant(1)).by(__.constant(2)).by(__.constant(3)).select(values)).as('list').unfold().as('x').select('list', 'x').project('list', 'x').by(__.select('list')).by(__.select('x'))

Then the result should be: 0.000
list x
[1, 2, 3] 1
[1, 2, 3] 2
[1, 2, 3] 3
And no side effects 0.011

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

0.029
Given an empty graph 0.000

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

And having executed: 0.010
CREATE (s:S),
  (n),
  (e:E),
  (s)-[:X]->(e),
  (s)-[:Y]->(e),
  (n)-[:Y]->(e)

16:07:31.067 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (s:S), (n), (e:E), (s)-[:X]->(e), (s)-[:Y]->(e), (n)-[:Y]->(e)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.071 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (s:S), (n), (e:E), (s)-[:X]->(e), (s)-[:Y]->(e), (n)-[:Y]->(e) 16:07:31.074 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('S').as('s').addV().as('n').addV('E').as('e').addE('X').from('s').to('e').addE('Y').from('s').to('e').addE('Y').from('n').to('e').barrier().limit(0)

When executing query: 0.005
MATCH (a:S)-[:X]->(b1)
WITH a, collect(b1) AS bees
UNWIND bees AS b2
MATCH (a)-[:Y]->(b2)
RETURN a, b2

16:07:31.092 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (a:S)-[:X]->(b1) WITH a, collect(b1) AS bees UNWIND bees AS b2 MATCH (a)-[:Y]->(b2) RETURN a, b2}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.092 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (a:S)-[:X]->(b1) WITH a, collect(b1) AS bees UNWIND bees AS b2 MATCH (a)-[:Y]->(b2) RETURN a, b2 16:07:31.096 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().as('a').hasLabel('S').outE('X').inV().as('b1').select('a', 'b1').group().by(__.select('a')).by(__.fold().project('a', 'bees').by(__.unfold().select('a')).by(__.unfold().select('b1').is(neq(' cypher.null')).fold())).unfold().select(values).as(' GENERATED2').select('a').as('a').hasLabel('S').select(' GENERATED2').select('bees').as('bees').unfold().as('b2').select('a').outE('Y').inV().as('b2').select('a', 'b2').project('a', 'b2').by(__.select('a').valueMap(true)).by(__.select('b2').valueMap(true))

Then the result should be: 0.000
a b2
(:S) (:E)
And no side effects 0.014

16:07:31.097 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.097 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:07:31.099 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:07:31.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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.100 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:07:31.102 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:07:31.102 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.102 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:07:31.104 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 16:07:31.104 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.108 [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:36913, hostUri=ws://localhost:36913/gremlin}} -labels: 0 +labels: 0 +nodes: 0 -nodes: 0 -properties: 0 +properties: 0 -relationships: 0 +relationships: 0

0.039
Given any graph 0.021

16:07:31.111 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.112 [Test worker] DEBUG o.a.t.g.driver.Client - CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); }} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.112 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: CREATE (a:A {name: 'a'}), (b1:X {name: 'b1'}), (b2:X {name: 'b2'}), (b3:X {name: 'b3'}), (b4:X {name: 'b4'}), (c11:X {name: 'c11'}), (c12:X {name: 'c12'}), (c21:X {name: 'c21'}), (c22:X {name: 'c22'}), (c31:X {name: 'c31'}), (c32:X {name: 'c32'}), (c41:X {name: 'c41'}), (c42:X {name: 'c42'}) CREATE (a)-[:KNOWS]->(b1), (a)-[:KNOWS]->(b2), (a)-[:FOLLOWS]->(b3), (a)-[:FOLLOWS]->(b4) CREATE (b1)-[:FRIEND]->(c11), (b1)-[:FRIEND]->(c12), (b2)-[:FRIEND]->(c21), (b2)-[:FRIEND]->(c22), (b3)-[:FRIEND]->(c31), (b3)-[:FRIEND]->(c32), (b4)-[:FRIEND]->(c41), (b4)-[:FRIEND]->(c42) CREATE (b1)-[:FRIEND]->(b2), (b2)-[:FRIEND]->(b3), (b3)-[:FRIEND]->(b4), (b4)-[:FRIEND]->(b1); 16:07:31.124 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.addV('A').as('a').property(single, 'name', 'a').addV('X').as('b1').property(single, 'name', 'b1').addV('X').as('b2').property(single, 'name', 'b2').addV('X').as('b3').property(single, 'name', 'b3').addV('X').as('b4').property(single, 'name', 'b4').addV('X').as('c11').property(single, 'name', 'c11').addV('X').as('c12').property(single, 'name', 'c12').addV('X').as('c21').property(single, 'name', 'c21').addV('X').as('c22').property(single, 'name', 'c22').addV('X').as('c31').property(single, 'name', 'c31').addV('X').as('c32').property(single, 'name', 'c32').addV('X').as('c41').property(single, 'name', 'c41').addV('X').as('c42').property(single, 'name', 'c42').addE('KNOWS').from('a').to('b1').addE('KNOWS').from('a').to('b2').addE('FOLLOWS').from('a').to('b3').addE('FOLLOWS').from('a').to('b4').addE('FRIEND').from('b1').to('c11').addE('FRIEND').from('b1').to('c12').addE('FRIEND').from('b2').to('c21').addE('FRIEND').from('b2').to('c22').addE('FRIEND').from('b3').to('c31').addE('FRIEND').from('b3').to('c32').addE('FRIEND').from('b4').to('c41').addE('FRIEND').from('b4').to('c42').addE('FRIEND').from('b1').to('b2').addE('FRIEND').from('b2').to('b3').addE('FRIEND').from('b3').to('b4').addE('FRIEND').from('b4').to('b1').barrier().limit(0)

When executing query: 0.004
WITH [1, 2] AS xs, [3, 4] AS ys, [5, 6] AS zs
UNWIND xs AS x
UNWIND ys AS y
UNWIND zs AS z
RETURN *

16:07:31.145 [Test worker] DEBUG o.a.t.g.driver.Client - WITH [1, 2] AS xs, [3, 4] AS ys, [5, 6] AS zs UNWIND xs AS x UNWIND ys AS y UNWIND zs AS z RETURN *}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.145 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: WITH [1, 2] AS xs, [3, 4] AS ys, [5, 6] AS zs UNWIND xs AS x UNWIND ys AS y UNWIND zs AS z RETURN * 16:07:31.148 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').project('xs', 'ys', 'zs').by(__.project(' GENERATED1', ' GENERATED2').by(__.constant(1)).by(__.constant(2)).select(values)).by(__.project(' GENERATED3', ' GENERATED4').by(__.constant(3)).by(__.constant(4)).select(values)).by(__.project(' GENERATED5', ' GENERATED6').by(__.constant(5)).by(__.constant(6)).select(values)).as(' GENERATED7').select('xs').as('xs').select(' GENERATED7').select('ys').as('ys').select(' GENERATED7').select('zs').as('zs').select('xs').unfold().as('x').select('ys').unfold().as('y').select('zs').unfold().as('z').select('x', 'xs', 'y', 'ys', 'z', 'zs').project('x', 'xs', 'y', 'ys', 'z', 'zs').by(__.select('x')).by(__.select('xs')).by(__.select('y')).by(__.select('ys')).by(__.select('z')).by(__.select('zs'))

Then the result should be: 0.000
x xs y ys z zs
1 [1, 2] 3 [3, 4] 5 [5, 6]
1 [1, 2] 3 [3, 4] 6 [5, 6]
1 [1, 2] 4 [3, 4] 5 [5, 6]
1 [1, 2] 4 [3, 4] 6 [5, 6]
2 [1, 2] 3 [3, 4] 5 [5, 6]
2 [1, 2] 3 [3, 4] 6 [5, 6]
2 [1, 2] 4 [3, 4] 5 [5, 6]
2 [1, 2] 4 [3, 4] 6 [5, 6]
And no side effects 0.013

16:07:31.150 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.150 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:07:31.152 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:07:31.153 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.153 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:07:31.155 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:07: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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07: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:07:31.158 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 16:07:31.159 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.160 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().outE().as('E').properties().project('relId', 'key', 'value').by(__.select('E').id()).by(__.key()).by(__.value())}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/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:07:31.163 [Test worker] DEBUG o.a.t.g.driver.Client - g.V().drop()}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}}

And parameters are: 0.000
props [{login: 'login1', name: 'name1'}, {login: 'login2', name: 'name2'}]
When executing query: 0.005
UNWIND $props AS prop
MERGE (p:Person {login: prop.login})
SET p.name = prop.name
RETURN p.name, p.login

16:07:31.183 [Test worker] DEBUG o.a.t.g.driver.Client - UNWIND $props AS prop MERGE (p:Person {login: prop.login}) SET p.name = prop.name RETURN p.name, p.login, bindings={props=[{login=login1, name=name1}, {login=login2, name=name2}]}}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.183 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: UNWIND $props AS prop MERGE (p:Person {login: prop.login}) SET p.name = prop.name RETURN p.name, p.login 16:07:31.187 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.inject(' cypher.start').choose(__.constant([[name: 'name1', login: 'login1'], [name: 'name2', login: 'login2']]), __.constant([[name: 'name1', login: 'login1'], [name: 'name2', login: 'login2']]), __.constant(' cypher.null')).unfold().as('prop').choose(__.V().as('p').hasLabel('Person').where(__.project(' GENERATED4', ' GENERATED5').by(__.select('prop')).by(__.constant('login')).select(values).map(cypherContainerIndex()).is(neq(' cypher.null')).as(' GENERATED3').select('p').values('login').where(eq(' GENERATED3'))), __.V().as('p').hasLabel('Person').where(__.project(' GENERATED4', ' GENERATED5').by(__.select('prop')).by(__.constant('login')).select(values).map(cypherContainerIndex()).is(neq(' cypher.null')).as(' GENERATED3').select('p').values('login').where(eq(' GENERATED3'))), __.identity().addV('Person').as('p').property(single, 'login', __.project(' GENERATED1', ' GENERATED2').by(__.select('prop')).by(__.constant('login')).select(values).map(cypherContainerIndex()))).select('p').choose(neq(' cypher.null'), __.choose(__.project(' GENERATED6', ' GENERATED7').by(__.select('prop')).by(__.constant('name')).select(values).map(cypherContainerIndex()).is(neq(' cypher.null')).unfold(), __.property(single, 'name', __.project(' GENERATED6', ' GENERATED7').by(__.select('prop')).by(__.constant('name')).select(values).map(cypherContainerIndex())), __.sideEffect(__.properties('name').drop())), __.constant(' cypher.null')).select('p').project('p.name', 'p.login').by(__.choose(neq(' cypher.null'), __.choose(__.values('name'), __.values('name'), __.constant(' cypher.null')), __.constant(' cypher.null'))).by(__.choose(neq(' cypher.null'), __.choose(__.values('login'), __.values('login'), __.constant(' cypher.null')), __.constant(' cypher.null')))

Then the result should be: 0.000
p.name p.login
'name1' 'login1'
'name2' 'login2'
And the side effects should be: 0.012
+nodes 2
+labels 1
+properties 4

16:07:31.188 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH (n) RETURN id(n)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.188 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) RETURN id(n) 16:07:31.190 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().project('id(n)').by(__.id()) 16:07:31.190 [Test worker] DEBUG o.a.t.g.driver.Client - MATCH ()-[r]->() RETURN id(r)}} to - Connection{host=Host{address=localhost/127.0.0.1:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.191 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH ()-[r]->() RETURN id(r) 16:07:31.193 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.E().project('id(r)').by(__.id()) 16:07:31.195 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.195 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Cypher: MATCH (n) UNWIND labels(n) AS label RETURN DISTINCT label 16:07:31.197 [gremlin-server-worker-1] INFO o.o.g.s.o.c.CypherOpProcessor - Gremlin: g.V().label().is(neq('vertex')).project('label').by(__.identity()).dedup() 16:07:31.197 [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:36913, hostUri=ws://localhost:36913/gremlin}} 16:07:31.198 [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:36913, hostUri=ws://localhost:36913/gremlin}} -labels: 0 +labels: 1 +nodes: 2 -nodes: 0 -properties: 0 +properties: 4 -relationships: 0 +relationships: 0