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/199a9635 Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/199a9635 Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/199a9635 Branch: refs/heads/TINKERPOP-1878 Commit: 199a96356ba85e9352a8372f5f0b77d784677d93 Parents: fcb33dd Author: Stephen Mallette <[email protected]> Authored: Thu Jan 25 17:09:17 2018 -0500 Committer: Stephen Mallette <[email protected]> Committed: Mon Apr 23 14:21:04 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/199a9635/CHANGELOG.asciidoc ---------------------------------------------------------------------- diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index cfda696..3458874 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -53,6 +53,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/199a9635/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);
