You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "stephen mallette (JIRA)" <ji...@apache.org> on 2019/03/01 14:06:00 UTC

[jira] [Assigned] (TINKERPOP-2112) Folding in property() step is not being optimally performed

     [ https://issues.apache.org/jira/browse/TINKERPOP-2112?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

stephen mallette reassigned TINKERPOP-2112:
-------------------------------------------

    Assignee: stephen mallette  (was: Daniel Kuppitz)
     Summary: Folding in property() step is not being optimally performed  (was: Folding in property() step is screwed)

> Folding in property() step is not being optimally performed
> -----------------------------------------------------------
>
>                 Key: TINKERPOP-2112
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2112
>             Project: TinkerPop
>          Issue Type: Bug
>          Components: process
>    Affects Versions: 3.3.4
>            Reporter: Daniel Kuppitz
>            Assignee: stephen mallette
>            Priority: Major
>
> Somehow we mess up the folding in {{property()}} step when it's used with tokens. I think there's just a missing {{if}} branch, but needs further investigation.
> {noformat}
> gremlin> g = TinkerGraph.open().traversal()
> ==>graphtraversalsource[tinkergraph[vertices:0 edges:0], standard]
> gremlin> g.addV().property(T.id , 'id').property(single, 'k', 'v')
> ==>v[id]
> gremlin> g.addV().property(single, 'k', 'v').property(T.id , 'id')
> org.apache.tinkerpop.gremlin.structure.T$2 cannot be cast to java.lang.String
> Type ':help' or ':h' for help.
> Display stack trace? [yN]
> {noformat}
> {noformat}
> gremlin> g = TinkerGraph.open().traversal()
> ==>graphtraversalsource[tinkergraph[vertices:0 edges:0], standard]
> gremlin> g.addV().property(T.id , 'id').property(single, 'k', 'v').explain()
> ==>Traversal Explanation
> =========================================================================================================
> Original Traversal                 [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> ConnectiveStrategy           [D]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> MatchPredicateStrategy       [O]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> FilterRankingStrategy        [O]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> InlineFilterStrategy         [O]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> IncidentToAdjacentStrategy   [O]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> AdjacentToIncidentStrategy   [O]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> RepeatUnrollStrategy         [O]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> PathRetractionStrategy       [O]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> CountStrategy                [O]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> LazyBarrierStrategy          [O]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> TinkerGraphCountStrategy     [P]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> TinkerGraphStepStrategy      [P]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> ProfileStrategy              [F]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> StandardVerificationStrategy [V]   [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> Final Traversal                    [AddVertexStartStep({id=[id]}), AddPropertyStep({key=[k], value=[v]})]
> gremlin> g.addV().property(single, 'k', 'v').property(T.id , 'id').explain()
> ==>Traversal Explanation
> ===========================================================================================================================================
> Original Traversal                 [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> ConnectiveStrategy           [D]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> MatchPredicateStrategy       [O]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> FilterRankingStrategy        [O]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> InlineFilterStrategy         [O]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> IncidentToAdjacentStrategy   [O]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> AdjacentToIncidentStrategy   [O]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> RepeatUnrollStrategy         [O]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> PathRetractionStrategy       [O]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> CountStrategy                [O]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> LazyBarrierStrategy          [O]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> TinkerGraphCountStrategy     [P]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> TinkerGraphStepStrategy      [P]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> ProfileStrategy              [F]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> StandardVerificationStrategy [V]   [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> Final Traversal                    [AddVertexStartStep({}), AddPropertyStep({key=[k], value=[v]}), AddPropertyStep({key=[id], value=[id]})]
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)