[
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)