[ https://issues.apache.org/jira/browse/TINKERPOP-1380?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Kuppitz updated TINKERPOP-1380: -------------------------------------- Description: I stumbled across this issue when I tried to solve a problem on the mailing list. It seems like a lot of steps need to be involved in order to make it reproducible. {code} gremlin> :set max-iteration 10 gremlin> gremlin> g = TinkerFactory.createModern().traversal().withComputer() ==>graphtraversalsource[tinkergraph[vertices:6 edges:6], graphcomputer] gremlin> g.V().repeat(both()).until(cyclicPath()).path().aggregate("x").cap("x").unfold().dedup() ==>[v[1], v[2], v[1]] ==>[v[1], v[2], v[1]] ==>[v[1], v[3], v[1]] ==>[v[1], v[3], v[1]] ==>[v[1], v[4], v[1]] ==>[v[1], v[4], v[1]] ==>[v[2], v[1], v[2]] ==>[v[2], v[1], v[2]] ==>[v[3], v[1], v[3]] ==>[v[3], v[1], v[3]] ... {code} I can't reproduce it w/o using {{repeat()}}, {{aggregate()}} or {{cap()}}. It is reproducible without {{path()}} though. And then it even gets a little worse; check this out: {code} gremlin> g.V().repeat(both()).until(cyclicPath()).aggregate("x").cap("x").unfold().dedup() ==>v[1] ==>v[1] ==>v[2] ==>v[2] ==>v[3] ==>v[3] ==>v[4] ==>v[4] ==>v[5] ==>v[5] ... gremlin> g.V().repeat(both()).until(cyclicPath()).aggregate("x").cap("x").unfold().dedup().dedup() java.lang.RuntimeException: java.lang.IllegalStateException: java.lang.IllegalArgumentException: The memory can only be set() during vertex program setup and terminate: x Display stack trace? [yN] {code} The exception occurs only in OLAP mode, but also for more meaningful patterns ({{.dedup().dedup()}} really doesn't make much sense). For a better / larger example see: https://groups.google.com/d/msg/gremlin-users/NMXExuvDjt0/ps7bJDYwAQAJ was: I stumbled across this issue when I tried to solve a problem on the mailing list. It seems like a lot of steps need to be involved in order to make it reproducible. {code} gremlin> :set max-iteration 10 gremlin> gremlin> g = TinkerFactory.createModern().traversal().withComputer() ==>graphtraversalsource[tinkergraph[vertices:6 edges:6], graphcomputer] gremlin> g.V().repeat(both()).until(cyclicPath()).path().aggregate("x").cap("x").unfold().dedup() ==>[v[1], v[2], v[1]] ==>[v[1], v[2], v[1]] ==>[v[1], v[3], v[1]] ==>[v[1], v[3], v[1]] ==>[v[1], v[4], v[1]] ==>[v[1], v[4], v[1]] ==>[v[2], v[1], v[2]] ==>[v[2], v[1], v[2]] ==>[v[3], v[1], v[3]] ==>[v[3], v[1], v[3]] ... {code} I can't reproduce it w/o using {{repeat()}}, {{aggregate()}} or {{cap()}}. It is reproducible without {{path()}} though. And then it even gets a little worse; check this out: {code} gremlin> g.V().repeat(both()).until(cyclicPath()).aggregate("x").cap("x").unfold().dedup() ==>v[1] ==>v[1] ==>v[2] ==>v[2] ==>v[3] ==>v[3] ==>v[4] ==>v[4] ==>v[5] ==>v[5] ... gremlin> g.V().repeat(both()).until(cyclicPath()).aggregate("x").cap("x").unfold().dedup().dedup() java.lang.RuntimeException: java.lang.IllegalStateException: java.lang.IllegalArgumentException: The memory can only be set() during vertex program setup and terminate: x Display stack trace? [yN] {code} The exception occurs only in OLAP mode, but also for more meaningful patterns ({{.dedup().dedup()}} really doesn't make much sense) > dedup() doesn't dedup in rare cases > ----------------------------------- > > Key: TINKERPOP-1380 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1380 > Project: TinkerPop > Issue Type: Bug > Components: process > Affects Versions: 3.2.1 > Reporter: Daniel Kuppitz > > I stumbled across this issue when I tried to solve a problem on the mailing > list. It seems like a lot of steps need to be involved in order to make it > reproducible. > {code} > gremlin> :set max-iteration 10 > gremlin> > gremlin> g = TinkerFactory.createModern().traversal().withComputer() > ==>graphtraversalsource[tinkergraph[vertices:6 edges:6], graphcomputer] > gremlin> > g.V().repeat(both()).until(cyclicPath()).path().aggregate("x").cap("x").unfold().dedup() > ==>[v[1], v[2], v[1]] > ==>[v[1], v[2], v[1]] > ==>[v[1], v[3], v[1]] > ==>[v[1], v[3], v[1]] > ==>[v[1], v[4], v[1]] > ==>[v[1], v[4], v[1]] > ==>[v[2], v[1], v[2]] > ==>[v[2], v[1], v[2]] > ==>[v[3], v[1], v[3]] > ==>[v[3], v[1], v[3]] > ... > {code} > I can't reproduce it w/o using {{repeat()}}, {{aggregate()}} or {{cap()}}. It > is reproducible without {{path()}} though. And then it even gets a little > worse; check this out: > {code} > gremlin> > g.V().repeat(both()).until(cyclicPath()).aggregate("x").cap("x").unfold().dedup() > ==>v[1] > ==>v[1] > ==>v[2] > ==>v[2] > ==>v[3] > ==>v[3] > ==>v[4] > ==>v[4] > ==>v[5] > ==>v[5] > ... > gremlin> > g.V().repeat(both()).until(cyclicPath()).aggregate("x").cap("x").unfold().dedup().dedup() > java.lang.RuntimeException: java.lang.IllegalStateException: > java.lang.IllegalArgumentException: The memory can only be set() during > vertex program setup and terminate: x > Display stack trace? [yN] > {code} > The exception occurs only in OLAP mode, but also for more meaningful patterns > ({{.dedup().dedup()}} really doesn't make much sense). > For a better / larger example see: > https://groups.google.com/d/msg/gremlin-users/NMXExuvDjt0/ps7bJDYwAQAJ -- This message was sent by Atlassian JIRA (v6.3.4#6332)