TINKERPOP-1878 Updates to changelog and code comments
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/1474bfb3 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/1474bfb3 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/1474bfb3 Branch: refs/heads/TINKERPOP-1878 Commit: 1474bfb3f5abd4496538318f7e438dd31a9d115c Parents: ce91c99 Author: Stephen Mallette <[email protected]> Authored: Thu Jan 25 17:09:17 2018 -0500 Committer: Stephen Mallette <[email protected]> Committed: Wed Jun 20 07:27:45 2018 -0400 ---------------------------------------------------------------------- CHANGELOG.asciidoc | 1 + .../process/traversal/dsl/sparql/SparqlTraversalSource.java | 6 ++++++ 2 files changed, 7 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/1474bfb3/CHANGELOG.asciidoc ---------------------------------------------------------------------- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index b305bb7..b445fb8 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -103,6 +103,7 @@ This release also includes changes from <<release-3-2-8, 3.2.8>>. * Fixed regression issue where the HTTPChannelizer doesn't instantiate the specified AuthenticationHandler. * Defaulted GLV tests for gremlin-python to run for GraphSON 3.0. +* Fixed a bug in dynamic Gryo registration where registrations that did not have serializers would fail. * Fixed a bug with `Tree` serialization in GraphSON 3.0. * In gremlin-python, the GraphSON 3.0 `g:Set` type is now deserialized to `List`. http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/1474bfb3/sparql-gremlin/src/main/java/org/apache/tinkerpop/gremlin/sparql/process/traversal/dsl/sparql/SparqlTraversalSource.java ---------------------------------------------------------------------- diff --git a/sparql-gremlin/src/main/java/org/apache/tinkerpop/gremlin/sparql/process/traversal/dsl/sparql/SparqlTraversalSource.java b/sparql-gremlin/src/main/java/org/apache/tinkerpop/gremlin/sparql/process/traversal/dsl/sparql/SparqlTraversalSource.java index 3889d95..deb16f7 100644 --- a/sparql-gremlin/src/main/java/org/apache/tinkerpop/gremlin/sparql/process/traversal/dsl/sparql/SparqlTraversalSource.java +++ b/sparql-gremlin/src/main/java/org/apache/tinkerpop/gremlin/sparql/process/traversal/dsl/sparql/SparqlTraversalSource.java @@ -124,6 +124,12 @@ public class SparqlTraversalSource implements TraversalSource { */ public <S> SparqlTraversal<S,String> sparql(final String query) { final SparqlTraversalSource clone = this.clone(); + + // this is a bit of a hack to get remote traversals to work cleanly. on the remote side, we'd expect a + // GraphTraversalSource not a SparqlTraversalSource (given that sparql-gremlin is to be implemented in the + // DSL pattern). Instead of just sending the constant() step with the sparql query we also include an + // inject() step which will be recognized by a GraphTraversalSource on the remote side. Since SparqlStrategy + // wholly replaces both of these steps, the traversal bytecode can be read properly. clone.bytecode.addStep(GraphTraversal.Symbols.inject); clone.bytecode.addStep(GraphTraversal.Symbols.constant, query); final SparqlTraversal.Admin<S, S> traversal = new DefaultSparqlTraversal<>(clone);
