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 2023/03/16 12:18:00 UTC

[jira] [Closed] (TINKERPOP-2910) Throw ExecutionException for E() syntax

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

Stephen Mallette closed TINKERPOP-2910.
---------------------------------------
    Resolution: Not A Problem

Mid-traversal {{E()}} is not a feature until 3.7.0: https://github.com/apache/tinkerpop/pull/1808

> Throw ExecutionException for E() syntax
> ---------------------------------------
>
>                 Key: TINKERPOP-2910
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2910
>             Project: TinkerPop
>          Issue Type: Bug
>          Components: driver, server
>    Affects Versions: 3.6.2
>         Environment: - TinkerGraph Version: 3.6.2
> - Operating system: macOS 13.2.1
> - API/Driver: Java
>            Reporter: Zeyang Zhuang
>            Priority: Major
>
> I first randomly create a graph. Then when I run the following query: `g.E().outV().bothE('el0','el2','el1','el3').as('a').E().where(_{_}.and({_}_.order().by(desc))).as('b').select('a').where('a',eq('b'))` is thrown with an exception. I think this query is syntactically correct, but I keep triggering this kind of problem. I generate the query based on the rule which can be refered from: [https://stackoverflow.com/questions/48067834/gremlin-intersection-operation]. Following this instruction, I think it's allowed to generate this kind of queries.
> *Expected behavior:*
> No exception should be expected to throw. Or futher messages or prompts should be thrown.
> *Actual behavior:*
> A `java.util.concurrent.ExecutionException` is thrown. And I'm not really sure whether this problem should happen so I report this. I succeed this kind of collection transition when replacing `g.E()` with `g.V()`. So I guess there's some problems of `g.E()` syntax. I report just in case
> ```
> TinkerGraph exception :
> java.util.concurrent.ExecutionException: org.apache.tinkerpop.gremlin.driver.exception.ResponseException: No signature of method: org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.DefaultGraphTraversal.E() is applicable for argument types: () values: []
> Possible solutions: is(java.lang.Object), by(groovy.lang.Closure), use([Ljava.lang.Object;), use(java.lang.Class, groovy.lang.Closure), use(java.util.List, groovy.lang.Closure), any()
> ```
> *Steps to reproduce:*
> We create a graph with 10 nodes and 20 edges. We try to make it clear to reproduce the bugs, *{*}hope{*}* to not cause much inconvenience to your reviewing, but we believe the problem does exist.
> Following the following graph data generation query, we can reproduce the bugs:
> Create data
> ```
> Vertex:
> g.addV('vl1').property('vp4','-68840590').property('vp6','0.28608042').property(T.id,0)
> g.addV('vl0').property('vp1','-4526099851750706992').property('vp2',''-68840590'').property('vp6','0.3934142').property(T.id,3)
> g.addV('vl2').property('vp0','0.24273485052245758').property('vp3','332458613').property(T.id,7)
> g.addV('vl1').property('vp3','-2121243585').property('vp6','0.44513875').property(T.id,10)
> g.addV('vl3').property('vp0','0.6844181197636184').property('vp5','-241295905').property('vp4','-2121243585').property(T.id,13)
> g.addV('vl1').property('vp3','-241295905').property(T.id,17)
> g.addV('vl2').property('vp3','-241295905').property(T.id,19)
> g.addV('vl2').property('vp0','0.6844181197636184').property(T.id,21)
> g.addV('vl3').property('vp0','0.24273485052245758').property('vp4','-95423865').property(T.id,23)
> g.addV('vl3').property('vp0','-2.121243585E9').property('vp5','271468552').property('vp4','-767094029').property(T.id,26)
> Edge:
> g.V(3).as('3').V(26).as('26').addE('el0').from('3').to('26')
> g.V(0).as('0').V(7).as('7').addE('el1').from('0').to('7')
> g.V(7).as('7').V(0).as('0').addE('el3').from('7').to('0')
> g.V(21).as('21').V(0).as('0').addE('el3').from('21').to('0')
> g.V(17).as('17').V(21).as('21').addE('el1').from('17').to('21')
> g.V(3).as('3').V(3).as('3').addE('el4').from('3').to('3')
> g.V(3).as('3').V(0).as('0').addE('el2').from('3').to('0')
> g.V(7).as('7').V(10).as('10').addE('el3').from('7').to('10')
> g.V(3).as('3').V(23).as('23').addE('el0').from('3').to('23')
> g.V(3).as('3').V(13).as('13').addE('el0').from('3').to('13')
> g.V(3).as('3').V(10).as('10').addE('el2').from('3').to('10')
> g.V(21).as('21').V(10).as('10').addE('el3').from('21').to('10')
> g.V(3).as('3').V(17).as('17').addE('el2').from('3').to('17')
> g.V(19).as('19').V(10).as('10').addE('el3').from('19').to('10')
> g.V(0).as('0').V(21).as('21').addE('el1').from('0').to('21')
> g.V(7).as('7').V(17).as('17').addE('el3').from('7').to('17')
> g.V(19).as('19').V(17).as('17').addE('el3').from('19').to('17')
> g.V(10).as('10').V(21).as('21').addE('el1').from('10').to('21')
> g.V(0).as('0').V(19).as('19').addE('el1').from('0').to('19')
> g.V(21).as('21').V(17).as('17').addE('el3').from('21').to('17')
> ```



--
This message was sent by Atlassian Jira
(v8.20.10#820010)