[jira] [Reopened] (TINKERPOP-2767) Repeat Out Times traversal hangs indefinitely on first execution
[ https://issues.apache.org/jira/browse/TINKERPOP-2767?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Yang Xia reopened TINKERPOP-2767: - > Repeat Out Times traversal hangs indefinitely on first execution > > > Key: TINKERPOP-2767 > URL: https://issues.apache.org/jira/browse/TINKERPOP-2767 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.5.3 > Environment: Windows 10 >Reporter: Simon Zhao >Priority: Major > Fix For: 3.6.3, 3.5.6 > > > Originally encountered when fixing TINKERPOP-2754 > > The following traversal in JS seems to cause hanging the first time you run > it on a newly launched gremlin-server (3.5.3) via docker > > {{await g.V('1').repeat(_.out()).times(1500).next();}} > > The same hanging occurs in gremlin-go. > > {code:java} > _, err = g.With("evaluationTimeout", > 1000).V("1").Repeat(gremlingo.T__.Out()).Times(int32(1500)).Next() {code} > > The timeout is optional, but indicates that something is going wrong since it > is not returning. Interestingly enough, if the timeout is very low, then it > won't hang because it will say the timeout was exceeded. This indicates that > if the traversal is completed within the timeout, it's just not returning for > some reason on the first call. > > If you were to write a script and invoke this snippet of code, it will hang. > If you forcefully terminate the script and rerun it, then it doesn't hang. > > main.go > {code:java} > package main > import ( >gremlingo "github.com/apache/tinkerpop/gremlin-go/v3/driver" >"log" > ) > func main() { >driver, err := > gremlingo.NewDriverRemoteConnection("ws://localhost:45940/gremlin") >if err != nil { > log.Print("Err creating DRC") > return >} >defer driver.Close() >log.Println("Start") >g := gremlingo.Traversal_().WithRemote(driver) >LABEL := "test" >_, err = g.V().HasLabel(LABEL).Drop().Next() >_, err = g.AddV(LABEL).Property(gremlingo.T.Id, "1").Next() >_, err = g.AddV(LABEL).Property(gremlingo.T.Id, "2").Next() >_, err = > g.AddE(LABEL).From(gremlingo.T__.V("1")).To(gremlingo.T__.V("2")).Property(gremlingo.T.Id, > "e1").Next() >_, err = > g.AddE(LABEL).From(gremlingo.T__.V("2")).To(gremlingo.T__.V("1")).Property(gremlingo.T.Id, > "e2").Next() >if err != nil { > log.Println("Error during setup") > return >} >log.Println("Start the problematic traversal") >_, err = g.With("evaluationTimeout", > 1000).V("1").Repeat(gremlingo.T__.Out()).Times(int32(1500)).Next() >if err != nil { > log.Println("Error with the problematic traversal, but we didn't hang") > return >} >log.Println("End") > } {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Reopened] (TINKERPOP-2767) Repeat Out Times traversal hangs indefinitely on first execution
[ https://issues.apache.org/jira/browse/TINKERPOP-2767?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Yang Xia reopened TINKERPOP-2767: - We need to address changes needed in 3.6-dev for this issue. > Repeat Out Times traversal hangs indefinitely on first execution > > > Key: TINKERPOP-2767 > URL: https://issues.apache.org/jira/browse/TINKERPOP-2767 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.5.3 > Environment: Windows 10 >Reporter: Simon Zhao >Priority: Major > Fix For: 3.5.6 > > > Originally encountered when fixing TINKERPOP-2754 > > The following traversal in JS seems to cause hanging the first time you run > it on a newly launched gremlin-server (3.5.3) via docker > > {{await g.V('1').repeat(_.out()).times(1500).next();}} > > The same hanging occurs in gremlin-go. > > {code:java} > _, err = g.With("evaluationTimeout", > 1000).V("1").Repeat(gremlingo.T__.Out()).Times(int32(1500)).Next() {code} > > The timeout is optional, but indicates that something is going wrong since it > is not returning. Interestingly enough, if the timeout is very low, then it > won't hang because it will say the timeout was exceeded. This indicates that > if the traversal is completed within the timeout, it's just not returning for > some reason on the first call. > > If you were to write a script and invoke this snippet of code, it will hang. > If you forcefully terminate the script and rerun it, then it doesn't hang. > > main.go > {code:java} > package main > import ( >gremlingo "github.com/apache/tinkerpop/gremlin-go/v3/driver" >"log" > ) > func main() { >driver, err := > gremlingo.NewDriverRemoteConnection("ws://localhost:45940/gremlin") >if err != nil { > log.Print("Err creating DRC") > return >} >defer driver.Close() >log.Println("Start") >g := gremlingo.Traversal_().WithRemote(driver) >LABEL := "test" >_, err = g.V().HasLabel(LABEL).Drop().Next() >_, err = g.AddV(LABEL).Property(gremlingo.T.Id, "1").Next() >_, err = g.AddV(LABEL).Property(gremlingo.T.Id, "2").Next() >_, err = > g.AddE(LABEL).From(gremlingo.T__.V("1")).To(gremlingo.T__.V("2")).Property(gremlingo.T.Id, > "e1").Next() >_, err = > g.AddE(LABEL).From(gremlingo.T__.V("2")).To(gremlingo.T__.V("1")).Property(gremlingo.T.Id, > "e2").Next() >if err != nil { > log.Println("Error during setup") > return >} >log.Println("Start the problematic traversal") >_, err = g.With("evaluationTimeout", > 1000).V("1").Repeat(gremlingo.T__.Out()).Times(int32(1500)).Next() >if err != nil { > log.Println("Error with the problematic traversal, but we didn't hang") > return >} >log.Println("End") > } {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)