You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by dk...@apache.org on 2017/08/11 13:33:36 UTC
[1/2] tinkerpop git commit: Fixed a bug in `RangeByIsCountStrategy`.
Repository: tinkerpop
Updated Branches:
refs/heads/master 21a454b2b -> 392ada68b
Fixed a bug in `RangeByIsCountStrategy`.
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/36bd2a24
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/36bd2a24
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/36bd2a24
Branch: refs/heads/master
Commit: 36bd2a2447529371d950b2df6de36ea49957ab55
Parents: 4d1e12c
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Tue Aug 8 08:23:06 2017 -0700
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Fri Aug 11 06:22:57 2017 -0700
----------------------------------------------------------------------
CHANGELOG.asciidoc | 1 +
.../traversal/strategy/optimization/CountStrategy.java | 8 +++-----
.../traversal/strategy/optimization/CountStrategyTest.java | 4 ++++
3 files changed, 8 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/36bd2a24/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 4bb894d..b7b2717 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -145,6 +145,7 @@ This release also includes changes from <<release-3-1-8, 3.1.8>>.
* Registered `HashMap$TreeNode` to Gryo.
* Fixed a lambda-leak in `SackValueStep` where `BiFunction` must be tested for true lambda status.
+* Fixed a bug in `RangeByIsCountStrategy` that broke any `ConnectiveStep` that included a child traversal with an optimizable pattern.
* Allowed access to `InjectStep.injections` for `TraversalStrategy` analysis.
* Exceptions that occur during result iteration in Gremlin Server will now return `SCRIPT_EVALUATION_EXCEPTION` rather than `SERVER_ERROR`.
* `AddEdgeStep` attaches detached vertices prior to edge creation.
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/36bd2a24/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/CountStrategy.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/CountStrategy.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/CountStrategy.java
index ecddd2c..a6fa06d 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/CountStrategy.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/CountStrategy.java
@@ -27,10 +27,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.TraversalStrategy;
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__;
import org.apache.tinkerpop.gremlin.process.traversal.step.TraversalParent;
import org.apache.tinkerpop.gremlin.process.traversal.step.branch.RepeatStep;
-import org.apache.tinkerpop.gremlin.process.traversal.step.filter.FilterStep;
-import org.apache.tinkerpop.gremlin.process.traversal.step.filter.IsStep;
-import org.apache.tinkerpop.gremlin.process.traversal.step.filter.NotStep;
-import org.apache.tinkerpop.gremlin.process.traversal.step.filter.RangeGlobalStep;
+import org.apache.tinkerpop.gremlin.process.traversal.step.filter.*;
import org.apache.tinkerpop.gremlin.process.traversal.step.map.CountGlobalStep;
import org.apache.tinkerpop.gremlin.process.traversal.step.map.GraphStep;
import org.apache.tinkerpop.gremlin.process.traversal.step.map.MatchStep;
@@ -138,7 +135,8 @@ public final class CountStrategy extends AbstractTraversalStrategy<TraversalStra
traversal.asAdmin().removeStep(curr); // CountStep
size -= 2;
if (!dismissCountIs) {
- if (traversal.getParent() instanceof FilterStep) {
+ final TraversalParent p;
+ if ((p = traversal.getParent()) instanceof FilterStep && !(p instanceof ConnectiveStep)) {
final Step<?, ?> filterStep = parent.asStep();
final Traversal.Admin parentTraversal = filterStep.getTraversal();
final Step notStep = new NotStep<>(parentTraversal,
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/36bd2a24/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/CountStrategyTest.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/CountStrategyTest.java b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/CountStrategyTest.java
index 8408c07..ee4ce38 100644
--- a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/CountStrategyTest.java
+++ b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/CountStrategyTest.java
@@ -95,6 +95,10 @@ public class CountStrategyTest {
{__.filter(__.bothE().count().is(gte(1))), __.filter(__.bothE())},
{__.filter(__.bothE().count().is(gt(1))), __.filter(__.bothE().limit(2).count().is(gt(1)))},
{__.filter(__.bothE().count().is(gte(2))), __.filter(__.bothE().limit(2).count().is(gte(2)))},
+ {__.and(__.out().count().is(0), __.in().count().is(0)), __.and(__.not(__.out()), __.not(__.in()))},
+ {__.and(__.out().count().is(0), __.in().count().is(1)), __.and(__.not(__.out()), __.in().limit(2).count().is(1))},
+ {__.and(__.out().count().is(1), __.in().count().is(0)), __.and(__.out().limit(2).count().is(1), __.not(__.in()))},
+ {__.or(__.out().count().is(0), __.in().count().is(0)), __.or(__.not(__.out()), __.not(__.in()))},
});
}
[2/2] tinkerpop git commit: Merge branch 'master' of
https://git-wip-us.apache.org/repos/asf/tinkerpop
Posted by dk...@apache.org.
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/tinkerpop
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/392ada68
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/392ada68
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/392ada68
Branch: refs/heads/master
Commit: 392ada68bff0dba5c85fa6d9c12f3a87b3f44d4a
Parents: 36bd2a2 21a454b
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Fri Aug 11 06:33:14 2017 -0700
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Fri Aug 11 06:33:14 2017 -0700
----------------------------------------------------------------------
docs/src/reference/the-traversal.asciidoc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------