[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16094814#comment-16094814 ] Jason Plurad commented on TINKERPOP-1716: - Thanks for investigating. Using GraphSON serializer with 3.2.x seems like a reasonable solution. > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad >Assignee: stephen mallette > Fix For: 3.3.0 > > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16094662#comment-16094662 ] Marko A. Rodriguez commented on TINKERPOP-1716: --- I agree. It was turning into a rats nest when I had my go at it. I would close this as FIXED for 3.3.0. > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16094569#comment-16094569 ] stephen mallette commented on TINKERPOP-1716: - This is fix is turning into a mess. The reason this works on master is that {{Bytecode}} was made mutable for 3.3.0. Without that I have to add weird hacky things to make this work. I'm starting to think we should not try to backport this fix to 3.2.x. > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16092956#comment-16092956 ] stephen mallette commented on TINKERPOP-1716: - The problems with this is related to TINKERPOP-1679 - I'm going to opt out the three failing tests so that we can get a PR up. > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16082455#comment-16082455 ] Marko A. Rodriguez commented on TINKERPOP-1716: --- Note that I have created a branch that has a "near fix" for TinkerPop 3.2.x. https://github.com/apache/tinkerpop/tree/TINKERPOP-1716 Something is still busted and I suspect this is the reason [~spmallette] didn't register strategies in TinkerPop 3.2.x. At this point, I'll let [~spmallette] finish off this branch. If he can make it work, great. Else, the real fix is in TinkerPop 3.3.x. > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16082333#comment-16082333 ] stephen mallette commented on TINKERPOP-1716: - in 3.2.x the default is gryo 1.0 - as of current master it should be 3.0. if something is not registered in 1.0 that would fix the bug i guess the additional registrations should be added. We've allowed that pattern of "breaking upgrade" in 1.0 so I suppose we can continue with it. > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16080951#comment-16080951 ] Marko A. Rodriguez commented on TINKERPOP-1716: --- Hm. Yea -- order of strategy execution shouldn't matter as its only the Bytecode going over the wire from RemoteStrategy. I don't know whats going on. Perhaps {{lt(30)}} is some "number format issue" ?? (like long vs. int). Have you tried other filters? Perhaps just `hasLabel()` style filters? > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16080603#comment-16080603 ] Simone Cattani commented on TINKERPOP-1716: --- {code}[[withStrategies(SubgraphStrategy)], [V(), valueMap()]]{code} > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16080553#comment-16080553 ] Marko A. Rodriguez commented on TINKERPOP-1716: --- Can you give me the result of: {code} System.out.println(graph.traversal().withRemote(DriverRemoteConnection.using(cluster, "g")).withStrategies(SubgraphStrategy.build().vertices(__.has("age", lte(30))).create()).V().valueMap().asAdmin().getBytecode()) {code} > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16080317#comment-16080317 ] Marko A. Rodriguez commented on TINKERPOP-1716: --- Note that we have test cases in Gremlin-Python that verify the correct behavior for {{SubgraphStrategy}} and its use {{withRemote()}}. Note that the second test case was just added as unlike the first, it does only edge label filtering. {code} g = Graph().traversal().withRemote(remote_connection). \ withStrategies(SubgraphStrategy(vertices=__.hasLabel("person"), edges=__.hasLabel("created"))) assert 4 == g.V().count().next() assert 0 == g.E().count().next() assert 1 == g.V().label().dedup().count().next() assert "person" == g.V().label().dedup().next() # g = Graph().traversal().withRemote(remote_connection). \ withStrategies(SubgraphStrategy(edges=__.hasLabel("created"))) assert 6 == g.V().count().next() assert 4 == g.E().count().next() assert 1 == g.E().label().dedup().count().next() assert "created" == g.E().label().dedup().next() {code} Why its not working in the example you provided using Gremlin-Java isn't clear. I suspect there is a problem with strategy ordering. That is, both {{RemoteStrategy}} and {{SubgraphStrategy}} are {{DecorationStrategies}}. I don't see anywhere where its guaranteed to execute after {{RemoteStrategy}}. Can you verify execution order of strategies with {{.explain()}}. Finally, if that is the problem, then we need to make sure all {{DecorationStrategies}} execute after {{RemoteStrategy}}. In the future, we should treat {{RemoteStrategy}} special (as not a {{DecorationStrategy}}). > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16080383#comment-16080383 ] Simone Cattani commented on TINKERPOP-1716: --- Of course, thanks, I will wait for the "fixed" branch > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16080372#comment-16080372 ] Marko A. Rodriguez commented on TINKERPOP-1716: --- So that appears to be the bug. {{RemoteStrategy}} should go before all other {{DecorationStrategies}}. Given that its a "random ordering issue," I can make a branch that fixes it, but I can't test it. Would you be willing to test a branch to ensure that the ordering works and that your results are as expected? > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16080389#comment-16080389 ] Marko A. Rodriguez commented on TINKERPOP-1716: --- Actually, looking at the code, it doesn't matter when {{RemoteStrategy}} is executed as the original bytecode is what is sent over... :/ ... hmm. What version of TinkerPop are you using and can you provide your full query with output results. I would prefer if you could do it over {{TinkerFactory.createModern()}} as then I can manually set my strategies to look like yours and test locally. > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16080365#comment-16080365 ] Simone Cattani commented on TINKERPOP-1716: --- I tried to get the explain description from my use case. {code} Traversal Explanation === Original Traversal [GraphStep(vertex,[]), HasStep([id.eq(italia)]), VertexStep(OUT,[region],vertex), PropertiesStep([capital],value)] SubgraphStrategy [D] [GraphStep(vertex,[]), HasStep([id.eq(italia)]), VertexStep(OUT,[region],edge), TraversalFilterStep([OrStep([[NotStep([PropertiesStep([from],value)])], [HasStep([from.lte(1910)]), OrStep([[HasStep([to.eq(-1)])], [HasStep([to.gt(1910)])]])]])]), EdgeVertexStep(IN), PropertiesStep([capital],property), TraversalFilterStep([OrStep([[NotStep([PropertiesStep([from],value)])], [HasStep([from.lte(1910)]), OrStep([[HasStep([to.eq(-1)])], [HasStep([to.gt(1910)])]])]])]), PropertyValueStep] RemoteStrategy [D] [RemoteStep(DriverServerConnection-gremlin-server/127.0.0.1:8182 [graph=g])] Final Traversal [RemoteStep(DriverServerConnection-gremlin-server/127.0.0.1:8182 [graph=g])] {code} Please, tell me if you what my specific query. > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (TINKERPOP-1716) Traversal strategies are not applied with remote in Gremlin Console
[ https://issues.apache.org/jira/browse/TINKERPOP-1716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16080321#comment-16080321 ] Marko A. Rodriguez commented on TINKERPOP-1716: --- >From what I can tell, {{RemoteStrategy}} (fortunately and perhaps randomly for >my computer) executes before {{SubgraphStrategy}}. {code} gremlin> graph = EmptyGraph.instance() ==>emptygraph[empty] gremlin> g = graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) ==>graphtraversalsource[emptygraph[empty], standard] gremlin> g.V().explain() ==>Traversal Explanation == Original Traversal [GraphStep(vertex,[])] RemoteStrategy [D] [RemoteStep(DriverServerConnection-localhost/127.0.0.1:8182 [graph=g])] SubgraphStrategy [D] [RemoteStep(DriverServerConnection-localhost/127.0.0.1:8182 [graph=g])] Final Traversal [RemoteStep(DriverServerConnection-localhost/127.0.0.1:8182 [graph=g])] gremlin> {code} Also note that we run the entire {{ProcessTestSuite}} over {{RemoteStrategy}} so more digging is going to be required by the submitter to identify where the problem is coming from. > Traversal strategies are not applied with remote in Gremlin Console > --- > > Key: TINKERPOP-1716 > URL: https://issues.apache.org/jira/browse/TINKERPOP-1716 > Project: TinkerPop > Issue Type: Bug > Components: server >Affects Versions: 3.2.3, 3.2.5 >Reporter: Jason Plurad > > Originally from a [StackOverflow > post|https://stackoverflow.com/questions/44907843/can-strategies-be-used-with-remote-traversal-in-gremlin]: > This subgraph strategy works (only the `battled` edges are returned) with a > remote from Gremlin-Python: > {noformat} > from gremlin_python import statics > from gremlin_python.structure.graph import Graph > from gremlin_python.process.graph_traversal import __ > from gremlin_python.process.strategies import * > from gremlin_python.driver.driver_remote_connection import > DriverRemoteConnection > statics.load_statics(globals()) > graph = Graph() > g = > graph.traversal().withRemote(DriverRemoteConnection('ws://localhost:8182/gremlin','g')).withStrategies(SubgraphStrategy(edges=__.hasLabel('battled'))) > g.E().label().groupCount().toList() > {noformat} > But the subgraph strategy does not work (all edges are returned) with a > remote from the Gremlin Console: > {noformat} > graph = EmptyGraph.instance() > g = > graph.traversal().withRemote('conf/remote-graph.properties').withStrategies(SubgraphStrategy.build().edges(__.hasLabel("battled")).create()) > g.E().label().groupCount().toList() > {noformat} -- This message was sent by Atlassian JIRA (v6.4.14#64029)