Simone Cattani created TINKERPOP-1804:
-----------------------------------------

             Summary: Has step doesn't consider strategy filters
                 Key: TINKERPOP-1804
                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1804
             Project: TinkerPop
          Issue Type: Bug
    Affects Versions: 3.2.3
            Reporter: Simone Cattani


Has step, when used in a traversal defined with strategies, doesn't consider 
filters applied on properties by the strategies

Let's consider the crew example adding an old location for Marko, in Seattle, 
the current Matthias' location.

{code}
graph = TinkerFactory.createTheCrew()
g = graph.traversal()
g.V().has('name', 'marko').property('location', 'seattle', 'startTime', 1994, 
'endTime', 1997)
{code}

Defining a strategy that considers just current location I can correctly obtain 
the list of current locations
{code}
g.withStrategies(SubgraphStrategy.build().vertexProperties(or(hasLabel(neq('location')),hasNot('endTime'))).create()).V().hasLabel("person").valueMap()
==>[name:[marko],location:[santa fe]]
==>[name:[stephen],location:[purcellville]]
==>[name:[matthias],location:[seattle]]
==>[name:[daniel],location:[aachen]]
{code}

But requiring people (currently) living in Seattle, I obtain Marko, too

{code}
g.withStrategies(SubgraphStrategy.build().vertexProperties(or(hasLabel(neq('location')),hasNot('endTime'))).create()).V().hasLabel("person").has('location',
 'seattle').valueMap()

==>[name:[marko],location:[santa fe]]
==>[name:[matthias],location:[seattle]]
{code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to