TinkerPop Gremlin server: 3.3.3 Remote Client: v 3.3.3 It seems like the groovy closure is applied on the Property Name as well in gremlin query. This indicates that the query responds with all Vertices that match the Label alone. When I apply below query; I get
gremlin> client.submit("g.V().hasLabel('XYZ').filter{it.get().property('SCOPE').toString().contains('SCOPE')}") ==>result{object=v[352] class=org.apache.tinkerpop.gremlin.structure.util.detached.DetachedVertex} ==>result{object=v[325] class=org.apache.tinkerpop.gremlin.structure.util.detached.DetachedVertex} ==>result{object=v[267] class=org.apache.tinkerpop.gremlin.structure.util.detached.DetachedVertex} ==>result{object=v[306] class=org.apache.tinkerpop.gremlin.structure.util.detached.DetachedVertex} ==>result{object=v[371] class=org.apache.tinkerpop.gremlin.structure.util.detached.DetachedVertex} ==>result{object=v[248] class=org.apache.tinkerpop.gremlin.structure.util.detached.DetachedVertex} ==>result{object=v[287] class=org.apache.tinkerpop.gremlin.structure.util.detached.DetachedVertex}