Hi, This is on 3.2.3
I have been investigating why `DedupTest.g_V_asXaX_repeatXbothX_timesX3X_emit_asXbX_group_byXselectXaXX_byXselectXbX_dedup_order_byXidX_foldX_selectXvaluesX_unfold_dedup` fails on Sqlg. It is a fairly recently added test. My investigation so far has narrowed the problem to the `PathRetractionStrategy` On the modern graph, GraphTraversal<Vertex, Map<Vertex, Collection<Vertex>>> traversal = g.traversal() .V().as("a") .out().as("b") .<Vertex, Collection<Vertex>>group().by(select("a")) .by(select("b")); printTraversalForm(traversal); Outputs the following on TinkerGraph pre-strategy:[GraphStep(vertex,[])@[a], VertexStep(OUT,vertex)@[b], GroupStep([SelectOneStep(a)],[SelectOneStep(b)])] post-strategy:[TinkerGraphStep(vertex,[])@[a], VertexStep(OUT,vertex)@[b], GroupStep([SelectOneStep(a), NoOpBarrierStep(2500)],[SelectOneStep(b), NoOpBarrierStep(2500)])] And on Sqlg pre-strategy:[GraphStep(vertex,[])@[a], VertexStep(OUT,vertex)@[b], GroupStep([SelectOneStep(a)],[SelectOneStep(b)])] post-strategy:[SqlgGraphStepCompiled(vertex,[])@[b], GroupStep([SelectOneStep(a)],[SelectOneStep(b)])] The difference being that Sqlg does not have the `NoOpBarrierStep` inserted. For TinkerGraph the `NoOpBarrierStep` is being inserted in the `PathRetractionStrategy` on line 113 However this does not happen for Sqlg as Sqlg's GraphStep has `TraverRequirement.PATH` as a requirement which prevents `PathRetractionStrategy` from doing what it does. Is this a bug of sorts? Should Sqlg be adding in the `NoOpBarrierStep`? Thanks Pieter