You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "stephen mallette (JIRA)" <ji...@apache.org> on 2015/07/29 14:00:05 UTC
[jira] [Commented] (TINKERPOP3-575) Consider implementing a
RemoteGraph
[ https://issues.apache.org/jira/browse/TINKERPOP3-575?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14645936#comment-14645936 ]
stephen mallette commented on TINKERPOP3-575:
---------------------------------------------
I'm not sure how compliant {{RemoteGraph}} would need to be with the test suite, but there would potentially need to be some changes to error handling in the Gremlin Server protocol to get {{RemoteGraph}} fully compliant with it. Gremlin Server doesn't send back java exceptions - it generalizes errors so that they are useful to any programming language. So you lose some specificity in the exceptions thrown.
> Consider implementing a RemoteGraph
> -----------------------------------
>
> Key: TINKERPOP3-575
> URL: https://issues.apache.org/jira/browse/TINKERPOP3-575
> Project: TinkerPop 3
> Issue Type: Improvement
> Components: server
> Affects Versions: 3.0.0-incubating
> Reporter: Bryn Cooke
>
> Consider implementing a graph that allows remote execution of portions of a gremlin query and locally executes steps that have lambda expressions.
> Graph r = new RemoteGraph("192.168.0.10") //Gremlin server
> r.V().has("age", 35).out().in().sideEffect(v->{do something});
> gets optimised to
> r.remoteStep("g.V().has("age", 35).out().in()").sideEffect(v->{do something});
> The remote step would be transmitted to the server for execution and the results pulled back allow the side effect to take place locally.
> All remote step optimisation is done via traversal strategy.
> Things to think about are:
> Transactions have to span multiple requests to the server.
> Strategies only work on the server side.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)