[ 
https://issues.apache.org/jira/browse/TINKERPOP-1498?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15565668#comment-15565668
 ] 

Daniel Kuppitz commented on TINKERPOP-1498:
-------------------------------------------

Simple test case:

{code}
__.inject(1,2,3).choose(select("x"), select("x"), constant("x")).store("x")
{code}

Stack trace (line numbers refer to {{tp31}} code):

{noformat}
java.lang.StackOverflowError
        at 
java.util.LinkedHashMap$LinkedEntryIterator.next(LinkedHashMap.java:752)
        at 
java.util.LinkedHashMap$LinkedEntryIterator.next(LinkedHashMap.java:750)
        at java.util.AbstractMap.toString(AbstractMap.java:554)
        at 
org.apache.tinkerpop.gremlin.process.traversal.step.util.BulkSet.toString(BulkSet.java:145)
        at java.lang.String.valueOf(String.java:2994)
        at java.lang.StringBuilder.append(StringBuilder.java:131)
        at java.util.AbstractMap.toString(AbstractMap.java:557)
        at 
org.apache.tinkerpop.gremlin.process.traversal.step.util.BulkSet.toString(BulkSet.java:145)
        at java.lang.String.valueOf(String.java:2994)
        at java.lang.StringBuilder.append(StringBuilder.java:131)
        at java.util.AbstractMap.toString(AbstractMap.java:557)
        at 
org.apache.tinkerpop.gremlin.process.traversal.step.util.BulkSet.toString(BulkSet.java:145)
        at java.lang.String.valueOf(String.java:2994)
        at java.lang.StringBuilder.append(StringBuilder.java:131)
        at java.util.AbstractMap.toString(AbstractMap.java:557)
        at 
org.apache.tinkerpop.gremlin.process.traversal.step.util.BulkSet.toString(BulkSet.java:145)
...
{noformat}

What I actually expect from the test query:

{noformat}
gremlin> __.inject(1,2,3).choose(select("x"), select("x"), 
constant("x")).store("x")
==>x
==>{x=1}
==>{x=1, {x=1}=1}
{noformat}

> choose() can throw StackOverflowErrors
> --------------------------------------
>
>                 Key: TINKERPOP-1498
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1498
>             Project: TinkerPop
>          Issue Type: Bug
>          Components: process
>    Affects Versions: 3.2.2
>            Reporter: Daniel Kuppitz
>
> {noformat}
> gremlin> g = TinkerFactory.createModern().traversal()
> ==>graphtraversalsource[tinkergraph[vertices:6 edges:6], standard]
> gremlin> g.V().choose(select("x"), select("x"), constant("not x")).store("x")
> java.lang.StackOverflowError
> Type ':help' or ':h' for help.
> Display stack trace? [yN]
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to