From 20a722a35785497e80ae3097b4c47b277eed600a Mon Sep 17 00:00:00 2001 From: Stephen Mallette Date: Fri, 27 Apr 2018 06:22:13 -0400 Subject: [PATCH] TINKERPOP-1956 Deprecated Order.incr and Order.decr Replaced by Order.asc and Order.desc respectively. Left a number of uses of decr/incr so as to ensure ongoing compatibility during deprecation. --- CHANGELOG.asciidoc | 1 + docs/site/home/gremlin.html | 4 +- docs/site/home/index.html | 2 +- docs/site/home/js/prism.js | 2 +- docs/src/dev/io/graphson.asciidoc | 8 +- docs/src/dev/io/gryo.asciidoc | 4 +- docs/src/recipes/centrality.asciidoc | 6 +- docs/src/recipes/collections.asciidoc | 2 +- docs/src/recipes/recommendation.asciidoc | 16 +- docs/src/recipes/style-guide.asciidoc | 4 +- docs/src/reference/gremlin-variants.asciidoc | 10 +- docs/src/reference/the-graph.asciidoc | 2 +- docs/src/reference/the-traversal.asciidoc | 61 +++---- .../gremlin-language-variants/index.asciidoc | 2 +- docs/src/upgrade/release-3.3.x.asciidoc | 10 ++ .../gremlin/process/traversal/Order.java | 40 +++++ .../traversal/step/map/OrderGlobalStep.java | 4 +- .../traversal/step/map/OrderLocalStep.java | 4 +- .../util/function/ChainedComparator.java | 2 +- .../util/function/MultiComparator.java | 2 +- .../process/traversal/BytecodeTest.java | 6 +- .../gremlin/process/traversal/OrderTest.java | 15 ++ .../step/map/OrderGlobalStepTest.java | 8 +- .../step/map/OrderLocalStepTest.java | 8 +- .../PathRetractionStrategyTest.java | 2 +- .../LambdaRestrictionStrategyTest.java | 4 +- .../util/function/MultiComparatorTest.java | 6 +- .../Process/Traversal/NamingConversions.cs | 2 + .../Gremlin.Net/Process/Traversal/Order.cs | 6 + .../DriverRemoteConnection/EnumTests.cs | 2 +- .../lib/process/traversal.js | 2 +- .../test/unit/traversal-test.js | 4 +- .../gremlin_python/process/traversal.py | 4 +- gremlin-test/features/branch/Local.feature | 2 +- gremlin-test/features/filter/Dedup.feature | 4 +- gremlin-test/features/map/AddEdge.feature | 4 +- gremlin-test/features/map/Match.feature | 4 +- gremlin-test/features/map/Order.feature | 72 ++++++--- gremlin-test/features/map/Project.feature | 4 +- gremlin-test/features/map/Select.feature | 4 +- .../process/traversal/step/ComplexTest.java | 4 +- .../traversal/step/branch/LocalTest.java | 2 +- .../traversal/step/filter/DedupTest.java | 10 +- .../traversal/step/map/AddEdgeTest.java | 12 +- .../process/traversal/step/map/MatchTest.java | 12 +- .../process/traversal/step/map/MathTest.java | 12 +- .../process/traversal/step/map/OrderTest.java | 150 +++++++++++------- .../traversal/step/map/PageRankTest.java | 20 +-- .../traversal/step/map/ProgramTest.java | 10 +- .../traversal/step/map/ProjectTest.java | 10 +- .../traversal/step/map/SelectTest.java | 10 +- .../SubgraphStrategyProcessTest.java | 2 +- .../gremlin/process/FeatureCoverageTest.java | 4 +- .../tinkerpop/gremlin/structure/io/Model.java | 2 +- .../io/AbstractTypedCompatibilityTest.java | 2 - .../graphson/_3_2_3/order-v2d0-no-types.json | 2 +- .../graphson/_3_2_3/order-v2d0-partial.json | 2 +- .../graphson/_3_2_4/order-v2d0-no-types.json | 2 +- .../graphson/_3_2_4/order-v2d0-partial.json | 2 +- .../graphson/_3_2_5/order-v2d0-no-types.json | 2 +- .../graphson/_3_2_5/order-v2d0-partial.json | 2 +- .../graphson/_3_2_6/order-v2d0-no-types.json | 2 +- .../graphson/_3_2_6/order-v2d0-partial.json | 2 +- .../graphson/_3_2_7/order-v2d0-no-types.json | 2 +- .../graphson/_3_2_7/order-v2d0-partial.json | 2 +- .../graphson/_3_2_8/order-v2d0-no-types.json | 2 +- .../graphson/_3_2_8/order-v2d0-partial.json | 2 +- .../graphson/_3_2_9/order-v2d0-no-types.json | 2 +- .../graphson/_3_2_9/order-v2d0-partial.json | 2 +- .../graphson/_3_3_0/order-v2d0-no-types.json | 2 +- .../graphson/_3_3_0/order-v2d0-partial.json | 2 +- .../io/graphson/_3_3_0/order-v3d0.json | 2 +- .../graphson/_3_3_1/order-v2d0-no-types.json | 2 +- .../graphson/_3_3_1/order-v2d0-partial.json | 2 +- .../io/graphson/_3_3_1/order-v3d0.json | 2 +- .../graphson/_3_3_2/order-v2d0-partial.json | 2 +- .../io/graphson/_3_3_2/order-v3d0.json | 2 +- .../graphson/_3_3_3/order-v2d0-partial.json | 2 +- .../io/graphson/_3_3_3/order-v3d0.json | 2 +- .../structure/io/gryo/_3_2_3/order-v1d0.kryo | 2 +- .../structure/io/gryo/_3_2_4/order-v1d0.kryo | 2 +- .../structure/io/gryo/_3_2_5/order-v1d0.kryo | 2 +- .../structure/io/gryo/_3_2_6/order-v1d0.kryo | 2 +- .../structure/io/gryo/_3_2_7/order-v1d0.kryo | 2 +- .../structure/io/gryo/_3_2_8/order-v1d0.kryo | 2 +- .../structure/io/gryo/_3_2_9/order-v1d0.kryo | 2 +- .../structure/io/gryo/_3_3_0/order-v1d0.kryo | 2 +- .../structure/io/gryo/_3_3_0/order-v3d0.kryo | 2 +- .../structure/io/gryo/_3_3_1/order-v1d0.kryo | 2 +- .../structure/io/gryo/_3_3_1/order-v3d0.kryo | 2 +- .../structure/io/gryo/_3_3_2/order-v1d0.kryo | 2 +- .../structure/io/gryo/_3_3_2/order-v3d0.kryo | 2 +- .../structure/io/gryo/_3_3_3/order-v1d0.kryo | 2 +- .../structure/io/gryo/_3_3_3/order-v3d0.kryo | 2 +- 94 files changed, 421 insertions(+), 268 deletions(-) diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc index 718b6a7199c..81210c45b8f 100644 --- a/CHANGELOG.asciidoc +++ b/CHANGELOG.asciidoc @@ -25,6 +25,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima This release also includes changes from <>. +* Deprecated `Order` for `incr` and `decr` in favor of `asc` and `desc`. [[release-3-3-3]] === TinkerPop 3.3.3 (Release Date: May 8, 2018) diff --git a/docs/site/home/gremlin.html b/docs/site/home/gremlin.html index bedddf3a968..74e7c5e01e1 100644 --- a/docs/site/home/gremlin.html +++ b/docs/site/home/gremlin.html @@ -153,7 +153,7 @@ out("bought").aggregate("stash"). in("bought").out("bought"). where(not(within("stash"))). - groupCount().order(local).by(values,decr) + groupCount().order(local).by(values,desc)
@@ -177,7 +177,7 @@ pageRank(). by("friendRank"). by(outE("knows")). - order().by("friendRank",decr). + order().by("friendRank",desc). limit(10)
diff --git a/docs/site/home/index.html b/docs/site/home/index.html index 9ee55c5f515..19d12ee3fc9 100644 --- a/docs/site/home/index.html +++ b/docs/site/home/index.html @@ -133,7 +133,7 @@ in("bought").out("bought"). where(not(within("stash"))). groupCount(). - order(local).by(values,decr) + order(local).by(values,desc)
diff --git a/docs/site/home/js/prism.js b/docs/site/home/js/prism.js index 53661ddf7e5..999a43ecfca 100644 --- a/docs/site/home/js/prism.js +++ b/docs/site/home/js/prism.js @@ -233,7 +233,7 @@ Prism.languages.clike = { punctuation: /[{}[\];(),.:]/ }; Prism.languages.gremlin = Prism.languages.extend("clike", { - keyword: /\b(values,|decr|incr|local|global|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield)\b/, + keyword: /\b(values,|decr|desc|incr|asc|local|global|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|var|void|while|with|yield)\b/, number: /\b-?(0x[\dA-Fa-f]+|0b[01]+|0o[0-7]+|\d*\.?\d+([Ee][+-]?\d+)?|NaN|Infinity)\b/, "function": /[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*(?=\()/i }), Prism.languages.insertBefore("gremlin", "keyword", { diff --git a/docs/src/dev/io/graphson.asciidoc b/docs/src/dev/io/graphson.asciidoc index defebb30cc2..d140a2f2a8f 100644 --- a/docs/src/dev/io/graphson.asciidoc +++ b/docs/src/dev/io/graphson.asciidoc @@ -143,7 +143,7 @@ file.withWriter { writer -> writer.write(toJson(Column.keys, "Column", "", "v2d0-partial")) writer.write(toJson(Direction.OUT, "Direction", "", "v2d0-partial")) writer.write(toJson(Operator.sum, "Operator", "", "v2d0-partial")) - writer.write(toJson(Order.incr, "Order", "", "v2d0-partial")) + writer.write(toJson(Order.shuffle, "Order", "", "v2d0-partial")) writer.write(toJson(org.apache.tinkerpop.gremlin.process.traversal.step.TraversalOptionParent.Pick.any, "Pick", "", "v2d0-partial")) writer.write(toJson(Pop.all, "Pop", "", "v2d0-partial")) writer.write(toJson(org.apache.tinkerpop.gremlin.util.function.Lambda.function("{ it.get() }"), "Lambda", "", "v2d0-partial")) @@ -272,7 +272,7 @@ file.withWriter { writer -> writer.write(toJson(Column.keys, "Column", "", "v2d0-no-types")) writer.write(toJson(Direction.OUT, "Direction", "", "v2d0-no-types")) writer.write(toJson(Operator.sum, "Operator", "", "v2d0-no-types")) - writer.write(toJson(Order.incr, "Order", "", "v2d0-no-types")) + writer.write(toJson(Order.shuffle, "Order", "", "v2d0-no-types")) writer.write(toJson(Pop.all, "Pop", "", "v2d0-no-types")) writer.write(toJson(org.apache.tinkerpop.gremlin.process.traversal.step.TraversalOptionParent.Pick.any, "Pick", "", "v2d0-no-types")) writer.write(toJson(org.apache.tinkerpop.gremlin.util.function.Lambda.function("{ it.get() }"), "Lambda", "", "v2d0-no-types")) @@ -2777,7 +2777,7 @@ The following `Bytecode` example represents the traversal of `g.V().hasLabel('pe ---- { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } ---- @@ -5138,7 +5138,7 @@ The following `Bytecode` example represents the traversal of `g.V().hasLabel('pe ---- { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } ---- diff --git a/docs/src/dev/io/gryo.asciidoc b/docs/src/dev/io/gryo.asciidoc index c824063b131..f3272220298 100644 --- a/docs/src/dev/io/gryo.asciidoc +++ b/docs/src/dev/io/gryo.asciidoc @@ -36,7 +36,7 @@ conf.setProperty(TinkerGraph.GREMLIN_TINKERGRAPH_DEFAULT_VERTEX_PROPERTY_CARDINA graph = TinkerGraph.open(conf) TinkerFactory.generateTheCrew(graph) g = graph.traversal() - + toGryo = { o, type, mapper, suffix = "" -> def fileToWriteTo = new File("io-output/test-case-data/gryo/" + type.toLowerCase().replace(" ","") + "-" + suffix + ".kryo") if (fileToWriteTo.exists()) fileToWriteTo.delete() @@ -75,7 +75,7 @@ toGryo(VertexProperty.Cardinality.list, "Cardinality", mapper, "v1d0") toGryo(Column.keys, "Column", mapper, "v1d0") toGryo(Direction.OUT, "Direction", mapper, "v1d0") toGryo(Operator.sum, "Operator", mapper, "v1d0") -toGryo(Order.incr, "Order", mapper, "v1d0") +toGryo(Order.shuffle, "Order", mapper, "v1d0") toGryo(Pop.all, "Pop", mapper, "v1d0") toGryo(org.apache.tinkerpop.gremlin.process.traversal.step.TraversalOptionParent.Pick.any, "Pick", mapper, "v1d0") toGryo(org.apache.tinkerpop.gremlin.util.function.Lambda.function("{ it.get() }"), "Lambda", mapper, "v1d0") diff --git a/docs/src/recipes/centrality.asciidoc b/docs/src/recipes/centrality.asciidoc index 1a3927e9bcf..85045896251 100644 --- a/docs/src/recipes/centrality.asciidoc +++ b/docs/src/recipes/centrality.asciidoc @@ -34,7 +34,7 @@ g.V().group().by().by(inE().count()) <2> g.V().group().by().by(outE().count()) <3> g.V().project("v","degree").by().by(bothE().count()) <4> g.V().project("v","degree").by().by(bothE().count()). <5> - order().by(select("degree"), decr). + order().by(select("degree"), desc). limit(4) ---- @@ -158,9 +158,9 @@ give it the highest rank. Consider the following example using the Grateful Dead ---- graph.io(graphml()).readGraph('data/grateful-dead.xml') g.V().repeat(groupCount('m').by('name').out()).times(5).cap('m'). <1> - order(local).by(values, decr).limit(local, 10).next() <2> + order(local).by(values, desc).limit(local, 10).next() <2> g.V().repeat(groupCount('m').by('name').out().timeLimit(100)).times(5).cap('m'). <3> - order(local).by(values, decr).limit(local, 10).next() + order(local).by(values, desc).limit(local, 10).next() ---- <1> The traversal iterates through each vertex in the graph and for each one repeatedly group counts each vertex that diff --git a/docs/src/recipes/collections.asciidoc b/docs/src/recipes/collections.asciidoc index d0273765a1e..7ee4b1b7355 100644 --- a/docs/src/recipes/collections.asciidoc +++ b/docs/src/recipes/collections.asciidoc @@ -97,7 +97,7 @@ g.V().union(limit(3).fold(),tail(3).fold()) <1> g.V().union(limit(3).fold(),tail(3).fold()). local(unfold(). <2> order(). - by(bothE().count(),decr). + by(bothE().count(),desc). limit(1). fold()) g.V().union(limit(3).fold(),tail(3).fold()). <3> diff --git a/docs/src/recipes/recommendation.asciidoc b/docs/src/recipes/recommendation.asciidoc index 9fefce2519e..aa4feb6bffb 100644 --- a/docs/src/recipes/recommendation.asciidoc +++ b/docs/src/recipes/recommendation.asciidoc @@ -134,7 +134,7 @@ g.V().has('person','name','alice').as('her'). <1> out('bought').where(without('self')). <4> groupCount(). order(local). - by(values, decr) <5> + by(values, desc) <5> ---- <1> Find "alice" who is the person for whom the product recommendation is being made. @@ -183,7 +183,7 @@ g.V().has("person","name","alice").as("alice"). where(within("self")).count()). select(values). order(local). - by(decr).limit(local, 1) + by(desc).limit(local, 1) ---- With the maximum value available, it can be used to chose those "person" vertices that have the three products in @@ -199,7 +199,7 @@ g.V().has("person","name","alice").as("alice"). where(within("self")).count()).as("g"). select(values). order(local). - by(decr).limit(local, 1).as("m"). + by(desc).limit(local, 1).as("m"). select("g").unfold(). where(select(values).as("m")).select(keys) ---- @@ -217,7 +217,7 @@ g.V().has("person","name","alice").as("alice"). where(within("self")).count()).as("g"). select(values). order(local). - by(decr).limit(local, 1).as("m"). + by(desc).limit(local, 1).as("m"). select("g").unfold(). where(select(values).as("m")).select(keys). out("bought").where(without("self")) @@ -235,13 +235,13 @@ g.V().has("person","name","alice").as("alice"). where(within("self")).count()).as("g"). select(values). order(local). - by(decr).limit(local, 1).as("m"). + by(desc).limit(local, 1).as("m"). select("g").unfold(). where(select(values).as("m")).select(keys). out("bought").where(without("self")). groupCount(). order(local). - by(values, decr). + by(values, desc). by(select(keys).values("name")). unfold().select(keys).values("name") ---- @@ -257,7 +257,7 @@ g.V().has('person','name','alice').as('her'). out('bought').where(without('self')). groupCount(). order(local). - by(values, decr) + by(values, desc) ---- The above traversal performs a full ranking of items based on all the connected data. That could be a time consuming @@ -280,7 +280,7 @@ g.V().has('person','name','alice').as('her'). out('bought').where(without('self')).timeLimit(1000). groupCount(). order(local). - by(values, decr) + by(values, desc) ---- In using sampling methods, it is important to consider that the natural ordering of edges in the graph may not produce diff --git a/docs/src/recipes/style-guide.asciidoc b/docs/src/recipes/style-guide.asciidoc index 6da682d5383..de2aa089399 100644 --- a/docs/src/recipes/style-guide.asciidoc +++ b/docs/src/recipes/style-guide.asciidoc @@ -49,8 +49,8 @@ g.V().out('knows').out('created'). <1> select('java').unfold(). <3> in('created').hasLabel('person'). <4> order(). <5> - by(inE().count(),decr). <6> - by('age',incr). + by(inE().count(),desc). <6> + by('age',asc). dedup().limit(10).values('name') <7> ---- diff --git a/docs/src/reference/gremlin-variants.asciidoc b/docs/src/reference/gremlin-variants.asciidoc index cff14e15e76..8aa2435b6fd 100644 --- a/docs/src/reference/gremlin-variants.asciidoc +++ b/docs/src/reference/gremlin-variants.asciidoc @@ -214,7 +214,7 @@ These can be used analogously to how they are used in Gremlin-Java. [gremlin-python,modern] ---- -g.V().hasLabel('person').has('age',P.gt(30)).order().by('age',Order.decr).toList() +g.V().hasLabel('person').has('age',P.gt(30)).order().by('age',Order.desc).toList() ---- Moreover, by importing the `statics` of Gremlin-Python, the class prefixes can be omitted. @@ -226,7 +226,7 @@ With statics loaded its possible to represent the above traversal as below. [gremlin-python,modern] ---- -g.V().hasLabel('person').has('age',gt(30)).order().by('age',decr).toList() +g.V().hasLabel('person').has('age',gt(30)).order().by('age',desc).toList() ---- Finally, statics includes all the `__`-methods and thus, anonymous traversals like `__.out()` can be expressed as below. @@ -373,7 +373,7 @@ Gremlin has various tokens (e.g. `T`, `P`, `Order`, `Operator`, etc.) that are r These can be used analogously to how they are used in Gremlin-Java. [source,csharp] -g.V().HasLabel("person").Has("age",P.Gt(30)).Order().By("age",Order.decr).ToList() +g.V().HasLabel("person").Has("age",P.Gt(30)).Order().By("age",Order.desc).ToList() Moreover, the class prefixes can be omitted with a `using static`. @@ -386,7 +386,7 @@ using static Gremlin.Net.Process.Traversal.Order; Then it is possible to represent the above traversal as below. [source,csharp] -g.V().HasLabel("person").Has("age",Gt(30)).Order().By("age",decr).ToList() +g.V().HasLabel("person").Has("age",Gt(30)).Order().By("age",desc).ToList() Finally, with using static `__`, anonymous traversals like `__.Out()` can be expressed as below. That is, without the `__.`-prefix. @@ -532,7 +532,7 @@ Gremlin has various tokens (e.g. `t`, `P`, `order`, `direction`, etc.) that are objects. [source,javascript] -g.V().hasLabel('person').has('age', P.gt(30)).order().by('age', order.decr).toList() +g.V().hasLabel('person').has('age', P.gt(30)).order().by('age', order.desc).toList() These objects must be required manually from the `process` namespace: diff --git a/docs/src/reference/the-graph.asciidoc b/docs/src/reference/the-graph.asciidoc index 791c34250ce..7769408bace 100644 --- a/docs/src/reference/the-graph.asciidoc +++ b/docs/src/reference/the-graph.asciidoc @@ -133,7 +133,7 @@ g.V().as('a'). hasNot('endTime').as('c'). select('a','b','c').by('name').by(value).by('startTime') // determine the current location of each person g.V().has('name','gremlin').inE('uses'). - order().by('skill',incr).as('a'). + order().by('skill',asc).as('a'). outV().as('b'). select('a','b').by('skill').by('name') // rank the users of gremlin by their skill level ---- diff --git a/docs/src/reference/the-traversal.asciidoc b/docs/src/reference/the-traversal.asciidoc index 3e162a46648..89a05002087 100644 --- a/docs/src/reference/the-traversal.asciidoc +++ b/docs/src/reference/the-traversal.asciidoc @@ -1147,10 +1147,10 @@ Note that the examples below use the <> toy data se [gremlin-groovy,theCrew] ---- g.V().as('person'). - properties('location').order().by('startTime',incr).limit(2).value().as('location'). + properties('location').order().by('startTime',asc).limit(2).value().as('location'). select('person','location').by('name').by() <1> g.V().as('person'). - local(properties('location').order().by('startTime',incr).limit(2)).value().as('location'). + local(properties('location').order().by('startTime',asc).limit(2)).value().as('location'). select('person','location').by('name').by() <2> ---- @@ -1626,8 +1626,8 @@ When the objects of the traversal stream need to be sorted, `order()`-step (*map [gremlin-groovy,modern] ---- g.V().values('name').order() -g.V().values('name').order().by(decr) -g.V().hasLabel('person').order().by('age', incr).values('name') +g.V().values('name').order().by(desc) +g.V().hasLabel('person').order().by('age', asc).values('name') ---- One of the most traversed objects in a traversal is an `Element`. An element can have properties associated with it @@ -1637,8 +1637,8 @@ comparison of their properties. [gremlin-groovy,modern] ---- g.V().values('name') -g.V().order().by('name',incr).values('name') -g.V().order().by('name',decr).values('name') +g.V().order().by('name',asc).values('name') +g.V().order().by('name',desc).values('name') ---- The `order()`-step allows the user to provide an arbitrary number of comparators for primary, secondary, etc. sorting. @@ -1647,10 +1647,10 @@ based on the age of the person. [gremlin-groovy,modern] ---- -g.V().hasLabel('person').order().by(outE('created').count(), incr). - by('age', incr).values('name') -g.V().hasLabel('person').order().by(outE('created').count(), incr). - by('age', decr).values('name') +g.V().hasLabel('person').order().by(outE('created').count(), asc). + by('age', asc).values('name') +g.V().hasLabel('person').order().by(outE('created').count(), asc). + by('age', desc).values('name') ---- Randomizing the order of the traversers at a particular point in the traversal is possible with `Order.shuffle`. @@ -1666,10 +1666,10 @@ It is possible to use `order(local)` to order the current local object and not t [gremlin-groovy,modern] ---- -g.V().values('age').fold().order(local).by(decr) <1> -g.V().values('age').order(local).by(decr) <2> -g.V().groupCount().by(inE().count()).order(local).by(values, decr) <3> -g.V().groupCount().by(inE().count()).order(local).by(keys, incr) <4> +g.V().values('age').fold().order(local).by(desc) <1> +g.V().values('age').order(local).by(desc) <2> +g.V().groupCount().by(inE().count()).order(local).by(values, desc) <3> +g.V().groupCount().by(inE().count()).order(local).by(keys, asc) <4> ---- <1> The ages are gathered into a list and then that list is sorted in decreasing order. @@ -1679,11 +1679,16 @@ g.V().groupCount().by(inE().count()).order(local).by(keys, incr) <4> NOTE: The `values` and `keys` enums are from `Column` which is used to select "columns" from a `Map`, `Map.Entry`, or `Path`. +NOTE: Prior to version 3.3.4, ordering was defined by `Order.incr` for ascending order and `Order.decr` for descending +order. That approach is now deprecated with the preferred method shown in the examples which uses the more common +forms for query languages in `Order.asc` and Order.desc. + *Additional References* link:++http://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.html#order--++[`order()`], link:++http://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.html#order-org.apache.tinkerpop.gremlin.process.traversal.Scope-++[`order(Scope)`], -link:++http://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gremlin/process/traversal/Scope.html++[`Scope`] +link:++http://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gremlin/process/traversal/Scope.html++[`Scope`], +link:++http://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gremlin/process/traversal/Order.html++[`Order`] [[pagerank-step]] === PageRank Step @@ -1700,7 +1705,7 @@ g.V().hasLabel('person'). pageRank(). by(outE('knows')). by('friendRank'). - order().by('friendRank',decr).valueMap('name','friendRank') + order().by('friendRank',desc).valueMap('name','friendRank') ---- The <>-step can be used to understand how the traversal is compiled into multiple `GraphComputer` jobs. @@ -1712,7 +1717,7 @@ g.V().hasLabel('person'). pageRank(). by(outE('knows')). by('friendRank'). - order().by('friendRank',decr).valueMap('name','friendRank').explain() + order().by('friendRank',desc).valueMap('name','friendRank').explain() ---- *Additional References* @@ -1871,7 +1876,7 @@ g.V().out('created'). project('a','b'). by('name'). by(__.in('created').count()). - order().by(select('b'),decr). + order().by(select('b'),desc). select('a') g.V().has('name','marko'). project('out','in'). @@ -1974,7 +1979,7 @@ Finally, an example is provided using `PageRankVertexProgram` which doesn't use g = graph.traversal().withComputer() g.V().hasLabel('person'). program(PageRankVertexProgram.build().property('rank').create(graph)). - order().by('rank', incr). + order().by('rank', asc). valueMap('name', 'rank') ---- @@ -2304,11 +2309,11 @@ ranking. graph.io(graphml()).readGraph('data/grateful-dead.xml') g = graph.traversal() g.V().hasLabel('song').out('followedBy').groupCount().by('name'). - order(local).by(values,decr).limit(local, 5) + order(local).by(values,desc).limit(local, 5) g.V().hasLabel('song').out('followedBy').groupCount().by('name'). - order(local).by(values,decr).limit(local, 5).select(keys) + order(local).by(values,desc).limit(local, 5).select(keys) g.V().hasLabel('song').out('followedBy').groupCount().by('name'). - order(local).by(values,decr).limit(local, 5).select(keys).unfold() + order(local).by(values,desc).limit(local, 5).select(keys).unfold() ---- Similarly, for extracting the values from a path or map. @@ -2320,7 +2325,7 @@ g = graph.traversal() g.V().hasLabel('song').out('sungBy').groupCount().by('name') <1> g.V().hasLabel('song').out('sungBy').groupCount().by('name').select(values) <2> g.V().hasLabel('song').out('sungBy').groupCount().by('name').select(values).unfold(). - groupCount().order(local).by(values,decr).limit(local, 5) <3> + groupCount().order(local).by(values,desc).limit(local, 5) <3> ---- <1> Which artist sung how many songs? @@ -2632,10 +2637,10 @@ that can be used to time execution of a body of code. [gremlin-groovy,modern] ---- -g.V().repeat(both().groupCount('m')).times(16).cap('m').order(local).by(values,decr).next() -clock(1) {g.V().repeat(both().groupCount('m')).times(16).cap('m').order(local).by(values,decr).next()} -g.V().repeat(timeLimit(2).both().groupCount('m')).times(16).cap('m').order(local).by(values,decr).next() -clock(1) {g.V().repeat(timeLimit(2).both().groupCount('m')).times(16).cap('m').order(local).by(values,decr).next()} +g.V().repeat(both().groupCount('m')).times(16).cap('m').order(local).by(values,desc).next() +clock(1) {g.V().repeat(both().groupCount('m')).times(16).cap('m').order(local).by(values,desc).next()} +g.V().repeat(timeLimit(2).both().groupCount('m')).times(16).cap('m').order(local).by(values,desc).next() +clock(1) {g.V().repeat(timeLimit(2).both().groupCount('m')).times(16).cap('m').order(local).by(values,desc).next()} ---- In essence, the relative order is respected, even through the number of traversers at each vertex is not. The primary @@ -3087,7 +3092,7 @@ A few more examples of the use of `Scope` are provided below: ---- g.V().both().group().by(label).select('software').dedup(local) g.V().groupCount().by(label).select(values).min(local) -g.V().groupCount().by(label).order(local).by(values,decr) +g.V().groupCount().by(label).order(local).by(values,desc) g.V().fold().sample(local,2) ---- diff --git a/docs/src/tutorials/gremlin-language-variants/index.asciidoc b/docs/src/tutorials/gremlin-language-variants/index.asciidoc index db1a8f9e022..ebc988f8add 100644 --- a/docs/src/tutorials/gremlin-language-variants/index.asciidoc +++ b/docs/src/tutorials/gremlin-language-variants/index.asciidoc @@ -49,7 +49,7 @@ public class MyApplication { // assumes that args[1] and args[2] are range boundaries Iterator> result = g.V().hasLabel("product"). - order().by("unitPrice", incr). + order().by("unitPrice", asc). range(Integer.valueOf(args[1]), Integer.valueOf(args[2])). valueMap("name", "unitPrice") diff --git a/docs/src/upgrade/release-3.3.x.asciidoc b/docs/src/upgrade/release-3.3.x.asciidoc index ea2e159cd64..d0f3a231c91 100644 --- a/docs/src/upgrade/release-3.3.x.asciidoc +++ b/docs/src/upgrade/release-3.3.x.asciidoc @@ -27,6 +27,16 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima Please see the link:https://github.com/apache/tinkerpop/blob/3.3.4/CHANGELOG.asciidoc#release-3-3-4[changelog] for a complete list of all the modifications that are part of this release. +=== Upgrading for Users + +==== Introducing Order.asc and Order.desc + +The `Order` enum originally introduced `incr` for ascending order and `decr` for descending order. It's not clear why +they were named this way when common querying parlance would call for `asc` and `desc` for those respective cases. Note +that `incr` and `decr` have not been removed - just deprecated and thus marked for future removal. Prefer `asc` and +`desc` going forward when writing Gremlin and look to update existing code using the deprecated values. + +See: link:https://issues.apache.org/jira/browse/TINKERPOP-1956[TINKERPOP-1956] == TinkerPop 3.3.3 diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java index 0b88bba11e9..9e894797122 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/Order.java @@ -35,6 +35,7 @@ public enum Order implements Comparator { * Order in ascending fashion * * @since 3.0.0-incubating + * @deprecated As of release 3.3.4, replaced by {@link #asc}. */ incr { @Override @@ -54,6 +55,7 @@ public Order reversed() { * Order in descending fashion. * * @since 3.0.0-incubating + * @deprecated As of release 3.3.4, replaced by {@link #desc}. */ decr { @Override @@ -84,6 +86,44 @@ public int compare(final Object first, final Object second) { public Order reversed() { return shuffle; } + }, + + /** + * Order in ascending fashion + * + * @since 3.3.4 + */ + asc { + @Override + public int compare(final Object first, final Object second) { + return first instanceof Number && second instanceof Number + ? NumberHelper.compare((Number) first, (Number) second) + : Comparator.naturalOrder().compare((Comparable) first, (Comparable) second); + } + + @Override + public Order reversed() { + return decr; + } + }, + + /** + * Order in descending fashion. + * + * @since 3.3.4 + */ + desc { + @Override + public int compare(final Object first, final Object second) { + return first instanceof Number && second instanceof Number + ? NumberHelper.compare((Number) second, (Number) first) + : Comparator.reverseOrder().compare((Comparable) first, (Comparable) second); + } + + @Override + public Order reversed() { + return incr; + } }; private static final Random RANDOM = new Random(); diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderGlobalStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderGlobalStep.java index fa705f430e5..fa80e97a089 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderGlobalStep.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderGlobalStep.java @@ -90,7 +90,7 @@ public void addComparator(final Traversal.Admin traversal, final Comparato @Override public void modulateBy(final Traversal.Admin traversal) { - this.modulateBy(traversal, Order.incr); + this.modulateBy(traversal, Order.asc); } @Override @@ -100,7 +100,7 @@ public void modulateBy(final Traversal.Admin traversal, final Comparator c @Override public List, Comparator>> getComparators() { - return this.comparators.isEmpty() ? Collections.singletonList(new Pair<>(new IdentityTraversal(), (Comparator) Order.incr)) : Collections.unmodifiableList(this.comparators); + return this.comparators.isEmpty() ? Collections.singletonList(new Pair<>(new IdentityTraversal(), (Comparator) Order.asc)) : Collections.unmodifiableList(this.comparators); } @Override diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderLocalStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderLocalStep.java index 56f34046b63..95cb6db89e4 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderLocalStep.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderLocalStep.java @@ -72,7 +72,7 @@ public void addComparator(final Traversal.Admin traversal, final Comparato @Override public void modulateBy(final Traversal.Admin traversal) { - this.addComparator((Traversal.Admin) traversal, (Comparator) Order.incr); + this.addComparator((Traversal.Admin) traversal, (Comparator) Order.asc); } @Override @@ -82,7 +82,7 @@ public void modulateBy(final Traversal.Admin traversal, final Comparator c @Override public List, Comparator>> getComparators() { - return this.comparators.isEmpty() ? Collections.singletonList(new Pair<>(new IdentityTraversal(), (Comparator) Order.incr)) : Collections.unmodifiableList(this.comparators); + return this.comparators.isEmpty() ? Collections.singletonList(new Pair<>(new IdentityTraversal(), (Comparator) Order.asc)) : Collections.unmodifiableList(this.comparators); } @Override diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/util/function/ChainedComparator.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/util/function/ChainedComparator.java index bdb2e6d2d59..984767fb1ec 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/util/function/ChainedComparator.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/util/function/ChainedComparator.java @@ -43,7 +43,7 @@ public final class ChainedComparator implements Compara public ChainedComparator(final boolean traversers, final List, Comparator>> comparators) { this.traversers = traversers; if (comparators.isEmpty()) - this.comparators.add(new Pair<>(new IdentityTraversal(), (Comparator) Order.incr)); + this.comparators.add(new Pair<>(new IdentityTraversal(), (Comparator) Order.asc)); else this.comparators.addAll(comparators); this.isShuffle = (Comparator) (this.comparators.get(this.comparators.size() - 1).getValue1()) == Order.shuffle; diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/util/function/MultiComparator.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/util/function/MultiComparator.java index d97d1473faa..3adf1b87745 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/util/function/MultiComparator.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/util/function/MultiComparator.java @@ -51,7 +51,7 @@ public MultiComparator(final List> comparators) { @Override public int compare(final C objectA, final C objectB) { if (this.comparators.isEmpty()) { - return Order.incr.compare(objectA, objectB); + return Order.asc.compare(objectA, objectB); } else { for (int i = this.startIndex; i < this.comparators.size(); i++) { final int comparison = this.comparators.get(i).compare(this.getObject(objectA, i), this.getObject(objectB, i)); diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/BytecodeTest.java b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/BytecodeTest.java index 7b1d810442f..1512d53d054 100644 --- a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/BytecodeTest.java +++ b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/BytecodeTest.java @@ -44,9 +44,9 @@ public class BytecodeTest { @Test public void shouldHaveProperHashAndEquality() { final GraphTraversalSource g = EmptyGraph.instance().traversal(); - final Traversal.Admin traversal1 = g.V().out().repeat(__.out().in()).times(2).groupCount().by(__.outE().count()).select(Column.keys).order().by(Order.decr).asAdmin(); - final Traversal.Admin traversal2 = g.V().out().repeat(__.out().in()).times(2).groupCount().by(__.outE().count()).select(Column.keys).order().by(Order.decr).asAdmin(); - final Traversal.Admin traversal3 = g.V().out().repeat(__.out().in()).times(2).groupCount().by(__.outE().count()).select(Column.values).order().by(Order.decr).asAdmin(); + final Traversal.Admin traversal1 = g.V().out().repeat(__.out().in()).times(2).groupCount().by(__.outE().count()).select(Column.keys).order().by(Order.desc).asAdmin(); + final Traversal.Admin traversal2 = g.V().out().repeat(__.out().in()).times(2).groupCount().by(__.outE().count()).select(Column.keys).order().by(Order.desc).asAdmin(); + final Traversal.Admin traversal3 = g.V().out().repeat(__.out().in()).times(2).groupCount().by(__.outE().count()).select(Column.values).order().by(Order.desc).asAdmin(); assertEquals(traversal1, traversal2); assertNotEquals(traversal1, traversal3); diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/OrderTest.java b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/OrderTest.java index 01d93eaf423..a8124c63ff8 100644 --- a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/OrderTest.java +++ b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/OrderTest.java @@ -42,6 +42,21 @@ public class OrderTest { @Parameterized.Parameters(name = "{0}.test({1},{2})") public static Iterable data() throws ParseException { return new ArrayList<>(Arrays.asList(new Object[][]{ + {Order.asc, Arrays.asList("b", "a", "c", "d"), Arrays.asList("a", "b", "c", "d")}, + {Order.desc, Arrays.asList("b", "a", "c", "d"), Arrays.asList("d", "c", "b", "a")}, + {Order.asc, Arrays.asList(formatter.parse("1-Jan-2018"), formatter.parse("1-Jan-2020"), formatter.parse("1-Jan-2008")), + Arrays.asList(formatter.parse("1-Jan-2008"), formatter.parse("1-Jan-2018"), formatter.parse("1-Jan-2020"))}, + {Order.desc, Arrays.asList(formatter.parse("1-Jan-2018"), formatter.parse("1-Jan-2020"), formatter.parse("1-Jan-2008")), + Arrays.asList(formatter.parse("1-Jan-2020"), formatter.parse("1-Jan-2018"), formatter.parse("1-Jan-2008"))}, + {Order.desc, Arrays.asList(100L, 1L, -1L, 0L), Arrays.asList(100L, 1L, 0L, -1L)}, + {Order.asc, Arrays.asList(100.1f, 1.1f, -1.1f, 0.1f), Arrays.asList(-1.1f, 0.1f, 1.1f, 100.1f)}, + {Order.desc, Arrays.asList(100.1f, 1.1f, -1.1f, 0.1f), Arrays.asList(100.1f, 1.1f, 0.1f, -1.1f)}, + {Order.asc, Arrays.asList(100.1d, 1.1d, -1.1d, 0.1d), Arrays.asList(-1.1d, 0.1d, 1.1d, 100.1d)}, + {Order.desc, Arrays.asList(100.1d, 1.1d, -1.1d, 0.1d), Arrays.asList(100.1d, 1.1d, 0.1d, -1.1d)}, + {Order.asc, Arrays.asList(100L, 1L, -1L, 0L), Arrays.asList(-1L, 0L, 1L, 100L)}, + {Order.desc, Arrays.asList(100L, 1L, -1L, 0L), Arrays.asList(100L, 1L, 0L, -1L)}, + {Order.asc, Arrays.asList(100, 1, -1, 0), Arrays.asList(-1, 0, 1, 100)}, + {Order.desc, Arrays.asList(100, 1, -1, 0), Arrays.asList(100, 1, 0, -1)}, {Order.incr, Arrays.asList("b", "a", "c", "d"), Arrays.asList("a", "b", "c", "d")}, {Order.decr, Arrays.asList("b", "a", "c", "d"), Arrays.asList("d", "c", "b", "a")}, {Order.incr, Arrays.asList(formatter.parse("1-Jan-2018"), formatter.parse("1-Jan-2020"), formatter.parse("1-Jan-2008")), diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderGlobalStepTest.java b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderGlobalStepTest.java index 82acad316a3..31457fcd33e 100644 --- a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderGlobalStepTest.java +++ b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderGlobalStepTest.java @@ -45,7 +45,13 @@ protected List getTraversals() { __.order().by("age", Order.decr), __.order().by(outE().count(), Order.incr), __.order().by("age", Order.incr).by(outE().count(), Order.incr), - __.order().by(outE().count(), Order.incr).by("age", Order.incr) + __.order().by(outE().count(), Order.incr).by("age", Order.incr), + __.order().by(Order.desc), + __.order().by("age", Order.asc), + __.order().by("age", Order.desc), + __.order().by(outE().count(), Order.asc), + __.order().by("age", Order.asc).by(outE().count(), Order.asc), + __.order().by(outE().count(), Order.asc).by("age", Order.asc) ); } diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderLocalStepTest.java b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderLocalStepTest.java index 8cc2e7ec441..5999793e33b 100644 --- a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderLocalStepTest.java +++ b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderLocalStepTest.java @@ -47,7 +47,13 @@ protected List getTraversals() { __.order(Scope.local).by("age", Order.decr), __.order(Scope.local).by(outE().count(), Order.incr), __.order(Scope.local).by("age", Order.incr).by(outE().count(), Order.incr), - __.order(Scope.local).by(outE().count(), Order.incr).by("age", Order.incr) + __.order(Scope.local).by(outE().count(), Order.incr).by("age", Order.incr), + __.order(Scope.local).by(Order.desc), + __.order(Scope.local).by("age", Order.asc), + __.order(Scope.local).by("age", Order.desc), + __.order(Scope.local).by(outE().count(), Order.asc), + __.order(Scope.local).by("age", Order.asc).by(outE().count(), Order.asc), + __.order(Scope.local).by(outE().count(), Order.asc).by("age", Order.asc) ); } diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/PathRetractionStrategyTest.java b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/PathRetractionStrategyTest.java index 240ff1a0d6a..0669b08e5e3 100644 --- a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/PathRetractionStrategyTest.java +++ b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/PathRetractionStrategyTest.java @@ -201,7 +201,7 @@ public static Iterable generateTestParameters() { {__.V().select("a").map(select("b").repeat(select("c"))).select("a"), "[[a, b, c], [[a, c], [[a, c]]], []]", null}, {__.V().out("created").project("a", "b").by("name").by(__.in("created").count()).order().by(select("b")).select("a"), "[[[a]], []]", null}, - {__.order().by("weight", Order.decr).store("w").by("weight").filter(values("weight").as("cw"). + {__.order().by("weight", Order.desc).store("w").by("weight").filter(values("weight").as("cw"). select("w").by(limit(Scope.local, 1)).as("mw").where("cw", eq("mw"))).project("from", "to", "weight").by(__.outV()).by(__.inV()).by("weight"), "[[[cw, mw], []]]", null}, {__.V().limit(1).as("z").out().repeat(store("seen").out().where(without("seen"))).until(where(eq("z"))), diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/verification/LambdaRestrictionStrategyTest.java b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/verification/LambdaRestrictionStrategyTest.java index b79d2c936a3..06309ea5d02 100644 --- a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/verification/LambdaRestrictionStrategyTest.java +++ b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/verification/LambdaRestrictionStrategyTest.java @@ -63,9 +63,9 @@ public static Iterable data() { {"order().by((a,b)->a.compareTo(b))", __.order().by((a, b) -> ((Integer) a).compareTo((Integer) b)), false}, {"order(local).by((a,b)->a.compareTo(b))", __.order(Scope.local).by((a, b) -> ((Integer) a).compareTo((Integer) b)), false}, {"__.choose(v->v.toString().equals(\"marko\"),__.out(),__.in())", __.choose(v -> v.toString().equals("marko"), __.out(), __.in()), false}, - {"order().by(label,decr)", __.order().by(T.label, Order.decr), true}, + {"order().by(label,desc)", __.order().by(T.label, Order.desc), true}, {"order(local).by(values)", __.order(Scope.local).by(values), true}, - {"order(local).by(values,decr)", __.order(Scope.local).by(values,Order.decr), true}, + {"order(local).by(values,desc)", __.order(Scope.local).by(values,Order.desc), true}, {"order(local).by(values,(a,b) -> a.compareTo(b))", __.order(Scope.local).by(values, (a, b) -> ((Double) a).compareTo((Double) b)), false}, // {"groupCount().by(label)", __.groupCount().by(T.label), true}, diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/util/function/MultiComparatorTest.java b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/util/function/MultiComparatorTest.java index de2a741aa88..83520be87cb 100644 --- a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/util/function/MultiComparatorTest.java +++ b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/util/function/MultiComparatorTest.java @@ -39,20 +39,20 @@ public class MultiComparatorTest { @Test public void shouldHandleShuffleCorrectly() { - MultiComparator comparator = new MultiComparator<>(Arrays.asList(Order.incr, Order.decr, Order.shuffle)); + MultiComparator comparator = new MultiComparator<>(Arrays.asList(Order.asc, Order.desc, Order.shuffle)); assertTrue(comparator.isShuffle()); // because its a shuffle, the comparator simply returns 0 for (int i = 0; i < 100; i++) { assertEquals(0, comparator.compare(RANDOM.nextInt(), RANDOM.nextInt())); } // - comparator = new MultiComparator<>(Arrays.asList(Order.incr, Order.shuffle, Order.decr)); + comparator = new MultiComparator<>(Arrays.asList(Order.asc, Order.shuffle, Order.desc)); assertEquals(1, comparator.compare(1, 2)); assertEquals(-1, comparator.compare(2, 1)); assertEquals(0, comparator.compare(2, 2)); assertEquals(2, comparator.startIndex); assertFalse(comparator.isShuffle()); // - comparator = new MultiComparator<>(Arrays.asList(Order.incr, Order.shuffle, Order.decr, Order.shuffle, Order.incr)); + comparator = new MultiComparator<>(Arrays.asList(Order.asc, Order.shuffle, Order.desc, Order.shuffle, Order.asc)); assertEquals(-1, comparator.compare(1, 2)); assertEquals(1, comparator.compare(2, 1)); assertEquals(0, comparator.compare(2, 2)); diff --git a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/NamingConversions.cs b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/NamingConversions.cs index 585c4f006bb..eadaa0ea63c 100644 --- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/NamingConversions.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/NamingConversions.cs @@ -72,6 +72,8 @@ internal static string GetEnumJavaName(string typeName, string value) {"Order.Decr", "decr"}, {"Order.Incr", "incr"}, {"Order.Shuffle", "shuffle"}, + {"Order.Asc", "asc"}, + {"Order.Desc", "desc"}, {"Pick.Any", "any"}, {"Pick.None", "none"}, {"Pop.All", "all"}, diff --git a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Order.cs b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Order.cs index 24301140c9f..9fce3329192 100644 --- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Order.cs +++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/Order.cs @@ -36,15 +36,21 @@ private Order(string enumValue) { } + public static Order Asc => new Order("asc"); + public static Order Decr => new Order("decr"); + public static Order Desc => new Order("desc"); + public static Order Incr => new Order("incr"); public static Order Shuffle => new Order("shuffle"); private static readonly IDictionary Properties = new Dictionary { + { "asc", Asc }, { "decr", Decr }, + { "desc", Desc }, { "incr", Incr }, { "shuffle", Shuffle }, }; diff --git a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Process/Traversal/DriverRemoteConnection/EnumTests.cs b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Process/Traversal/DriverRemoteConnection/EnumTests.cs index 00541ad190e..b849769e126 100644 --- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Process/Traversal/DriverRemoteConnection/EnumTests.cs +++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Process/Traversal/DriverRemoteConnection/EnumTests.cs @@ -39,7 +39,7 @@ public void ShouldUseOrderDecrInByStep() var connection = _connectionFactory.CreateRemoteConnection(); var g = graph.Traversal().WithRemote(connection); - var orderedAges = g.V().Values("age").Order().By(Order.Decr).ToList(); + var orderedAges = g.V().Values("age").Order().By(Order.Desc).ToList(); Assert.Equal(new List {35, 32, 29, 27}, orderedAges); } diff --git a/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/process/traversal.js b/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/process/traversal.js index b214d8db056..d39ccf0167c 100644 --- a/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/process/traversal.js +++ b/gremlin-javascript/src/main/javascript/gremlin-javascript/lib/process/traversal.js @@ -260,7 +260,7 @@ module.exports = { graphSONVersion: toEnum('GraphSONVersion', 'V1_0 V2_0 V3_0'), gryoVersion: toEnum('GryoVersion', 'V1_0 V3_0'), operator: toEnum('Operator', 'addAll and assign div max min minus mult or sum sumLong'), - order: toEnum('Order', 'decr incr shuffle'), + order: toEnum('Order', 'asc decr desc incr shuffle'), pick: toEnum('Pick', 'any none'), pop: toEnum('Pop', 'all first last mixed'), scope: toEnum('Scope', 'global local'), diff --git a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/unit/traversal-test.js b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/unit/traversal-test.js index 130a218e660..233488a91e2 100644 --- a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/unit/traversal-test.js +++ b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/unit/traversal-test.js @@ -44,7 +44,7 @@ describe('Traversal', function () { it('should add steps with an enum value', function () { const g = new graph.Graph().traversal(); - const bytecode = g.V().order().by('age', t.order.decr).getBytecode(); + const bytecode = g.V().order().by('age', t.order.desc).getBytecode(); assert.ok(bytecode); assert.strictEqual(bytecode.sourceInstructions.length, 0); assert.strictEqual(bytecode.stepInstructions.length, 3); @@ -54,7 +54,7 @@ describe('Traversal', function () { assert.strictEqual(bytecode.stepInstructions[2][1], 'age'); assert.strictEqual(typeof bytecode.stepInstructions[2][2], 'object'); assert.strictEqual(bytecode.stepInstructions[2][2].typeName, 'Order'); - assert.strictEqual(bytecode.stepInstructions[2][2].elementName, 'decr'); + assert.strictEqual(bytecode.stepInstructions[2][2].elementName, 'desc'); }); }); diff --git a/gremlin-python/src/main/jython/gremlin_python/process/traversal.py b/gremlin-python/src/main/jython/gremlin_python/process/traversal.py index a8208389567..068c865c3ec 100644 --- a/gremlin-python/src/main/jython/gremlin_python/process/traversal.py +++ b/gremlin-python/src/main/jython/gremlin_python/process/traversal.py @@ -148,11 +148,13 @@ def process(f): statics.add_static('addAll', Operator.addAll) statics.add_static('sumLong', Operator.sumLong) -Order = Enum('Order', ' decr incr shuffle') +Order = Enum('Order', ' asc decr desc incr shuffle') statics.add_static('incr', Order.incr) statics.add_static('decr', Order.decr) statics.add_static('shuffle', Order.shuffle) +statics.add_static('asc', Order.asc) +statics.add_static('desc', Order.desc) Pick = Enum('Pick', ' any none') diff --git a/gremlin-test/features/branch/Local.feature b/gremlin-test/features/branch/Local.feature index 0abb1ebb6d3..3b7ab9803c9 100644 --- a/gremlin-test/features/branch/Local.feature +++ b/gremlin-test/features/branch/Local.feature @@ -21,7 +21,7 @@ Feature: Step - local() Given the crew graph And the traversal of """ - g.V().local(__.properties("location").order().by(T.value, Order.incr).range(0, 2)).value() + g.V().local(__.properties("location").order().by(T.value, Order.asc).range(0, 2)).value() """ When iterated to list Then the result should be unordered diff --git a/gremlin-test/features/filter/Dedup.feature b/gremlin-test/features/filter/Dedup.feature index c502c96c627..501d02bbba5 100644 --- a/gremlin-test/features/filter/Dedup.feature +++ b/gremlin-test/features/filter/Dedup.feature @@ -169,11 +169,11 @@ Feature: Step - dedup() | p[v[josh],v[lop],v[marko]] | | p[v[peter],v[lop],v[marko]] | - Scenario: g_V_outE_asXeX_inV_asXvX_selectXeX_order_byXweight_incrX_selectXvX_valuesXnameX_dedup + Scenario: g_V_outE_asXeX_inV_asXvX_selectXeX_order_byXweight_ascX_selectXvX_valuesXnameX_dedup Given the modern graph And the traversal of """ - g.V().outE().as("e").inV().as("v").select("e").order().by("weight", Order.incr).select("v").values("name").dedup() + g.V().outE().as("e").inV().as("v").select("e").order().by("weight", Order.asc).select("v").values("name").dedup() """ When iterated to list Then the result should be unordered diff --git a/gremlin-test/features/map/AddEdge.feature b/gremlin-test/features/map/AddEdge.feature index 69c24c29ea5..028dceb6ef2 100644 --- a/gremlin-test/features/map/AddEdge.feature +++ b/gremlin-test/features/map/AddEdge.feature @@ -336,7 +336,7 @@ Feature: Step - addE() And the graph should return 1 for count of "g.V(v1).in(\"created\").has(\"name\",\"lop\")" And the graph should return 1 for count of "g.V(v1).outE(\"created\")" - Scenario: g_addEXV_outE_label_groupCount_orderXlocalX_byXvalues_decrX_selectXkeysX_unfold_limitX1XX_fromXV_hasXname_vadasXX_toXV_hasXname_lopXX + Scenario: g_addEXV_outE_label_groupCount_orderXlocalX_byXvalues_descX_selectXkeysX_unfold_limitX1XX_fromXV_hasXname_vadasXX_toXV_hasXname_lopXX Given the empty graph And the graph initializer of """ @@ -356,7 +356,7 @@ Feature: Step - addE() And using the parameter v2 defined as "v[vadas]" And the traversal of """ - g.addE(__.V().outE().label().groupCount().order(Scope.local).by(Column.values, Order.decr).select(Column.keys).unfold().limit(1)).from(__.V().has("name", "vadas")).to(__.V().has("name", "lop")) + g.addE(__.V().outE().label().groupCount().order(Scope.local).by(Column.values, Order.desc).select(Column.keys).unfold().limit(1)).from(__.V().has("name", "vadas")).to(__.V().has("name", "lop")) """ When iterated to list Then the result should have a count of 1 diff --git a/gremlin-test/features/map/Match.feature b/gremlin-test/features/map/Match.feature index 55dffcf7c2d..c019cd05783 100644 --- a/gremlin-test/features/map/Match.feature +++ b/gremlin-test/features/map/Match.feature @@ -320,11 +320,11 @@ Feature: Step - match() | m[{"a":"v[josh]","b":"v[lop]"}] | | m[{"a":"v[peter]","b":"v[lop]"}] | - Scenario: g_V_matchXa_outEXcreatedX_order_byXweight_decrX_limitX1X_inV_b__b_hasXlang_javaXX_selectXa_bX_byXnameX + Scenario: g_V_matchXa_outEXcreatedX_order_byXweight_descX_limitX1X_inV_b__b_hasXlang_javaXX_selectXa_bX_byXnameX Given the modern graph And the traversal of """ - g.V().match(__.as("a").outE("created").order().by("weight", Order.decr).limit(1).inV().as("b"), + g.V().match(__.as("a").outE("created").order().by("weight", Order.desc).limit(1).inV().as("b"), __.as("b").has("lang", "java")).select("a", "b").by("name") """ When iterated to list diff --git a/gremlin-test/features/map/Order.feature b/gremlin-test/features/map/Order.feature index 33ae97ac9e8..f36187856cc 100644 --- a/gremlin-test/features/map/Order.feature +++ b/gremlin-test/features/map/Order.feature @@ -67,6 +67,22 @@ Feature: Step - order() | ripple | | vadas | + Scenario: g_V_order_byXname_ascX_name + Given the modern graph + And the traversal of + """ + g.V().order().by("name", Order.asc).values("name") + """ + When iterated to list + Then the result should be ordered + | result | + | josh | + | lop | + | marko | + | peter | + | ripple | + | vadas | + Scenario: g_V_order_byXnameX_name Given the modern graph And the traversal of @@ -99,6 +115,22 @@ Feature: Step - order() | d[0.4].d | | d[0.2].d | + Scenario: g_V_outE_order_byXweight_descX_weight + Given the modern graph + And the traversal of + """ + g.V().outE().order().by("weight", Order.desc).values("weight") + """ + When iterated to list + Then the result should be ordered + | result | + | d[1.0].d | + | d[1.0].d | + | d[0.5].d | + | d[0.4].d | + | d[0.4].d | + | d[0.2].d | + Scenario: g_V_order_byXname_a1_b1X_byXname_b2_a2X_name Given the modern graph And using the parameter l1 defined as "c[a, b -> a.substring(1, 2).compareTo(b.substring(1, 2))]" @@ -131,11 +163,11 @@ Feature: Step - order() | m[{"a":"v[josh]","b":"v[ripple]"}] | | m[{"a":"v[josh]","b":"v[lop]"}] | - Scenario: g_V_both_hasLabelXpersonX_order_byXage_decrX_limitX5X_name + Scenario: g_V_both_hasLabelXpersonX_order_byXage_descX_limitX5X_name Given the modern graph And the traversal of """ - g.V().both().hasLabel("person").order().by("age", Order.decr).limit(5).values("name") + g.V().both().hasLabel("person").order().by("age", Order.desc).limit(5).values("name") """ When iterated to list Then the result should be ordered @@ -146,11 +178,11 @@ Feature: Step - order() | josh | | marko | - Scenario: g_V_properties_order_byXkey_decrX_key + Scenario: g_V_properties_order_byXkey_descX_key Given the modern graph And the traversal of """ - g.V().properties().order().by(T.key, Order.decr).key() + g.V().properties().order().by(T.key, Order.desc).key() """ When iterated to list Then the result should be ordered @@ -168,12 +200,12 @@ Feature: Step - order() | age | | age | - Scenario: g_V_hasLabelXpersonX_order_byXvalueXageX__decrX_name + Scenario: g_V_hasLabelXpersonX_order_byXvalueXageX_descX_name Given the modern graph And using the parameter l1 defined as "c[it.value('age')]" And the traversal of """ - g.V().hasLabel("person").order().by(l1, Order.decr).values("name") + g.V().hasLabel("person").order().by(l1, Order.desc).values("name") """ When iterated to list Then the result should be ordered @@ -194,11 +226,11 @@ Feature: Step - order() | result | | m[{"vadas":"d[0].i","peter":"d[0.2].d","josh":"d[1.4].d","marko":"d[1.9].d"}] | - Scenario: g_V_localXbothE_weight_foldX_order_byXsumXlocalX_decrX + Scenario: g_V_localXbothE_weight_foldX_order_byXsumXlocalX_descX Given the modern graph And the traversal of """ - g.V().local(__.bothE().values("weight").fold()).order().by(__.sum(Scope.local), Order.decr) + g.V().local(__.bothE().values("weight").fold()).order().by(__.sum(Scope.local), Order.desc) """ When iterated to list Then the result should be ordered @@ -210,22 +242,22 @@ Feature: Step - order() | l[d[0.5].d] | | l[d[0.2].d] | - Scenario: g_V_group_byXlabelX_byXname_order_byXdecrX_foldX + Scenario: g_V_group_byXlabelX_byXname_order_byXdescX_foldX Given the modern graph And the traversal of """ - g.V().group().by(T.label).by(__.values("name").order().by(Order.decr).fold()) + g.V().group().by(T.label).by(__.values("name").order().by(Order.desc).fold()) """ When iterated to list Then the result should be ordered | result | | m[{"software":"l[ripple,lop]","person":"l[vadas,peter,marko,josh]"}] | - Scenario: g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_unfold_order_byXvalues_decrX + Scenario: g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_unfold_order_byXvalues_descX Given the modern graph And the traversal of """ - g.V().hasLabel("person").group().by("name").by(__.outE().values("weight").sum()).unfold().order().by(Column.values, Order.decr) + g.V().hasLabel("person").group().by("name").by(__.outE().values("weight").sum()).unfold().order().by(Column.values, Order.desc) """ When iterated to list Then the result should be ordered @@ -235,11 +267,11 @@ Feature: Step - order() | m[{"peter":"d[0.2].d"}] | | m[{"vadas":"d[0].i"}] | - Scenario: g_V_asXvX_mapXbothE_weight_foldX_sumXlocalX_asXsX_selectXv_sX_order_byXselectXsX_decrX + Scenario: g_V_asXvX_mapXbothE_weight_foldX_sumXlocalX_asXsX_selectXv_sX_order_byXselectXsX_descX Given the modern graph And the traversal of """ - g.V().as("v").map(__.bothE().values("weight").fold()).sum(Scope.local).as("s").select("v", "s").order().by(__.select("s"), Order.decr) + g.V().as("v").map(__.bothE().values("weight").fold()).sum(Scope.local).as("s").select("v", "s").order().by(__.select("s"), Order.desc) """ When iterated to list Then the result should be ordered @@ -262,11 +294,11 @@ Feature: Step - order() | result | | l[v[vadas],v[marko],v[josh],v[peter]] | - Scenario: g_V_both_hasLabelXpersonX_order_byXage_decrX_name + Scenario: g_V_both_hasLabelXpersonX_order_byXage_descX_name Given the modern graph And the traversal of """ - g.V().both().hasLabel("person").order().by("age", Order.decr).values("name") + g.V().both().hasLabel("person").order().by("age", Order.desc).values("name") """ When iterated to list Then the result should be ordered @@ -280,11 +312,11 @@ Feature: Step - order() | marko | | vadas | - Scenario: g_V_order_byXoutE_count__decrX + Scenario: g_V_order_byXoutE_count_descX Given the modern graph And the traversal of """ - g.V().order().by(__.outE().count(), Order.decr) + g.V().order().by(__.outE().count(), Order.desc) """ When iterated to list Then the result should be ordered @@ -310,13 +342,13 @@ Feature: Step - order() | v[josh] | | v[peter] | - Scenario: g_VX1X_hasXlabel_personX_mapXmapXint_ageXX_orderXlocalX_byXvalues_decrX_byXkeys_incrX + Scenario: g_VX1X_hasXlabel_personX_mapXmapXint_ageXX_orderXlocalX_byXvalues_descX_byXkeys_ascX Given the modern graph And using the parameter v1 defined as "v[marko]" And using the parameter l1 defined as "c[['1':it.get().value('age'),'2':it.get().value('age')*2,'3':it.get().value('age')*3,'4':it.get().value('age')]]" And the traversal of """ - g.V(v1).hasLabel("person").map(l1).order(Scope.local).by(Column.values, Order.decr).by(Column.keys, Order.incr) + g.V(v1).hasLabel("person").map(l1).order(Scope.local).by(Column.values, Order.desc).by(Column.keys, Order.asc) """ When iterated to list Then the result should be ordered diff --git a/gremlin-test/features/map/Project.feature b/gremlin-test/features/map/Project.feature index cda20291130..8974312800c 100644 --- a/gremlin-test/features/map/Project.feature +++ b/gremlin-test/features/map/Project.feature @@ -34,7 +34,7 @@ Feature: Step - project() | m[{"a":"d[2].l", "b":"d[32].i"}] | | m[{"a":"d[1].l", "b":"d[35].i"}] | - Scenario: g_V_outXcreatedX_projectXa_bX_byXnameX_byXinXcreatedX_countX_order_byXselectXbX__decrX_selectXaX + Scenario: g_V_outXcreatedX_projectXa_bX_byXnameX_byXinXcreatedX_countX_order_byXselectXbX__descX_selectXaX Given the modern graph And the traversal of """ @@ -43,7 +43,7 @@ Feature: Step - project() by("name"). by(__.in("created").count()). order(). - by(__.select("b"), Order.decr). + by(__.select("b"), Order.desc). select("a") """ When iterated to list diff --git a/gremlin-test/features/map/Select.feature b/gremlin-test/features/map/Select.feature index 713dd816c5c..341a378b975 100644 --- a/gremlin-test/features/map/Select.feature +++ b/gremlin-test/features/map/Select.feature @@ -125,13 +125,13 @@ Feature: Step - select() | m[{"a": "lop", "b": "lop"}] | | m[{"a": "peter", "b": "peter"}] | - Scenario: g_V_hasXname_gremlinX_inEXusesX_order_byXskill_incrX_asXaX_outV_asXbX_selectXa_bX_byXskillX_byXnameX + Scenario: g_V_hasXname_gremlinX_inEXusesX_order_byXskill_ascX_asXaX_outV_asXbX_selectXa_bX_byXskillX_byXnameX Given the crew graph And the traversal of """ g.V().has("name", "gremlin"). inE("uses"). - order().by("skill", Order.incr).as("a"). + order().by("skill", Order.asc).as("a"). outV().as("b"). select("a", "b"). by("skill"). diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/ComplexTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/ComplexTest.java index 5c6a1e57c4e..75dd0f516f8 100644 --- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/ComplexTest.java +++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/ComplexTest.java @@ -256,8 +256,8 @@ public Traversal getClassicRecommendation() { by(select(keys).values("performances")). by(select(values)). order(). - by(select("z"), Order.decr). - by(select("y"), Order.incr). + by(select("z"), Order.desc). + by(select("y"), Order.asc). limit(5).store("m").select("x"); } diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/branch/LocalTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/branch/LocalTest.java index faec45edcc5..6f70bb179bd 100644 --- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/branch/LocalTest.java +++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/branch/LocalTest.java @@ -225,7 +225,7 @@ public static class Traversals extends LocalTest { @Override public Traversal get_g_V_localXpropertiesXlocationX_order_byXvalueX_limitX2XX_value() { - return g.V().local(properties("location").order().by(T.value, Order.incr).range(0, 2)).value(); + return g.V().local(properties("location").order().by(T.value, Order.asc).range(0, 2)).value(); } @Override diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/DedupTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/DedupTest.java index ef5086ffd28..0877ddb3831 100644 --- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/DedupTest.java +++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/filter/DedupTest.java @@ -77,7 +77,7 @@ public abstract class DedupTest extends AbstractGremlinProcessTest { public abstract Traversal get_g_V_asXaX_outXcreatedX_asXbX_inXcreatedX_asXcX_dedupXa_bX_path(); - public abstract Traversal get_g_V_outE_asXeX_inV_asXvX_selectXeX_order_byXweight_incrX_selectXvX_valuesXnameX_dedup(); + public abstract Traversal get_g_V_outE_asXeX_inV_asXvX_selectXeX_order_byXweight_ascX_selectXvX_valuesXnameX_dedup(); public abstract Traversal get_g_V_both_both_dedup_byXoutE_countX_name(); @@ -253,8 +253,8 @@ public void g_V_asXaX_outXcreatedX_asXbX_inXcreatedX_asXcX_dedupXa_bX_path() { @Test @LoadGraphWith(MODERN) - public void g_V_outE_asXeX_inV_asXvX_selectXeX_order_byXweight_incrX_selectXvX_valuesXnameX_dedup() { - final Traversal traversal = get_g_V_outE_asXeX_inV_asXvX_selectXeX_order_byXweight_incrX_selectXvX_valuesXnameX_dedup(); + public void g_V_outE_asXeX_inV_asXvX_selectXeX_order_byXweight_ascX_selectXvX_valuesXnameX_dedup() { + final Traversal traversal = get_g_V_outE_asXeX_inV_asXvX_selectXeX_order_byXweight_ascX_selectXvX_valuesXnameX_dedup(); printTraversalForm(traversal); final List names = traversal.toList(); assertEquals(4, names.size()); @@ -370,8 +370,8 @@ public Traversal get_g_V_asXaX_outXcreatedX_asXbX_inXcreatedX_asXc } @Override - public Traversal get_g_V_outE_asXeX_inV_asXvX_selectXeX_order_byXweight_incrX_selectXvX_valuesXnameX_dedup() { - return g.V().outE().as("e").inV().as("v").select("e").order().by("weight", Order.incr).select("v").values("name").dedup(); + public Traversal get_g_V_outE_asXeX_inV_asXvX_selectXeX_order_byXweight_ascX_selectXvX_valuesXnameX_dedup() { + return g.V().outE().as("e").inV().as("v").select("e").order().by("weight", Order.asc).select("v").values("name").dedup(); } @Override diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddEdgeTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddEdgeTest.java index d340297e361..54c40914406 100644 --- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddEdgeTest.java +++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/AddEdgeTest.java @@ -35,7 +35,7 @@ import java.util.Arrays; import static org.apache.tinkerpop.gremlin.LoadGraphWith.GraphData.MODERN; -import static org.apache.tinkerpop.gremlin.process.traversal.Order.decr; +import static org.apache.tinkerpop.gremlin.process.traversal.Order.desc; import static org.apache.tinkerpop.gremlin.process.traversal.Scope.local; import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.V; import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.bothE; @@ -74,7 +74,7 @@ public abstract class AddEdgeTest extends AbstractGremlinProcessTest { public abstract Traversal get_g_V_hasXname_markoX_asXaX_outEXcreatedX_asXbX_inV_addEXselectXbX_labelX_toXaX(); - public abstract Traversal get_g_addEXV_outE_label_groupCount_orderXlocalX_byXvalues_decrX_selectXkeysX_unfold_limitX1XX_fromXV_hasXname_vadasXX_toXV_hasXname_lopXX(); + public abstract Traversal get_g_addEXV_outE_label_groupCount_orderXlocalX_byXvalues_descX_selectXkeysX_unfold_limitX1XX_fromXV_hasXname_vadasXX_toXV_hasXname_lopXX(); /////// @@ -281,8 +281,8 @@ public void g_V_hasXname_markoX_asXaX_outEXcreatedX_asXbX_inV_addEXselectXbX_lab @Test @LoadGraphWith(MODERN) @FeatureRequirement(featureClass = Graph.Features.EdgeFeatures.class, feature = Graph.Features.EdgeFeatures.FEATURE_ADD_EDGES) - public void g_addEXV_outE_label_groupCount_orderXlocalX_byXvalues_decrX_selectXkeysX_unfold_limitX1XX_fromXV_hasXname_vadasXX_toXV_hasXname_lopXX() { - final Traversal traversal = get_g_addEXV_outE_label_groupCount_orderXlocalX_byXvalues_decrX_selectXkeysX_unfold_limitX1XX_fromXV_hasXname_vadasXX_toXV_hasXname_lopXX(); + public void g_addEXV_outE_label_groupCount_orderXlocalX_byXvalues_descX_selectXkeysX_unfold_limitX1XX_fromXV_hasXname_vadasXX_toXV_hasXname_lopXX() { + final Traversal traversal = get_g_addEXV_outE_label_groupCount_orderXlocalX_byXvalues_descX_selectXkeysX_unfold_limitX1XX_fromXV_hasXname_vadasXX_toXV_hasXname_lopXX(); printTraversalForm(traversal); final Edge edge = traversal.next(); assertFalse(traversal.hasNext()); @@ -346,8 +346,8 @@ public Traversal get_g_V_hasXname_markoX_asXaX_outEXcreatedX_asXbX } @Override - public Traversal get_g_addEXV_outE_label_groupCount_orderXlocalX_byXvalues_decrX_selectXkeysX_unfold_limitX1XX_fromXV_hasXname_vadasXX_toXV_hasXname_lopXX() { - return g.addE(V().outE().label().groupCount().order(local).by(values, decr).select(keys).unfold().limit(1)).from(V().has("name", "vadas")).to(V().has("name", "lop")); + public Traversal get_g_addEXV_outE_label_groupCount_orderXlocalX_byXvalues_descX_selectXkeysX_unfold_limitX1XX_fromXV_hasXname_vadasXX_toXV_hasXname_lopXX() { + return g.addE(V().outE().label().groupCount().order(local).by(values, desc).select(keys).unfold().limit(1)).from(V().has("name", "vadas")).to(V().has("name", "lop")); } } } diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/MatchTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/MatchTest.java index 40ae6e95f33..ec59d335996 100644 --- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/MatchTest.java +++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/MatchTest.java @@ -42,7 +42,7 @@ import static org.apache.tinkerpop.gremlin.LoadGraphWith.GraphData.GRATEFUL; import static org.apache.tinkerpop.gremlin.LoadGraphWith.GraphData.MODERN; -import static org.apache.tinkerpop.gremlin.process.traversal.Order.decr; +import static org.apache.tinkerpop.gremlin.process.traversal.Order.desc; import static org.apache.tinkerpop.gremlin.process.traversal.P.eq; import static org.apache.tinkerpop.gremlin.process.traversal.P.neq; import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.and; @@ -166,7 +166,7 @@ public abstract class MatchTest extends AbstractGremlinProcessTest { public abstract Traversal get_g_V_matchXa_hasXsong_name_sunshineX__a_mapX0followedBy_weight_meanX_b__a_0followedBy_c__c_filterXweight_whereXgteXbXXX_outV_dX_selectXdX_byXnameX(); // test order barriers - public abstract Traversal> get_g_V_matchXa_outEXcreatedX_order_byXweight_decrX_limitX1X_inV_b__b_hasXlang_javaXX_selectXa_bX_byXnameX(); + public abstract Traversal> get_g_V_matchXa_outEXcreatedX_order_byXweight_descX_limitX1X_inV_b__b_hasXlang_javaXX_selectXa_bX_byXnameX(); @Test @@ -587,8 +587,8 @@ public void g_V_matchXa_hasXsong_name_sunshineX__a_mapX0followedBy_weight_meanX_ @Test @LoadGraphWith(MODERN) - public void g_V_matchXa_outEXcreatedX_order_byXweight_decrX_limitX1X_inV_b__b_hasXlang_javaXX_selectXa_bX_byXnameX() { - final Traversal> traversal = get_g_V_matchXa_outEXcreatedX_order_byXweight_decrX_limitX1X_inV_b__b_hasXlang_javaXX_selectXa_bX_byXnameX(); + public void g_V_matchXa_outEXcreatedX_order_byXweight_descX_limitX1X_inV_b__b_hasXlang_javaXX_selectXa_bX_byXnameX() { + final Traversal> traversal = get_g_V_matchXa_outEXcreatedX_order_byXweight_descX_limitX1X_inV_b__b_hasXlang_javaXX_selectXa_bX_byXnameX(); printTraversalForm(traversal); checkResults(makeMapList(2, "a", "marko", "b", "lop", @@ -892,9 +892,9 @@ public Traversal get_g_V_matchXa_hasXsong_name_sunshineX__a_mapX } @Override - public Traversal> get_g_V_matchXa_outEXcreatedX_order_byXweight_decrX_limitX1X_inV_b__b_hasXlang_javaXX_selectXa_bX_byXnameX() { + public Traversal> get_g_V_matchXa_outEXcreatedX_order_byXweight_descX_limitX1X_inV_b__b_hasXlang_javaXX_selectXa_bX_byXnameX() { return g.V().match( - as("a").outE("created").order().by("weight", decr).limit(1).inV().as("b"), + as("a").outE("created").order().by("weight", desc).limit(1).inV().as("b"), as("b").has("lang", "java")). select("a", "b").by("name"); } diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/MathTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/MathTest.java index 20d8392a885..04096ed7436 100644 --- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/MathTest.java +++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/MathTest.java @@ -33,7 +33,7 @@ import static org.apache.tinkerpop.gremlin.LoadGraphWith.GraphData.MODERN; import static org.apache.tinkerpop.gremlin.process.traversal.Operator.sum; -import static org.apache.tinkerpop.gremlin.process.traversal.Order.decr; +import static org.apache.tinkerpop.gremlin.process.traversal.Order.desc; import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.bothE; import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.in; import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.math; @@ -54,7 +54,7 @@ public abstract class MathTest extends AbstractGremlinProcessTest { public abstract Traversal get_g_withSackX1X_injectX1X_repeatXsackXsumX_byXconstantX1XXX_timesX5X_emit_mathXsin__X_byXsackX(); - public abstract Traversal get_g_V_projectXa_b_cX_byXbothE_weight_sumX_byXbothE_countX_byXnameX_order_byXmathXa_div_bX_decrX_selectXcX(); + public abstract Traversal get_g_V_projectXa_b_cX_byXbothE_weight_sumX_byXbothE_countX_byXnameX_order_byXmathXa_div_bX_descX_selectXcX(); @Test @LoadGraphWith(MODERN) @@ -94,8 +94,8 @@ public void g_withSackX1X_injectX1X_repeatXsackXsumX_byXconstantX1XXX_timesX5X_e @Test @LoadGraphWith(MODERN) - public void g_V_projectXa_b_cX_byXbothE_weight_sumX_byXbothE_countX_byXnameX_order_byXmathXa_div_bX_decrX_selectXcX() { - final Traversal traversal = get_g_V_projectXa_b_cX_byXbothE_weight_sumX_byXbothE_countX_byXnameX_order_byXmathXa_div_bX_decrX_selectXcX(); + public void g_V_projectXa_b_cX_byXbothE_weight_sumX_byXbothE_countX_byXnameX_order_byXmathXa_div_bX_descX_selectXcX() { + final Traversal traversal = get_g_V_projectXa_b_cX_byXbothE_weight_sumX_byXbothE_countX_byXnameX_order_byXmathXa_div_bX_descX_selectXcX(); printTraversalForm(traversal); checkResults(Arrays.asList("ripple", "josh", "marko", "vadas", "lop", "peter"), traversal); } @@ -123,8 +123,8 @@ public Traversal get_g_withSackX1X_injectX1X_repeatXsackXsumX_b } @Override - public Traversal get_g_V_projectXa_b_cX_byXbothE_weight_sumX_byXbothE_countX_byXnameX_order_byXmathXa_div_bX_decrX_selectXcX() { - return g.V().project("a", "b", "c").by(bothE().values("weight").sum()).by(bothE().count()).by("name").order().by(math("a / b"), decr).select("c"); + public Traversal get_g_V_projectXa_b_cX_byXbothE_weight_sumX_byXbothE_countX_byXnameX_order_byXmathXa_div_bX_descX_selectXcX() { + return g.V().project("a", "b", "c").by(bothE().values("weight").sum()).by(bothE().count()).by("name").order().by(math("a / b"), desc).select("c"); } } } \ No newline at end of file diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderTest.java index bbf63ef7f17..3cb50aadfa8 100644 --- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderTest.java +++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/OrderTest.java @@ -62,43 +62,47 @@ public abstract class OrderTest extends AbstractGremlinProcessTest { public abstract Traversal get_g_V_order_byXname_incrX_name(); + public abstract Traversal get_g_V_order_byXname_ascX_name(); + public abstract Traversal get_g_V_order_byXnameX_name(); public abstract Traversal get_g_V_outE_order_byXweight_decrX_weight(); + public abstract Traversal get_g_V_outE_order_byXweight_descX_weight(); + public abstract Traversal get_g_V_order_byXname_a1_b1X_byXname_b2_a2X_name(); public abstract Traversal> get_g_V_asXaX_outXcreatedX_asXbX_order_byXshuffleX_selectXa_bX(); - public abstract Traversal> get_g_VX1X_hasXlabel_personX_mapXmapXint_ageXX_orderXlocalX_byXvalues_decrX_byXkeys_incrX(final Object v1Id); + public abstract Traversal> get_g_VX1X_hasXlabel_personX_mapXmapXint_ageXX_orderXlocalX_byXvalues_descX_byXkeys_ascX(final Object v1Id); - public abstract Traversal get_g_V_order_byXoutE_count__decrX(); + public abstract Traversal get_g_V_order_byXoutE_count_descX(); - public abstract Traversal>> get_g_V_group_byXlabelX_byXname_order_byXdecrX_foldX(); + public abstract Traversal>> get_g_V_group_byXlabelX_byXname_order_byXdescX_foldX(); - public abstract Traversal> get_g_V_localXbothE_weight_foldX_order_byXsumXlocalX_decrX(); + public abstract Traversal> get_g_V_localXbothE_weight_foldX_order_byXsumXlocalX_descX(); - public abstract Traversal> get_g_V_asXvX_mapXbothE_weight_foldX_sumXlocalX_asXsX_selectXv_sX_order_byXselectXsX_decrX(); + public abstract Traversal> get_g_V_asXvX_mapXbothE_weight_foldX_sumXlocalX_asXsX_selectXv_sX_order_byXselectXsX_descX(); public abstract Traversal get_g_V_hasLabelXpersonX_order_byXageX(); public abstract Traversal> get_g_V_hasLabelXpersonX_fold_orderXlocalX_byXageX(); - public abstract Traversal get_g_V_hasLabelXpersonX_order_byXvalueXageX__decrX_name(); + public abstract Traversal get_g_V_hasLabelXpersonX_order_byXvalueXageX_descX_name(); - public abstract Traversal get_g_V_properties_order_byXkey_decrX_key(); + public abstract Traversal get_g_V_properties_order_byXkey_descX_key(); - public abstract Traversal get_g_V_hasXsong_name_OHBOYX_outXfollowedByX_outXfollowedByX_order_byXperformancesX_byXsongType_incrX(); + public abstract Traversal get_g_V_hasXsong_name_OHBOYX_outXfollowedByX_outXfollowedByX_order_byXperformancesX_byXsongType_descX(); - public abstract Traversal get_g_V_both_hasLabelXpersonX_order_byXage_decrX_limitX5X_name(); + public abstract Traversal get_g_V_both_hasLabelXpersonX_order_byXage_descX_limitX5X_name(); - public abstract Traversal get_g_V_both_hasLabelXpersonX_order_byXage_decrX_name(); + public abstract Traversal get_g_V_both_hasLabelXpersonX_order_byXage_descX_name(); - public abstract Traversal get_g_V_hasLabelXsongX_order_byXperfomances_decrX_byXnameX_rangeX110_120X_name(); + public abstract Traversal get_g_V_hasLabelXsongX_order_byXperformances_descX_byXnameX_rangeX110_120X_name(); public abstract Traversal> get_g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_orderXlocalX_byXvaluesX(); - public abstract Traversal> get_g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_unfold_order_byXvalues_decrX(); + public abstract Traversal> get_g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_unfold_order_byXvalues_descX(); @Test @LoadGraphWith(MODERN) @@ -124,6 +128,14 @@ public void g_V_order_byXname_incrX_name() { checkOrderedResults(Arrays.asList("josh", "lop", "marko", "peter", "ripple", "vadas"), traversal); } + @Test + @LoadGraphWith(MODERN) + public void g_V_order_byXname_ascX_name() { + final Traversal traversal = get_g_V_order_byXname_ascX_name(); + printTraversalForm(traversal); + checkOrderedResults(Arrays.asList("josh", "lop", "marko", "peter", "ripple", "vadas"), traversal); + } + @Test @LoadGraphWith(MODERN) public void g_V_order_byXnameX_name() { @@ -140,6 +152,14 @@ public void g_V_outE_order_byXweight_decrX_weight() { checkOrderedResults(Arrays.asList(1.0d, 1.0d, 0.5d, 0.4d, 0.4d, 0.2d), traversal); } + @Test + @LoadGraphWith(MODERN) + public void g_V_outE_order_byXweight_descX_weight() { + final Traversal traversal = get_g_V_outE_order_byXweight_descX_weight(); + printTraversalForm(traversal); + checkOrderedResults(Arrays.asList(1.0d, 1.0d, 0.5d, 0.4d, 0.4d, 0.2d), traversal); + } + @Test @LoadGraphWith(MODERN) public void g_V_order_byXname_a1_b1X_byXname_b2_a2X_name() { @@ -183,8 +203,8 @@ public void g_V_asXaX_outXcreatedX_asXbX_order_byXshuffleX_selectXa_bX() { @Test @LoadGraphWith(MODERN) - public void g_VX1X_hasXlabel_personX_mapXmapXint_ageXX_orderXlocalX_byXvalues_decrX_byXkeys_incrX() { - final Traversal> traversal = get_g_VX1X_hasXlabel_personX_mapXmapXint_ageXX_orderXlocalX_byXvalues_decrX_byXkeys_incrX(convertToVertexId("marko")); + public void g_VX1X_hasXlabel_personX_mapXmapXint_ageXX_orderXlocalX_byXvalues_descX_byXkeys_ascX() { + final Traversal> traversal = get_g_VX1X_hasXlabel_personX_mapXmapXint_ageXX_orderXlocalX_byXvalues_descX_byXkeys_ascX(convertToVertexId("marko")); printTraversalForm(traversal); final Map map = traversal.next(); assertFalse(traversal.hasNext()); @@ -208,8 +228,8 @@ public void g_VX1X_hasXlabel_personX_mapXmapXint_ageXX_orderXlocalX_byXvalues_de @Test @LoadGraphWith(MODERN) - public void g_V_order_byXoutE_count__decrX() { - Arrays.asList(get_g_V_order_byXoutE_count__decrX()).forEach(traversal -> { + public void g_V_order_byXoutE_count_descX() { + Arrays.asList(get_g_V_order_byXoutE_count_descX()).forEach(traversal -> { printTraversalForm(traversal); final List vertices = traversal.toList(); assertEquals(vertices.size(), 6); @@ -224,8 +244,8 @@ public void g_V_order_byXoutE_count__decrX() { @Test @LoadGraphWith(MODERN) - public void g_V_group_byXlabelX_byXname_order_byXdecrX_foldX() { - final Traversal>> traversal = get_g_V_group_byXlabelX_byXname_order_byXdecrX_foldX(); + public void g_V_group_byXlabelX_byXname_order_byXdescX_foldX() { + final Traversal>> traversal = get_g_V_group_byXlabelX_byXname_order_byXdescX_foldX(); printTraversalForm(traversal); final Map> map = traversal.next(); assertFalse(traversal.hasNext()); @@ -244,8 +264,8 @@ public void g_V_group_byXlabelX_byXname_order_byXdecrX_foldX() { @Test @LoadGraphWith(MODERN) - public void g_V_localXbothE_weight_foldX_order_byXsumXlocalX_decrX() { - final Traversal> traversal = get_g_V_localXbothE_weight_foldX_order_byXsumXlocalX_decrX(); + public void g_V_localXbothE_weight_foldX_order_byXsumXlocalX_descX() { + final Traversal> traversal = get_g_V_localXbothE_weight_foldX_order_byXsumXlocalX_descX(); final List> list = traversal.toList(); assertEquals(list.get(0).size(), 3); assertEquals(list.get(1).size(), 3); @@ -264,8 +284,8 @@ public void g_V_localXbothE_weight_foldX_order_byXsumXlocalX_decrX() { @Test @LoadGraphWith(MODERN) - public void g_V_asXvX_mapXbothE_weight_foldX_sumXlocalX_asXsX_selectXv_sX_order_byXselectXsX_decrX() { - final Traversal> traversal = get_g_V_asXvX_mapXbothE_weight_foldX_sumXlocalX_asXsX_selectXv_sX_order_byXselectXsX_decrX(); + public void g_V_asXvX_mapXbothE_weight_foldX_sumXlocalX_asXsX_selectXv_sX_order_byXselectXsX_descX() { + final Traversal> traversal = get_g_V_asXvX_mapXbothE_weight_foldX_sumXlocalX_asXsX_selectXv_sX_order_byXselectXsX_descX(); final List> list = traversal.toList(); assertEquals(convertToVertex(graph, "josh"), list.get(0).get("v")); assertEquals(2.4d, (Double) list.get(0).get("s"), 0.1d); @@ -305,16 +325,16 @@ public void g_V_hasLabelXpersonX_fold_orderXlocalX_byXageX() { @Test @LoadGraphWith(MODERN) - public void g_V_hasLabelXpersonX_order_byXvalueXageX__decrX_name() { - final Traversal traversal = get_g_V_hasLabelXpersonX_order_byXvalueXageX__decrX_name(); + public void g_V_hasLabelXpersonX_order_byXvalueXageX_descX_name() { + final Traversal traversal = get_g_V_hasLabelXpersonX_order_byXvalueXageX_descX_name(); printTraversalForm(traversal); checkOrderedResults(Arrays.asList("peter", "josh", "marko", "vadas"), traversal); } @Test @LoadGraphWith(MODERN) - public void g_V_properties_order_byXkey_decrX_key() { - final Traversal traversal = get_g_V_properties_order_byXkey_decrX_key(); + public void g_V_properties_order_byXkey_descX_key() { + final Traversal traversal = get_g_V_properties_order_byXkey_descX_key(); printTraversalForm(traversal); checkOrderedResults(Arrays.asList( "name", "name", "name", "name", "name", "name", @@ -324,8 +344,8 @@ public void g_V_properties_order_byXkey_decrX_key() { @Test @LoadGraphWith(GRATEFUL) - public void g_V_hasXsong_name_OHBOYX_outXfollowedByX_outXfollowedByX_order_byXperformancesX_byXsongType_incrX() { - final Traversal traversal = get_g_V_hasXsong_name_OHBOYX_outXfollowedByX_outXfollowedByX_order_byXperformancesX_byXsongType_incrX(); + public void g_V_hasXsong_name_OHBOYX_outXfollowedByX_outXfollowedByX_order_byXperformancesX_byXsongType_descX() { + final Traversal traversal = get_g_V_hasXsong_name_OHBOYX_outXfollowedByX_outXfollowedByX_order_byXperformancesX_byXsongType_descX(); printTraversalForm(traversal); int counter = 0; String lastSongType = "a"; @@ -346,8 +366,8 @@ public void g_V_hasXsong_name_OHBOYX_outXfollowedByX_outXfollowedByX_order_byXpe @Test @LoadGraphWith(MODERN) - public void g_V_both_hasLabelXpersonX_order_byXage_decrX_limitX5X_name() { - final Traversal traversal = get_g_V_both_hasLabelXpersonX_order_byXage_decrX_limitX5X_name(); + public void g_V_both_hasLabelXpersonX_order_byXage_descX_limitX5X_name() { + final Traversal traversal = get_g_V_both_hasLabelXpersonX_order_byXage_descX_limitX5X_name(); printTraversalForm(traversal); checkOrderedResults(Arrays.asList("peter", "josh", "josh", "josh", "marko"), traversal); } @@ -355,8 +375,8 @@ public void g_V_both_hasLabelXpersonX_order_byXage_decrX_limitX5X_name() { @Test @IgnoreEngine(TraversalEngine.Type.STANDARD) // validating the internal sort/limit works in GraphComputer @LoadGraphWith(MODERN) - public void g_V_both_hasLabelXpersonX_order_byXage_decrX_name() { - final Traversal traversal = get_g_V_both_hasLabelXpersonX_order_byXage_decrX_name(); + public void g_V_both_hasLabelXpersonX_order_byXage_descX_name() { + final Traversal traversal = get_g_V_both_hasLabelXpersonX_order_byXage_descX_name(); traversal.asAdmin().applyStrategies(); if (!TraversalHelper.getFirstStepOfAssignableClass(OrderGlobalStep.class, traversal.asAdmin()).isPresent()) return; // total hack to avoid providers that don't compile to OrderGlobalStep @@ -369,8 +389,8 @@ public void g_V_both_hasLabelXpersonX_order_byXage_decrX_name() { @Test @LoadGraphWith(GRATEFUL) - public void g_V_hasLabelXsongX_order_byXperfomances_decrX_byXnameX_rangeX110_120X_name() { - final Traversal traversal = get_g_V_hasLabelXsongX_order_byXperfomances_decrX_byXnameX_rangeX110_120X_name(); + public void g_V_hasLabelXsongX_order_byXperformances_descX_byXnameX_rangeX110_120X_name() { + final Traversal traversal = get_g_V_hasLabelXsongX_order_byXperformances_descX_byXnameX_rangeX110_120X_name(); printTraversalForm(traversal); checkOrderedResults(Arrays.asList( "WANG DANG DOODLE", "THE ELEVEN", "WAY TO GO HOME", "FOOLISH HEART", @@ -404,8 +424,8 @@ public void g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_orderXlocalX @Test @LoadGraphWith(MODERN) - public void g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_unfold_order_byXvalues_decrX() { - final Traversal> traversal = get_g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_unfold_order_byXvalues_decrX(); + public void g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_unfold_order_byXvalues_descX() { + final Traversal> traversal = get_g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_unfold_order_byXvalues_descX(); printTraversalForm(traversal); assertTrue(traversal.hasNext()); Map.Entry entry = traversal.next(); @@ -440,6 +460,11 @@ public Traversal get_g_V_order_byXname_incrX_name() { return g.V().order().by("name", Order.incr).values("name"); } + @Override + public Traversal get_g_V_order_byXname_ascX_name() { + return g.V().order().by("name", Order.asc).values("name"); + } + @Override public Traversal get_g_V_order_byXnameX_name() { return g.V().order().by("name").values("name"); @@ -450,6 +475,11 @@ public Traversal get_g_V_outE_order_byXweight_decrX_weight() { return g.V().outE().order().by("weight", Order.decr).values("weight"); } + @Override + public Traversal get_g_V_outE_order_byXweight_descX_weight() { + return g.V().outE().order().by("weight", Order.desc).values("weight"); + } + @Override public Traversal get_g_V_order_byXname_a1_b1X_byXname_b2_a2X_name() { return g.V().order(). @@ -463,7 +493,7 @@ public Traversal> get_g_V_asXaX_outXcreatedX_asXbX_o } @Override - public Traversal> get_g_VX1X_hasXlabel_personX_mapXmapXint_ageXX_orderXlocalX_byXvalues_decrX_byXkeys_incrX(final Object v1Id) { + public Traversal> get_g_VX1X_hasXlabel_personX_mapXmapXint_ageXX_orderXlocalX_byXvalues_descX_byXkeys_ascX(final Object v1Id) { return g.V(v1Id).hasLabel("person").map(v -> { final Map map = new HashMap<>(); map.put(1, (int) v.get().value("age")); @@ -471,27 +501,27 @@ public Traversal> get_g_VX1X_hasXlabel_personX_map map.put(3, (int) v.get().value("age") * 3); map.put(4, (int) v.get().value("age")); return map; - }).order(Scope.local).by(Column.values, Order.decr).by(Column.keys, Order.incr); + }).order(Scope.local).by(Column.values, Order.desc).by(Column.keys, Order.asc); } @Override - public Traversal get_g_V_order_byXoutE_count__decrX() { - return g.V().order().by(outE().count(), Order.decr); + public Traversal get_g_V_order_byXoutE_count_descX() { + return g.V().order().by(outE().count(), Order.desc); } @Override - public Traversal>> get_g_V_group_byXlabelX_byXname_order_byXdecrX_foldX() { - return g.V().>group().by(T.label).by(__.values("name").order().by(Order.decr).fold()); + public Traversal>> get_g_V_group_byXlabelX_byXname_order_byXdescX_foldX() { + return g.V().>group().by(T.label).by(__.values("name").order().by(Order.desc).fold()); } @Override - public Traversal> get_g_V_localXbothE_weight_foldX_order_byXsumXlocalX_decrX() { - return g.V().local(__.bothE().values("weight").fold()).order().by(__.sum(Scope.local), Order.decr); + public Traversal> get_g_V_localXbothE_weight_foldX_order_byXsumXlocalX_descX() { + return g.V().local(__.bothE().values("weight").fold()).order().by(__.sum(Scope.local), Order.desc); } @Override - public Traversal> get_g_V_asXvX_mapXbothE_weight_foldX_sumXlocalX_asXsX_selectXv_sX_order_byXselectXsX_decrX() { - return g.V().as("v").map(__.bothE().values("weight").fold()).sum(Scope.local).as("s").select("v", "s").order().by(__.select("s"), Order.decr); + public Traversal> get_g_V_asXvX_mapXbothE_weight_foldX_sumXlocalX_asXsX_selectXv_sX_order_byXselectXsX_descX() { + return g.V().as("v").map(__.bothE().values("weight").fold()).sum(Scope.local).as("s").select("v", "s").order().by(__.select("s"), Order.desc); } @Override @@ -505,33 +535,33 @@ public Traversal> get_g_V_hasLabelXpersonX_fold_orderXlocal } @Override - public Traversal get_g_V_hasLabelXpersonX_order_byXvalueXageX__decrX_name() { - return g.V().hasLabel("person").order().by(v -> v.value("age"), Order.decr).values("name"); + public Traversal get_g_V_hasLabelXpersonX_order_byXvalueXageX_descX_name() { + return g.V().hasLabel("person").order().by(v -> v.value("age"), Order.desc).values("name"); } @Override - public Traversal get_g_V_properties_order_byXkey_decrX_key() { - return g.V().properties().order().by(T.key, Order.decr).key(); + public Traversal get_g_V_properties_order_byXkey_descX_key() { + return g.V().properties().order().by(T.key, Order.desc).key(); } @Override - public Traversal get_g_V_hasXsong_name_OHBOYX_outXfollowedByX_outXfollowedByX_order_byXperformancesX_byXsongType_incrX() { - return g.V().has("song", "name", "OH BOY").out("followedBy").out("followedBy").order().by("performances").by("songType", Order.decr); + public Traversal get_g_V_hasXsong_name_OHBOYX_outXfollowedByX_outXfollowedByX_order_byXperformancesX_byXsongType_descX() { + return g.V().has("song", "name", "OH BOY").out("followedBy").out("followedBy").order().by("performances").by("songType", Order.desc); } @Override - public Traversal get_g_V_both_hasLabelXpersonX_order_byXage_decrX_limitX5X_name() { - return g.V().both().hasLabel("person").order().by("age", Order.decr).limit(5).values("name"); + public Traversal get_g_V_both_hasLabelXpersonX_order_byXage_descX_limitX5X_name() { + return g.V().both().hasLabel("person").order().by("age", Order.desc).limit(5).values("name"); } @Override - public Traversal get_g_V_both_hasLabelXpersonX_order_byXage_decrX_name() { - return g.V().both().hasLabel("person").order().by("age", Order.decr).values("name"); + public Traversal get_g_V_both_hasLabelXpersonX_order_byXage_descX_name() { + return g.V().both().hasLabel("person").order().by("age", Order.desc).values("name"); } @Override - public Traversal get_g_V_hasLabelXsongX_order_byXperfomances_decrX_byXnameX_rangeX110_120X_name() { - return g.V().hasLabel("song").order().by("performances", Order.decr).by("name").range(110, 120).values("name"); + public Traversal get_g_V_hasLabelXsongX_order_byXperformances_descX_byXnameX_rangeX110_120X_name() { + return g.V().hasLabel("song").order().by("performances", Order.desc).by("name").range(110, 120).values("name"); } @Override @@ -540,8 +570,8 @@ public Traversal> get_g_V_hasLabelXpersonX_group_byX } @Override - public Traversal> get_g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_unfold_order_byXvalues_decrX() { - return g.V().hasLabel("person").group().by("name").by(outE().values("weight").sum()).>unfold().order().by(Column.values, Order.decr); + public Traversal> get_g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_unfold_order_byXvalues_descX() { + return g.V().hasLabel("person").group().by("name").by(outE().values("weight").sum()).>unfold().order().by(Column.values, Order.desc); } } } diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/PageRankTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/PageRankTest.java index d2cb0eb15bc..07a2b04fec6 100644 --- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/PageRankTest.java +++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/PageRankTest.java @@ -51,9 +51,9 @@ public abstract class PageRankTest extends AbstractGremlinProcessTest { public abstract Traversal>> get_g_V_outXcreatedX_pageRank_byXbothEX_byXprojectRankX_timesX0X_valueMapXname_projectRankX(); - public abstract Traversal get_g_V_pageRank_order_byXpageRank_decrX_name(); + public abstract Traversal get_g_V_pageRank_order_byXpageRank_descX_name(); - public abstract Traversal get_g_V_pageRank_order_byXpageRank_decrX_name_limitX2X(); + public abstract Traversal get_g_V_pageRank_order_byXpageRank_descX_name_limitX2X(); public abstract Traversal>> get_g_V_pageRank_byXoutEXknowsXX_byXfriendRankX_valueMapXname_friendRankX(); @@ -99,8 +99,8 @@ public void g_V_outXcreatedX_pageRank_byXbothEX_byXprojectRankX_valueMapXname_pr @Test @LoadGraphWith(MODERN) - public void g_V_pageRank_order_byXpageRank_decrX_name() { - final Traversal traversal = get_g_V_pageRank_order_byXpageRank_decrX_name(); + public void g_V_pageRank_order_byXpageRank_descX_name() { + final Traversal traversal = get_g_V_pageRank_order_byXpageRank_descX_name(); printTraversalForm(traversal); final List names = traversal.toList(); assertEquals(6, names.size()); @@ -137,8 +137,8 @@ public void g_V_pageRank_byXoutEXknowsXX_byXfriendRankX_valueMapXname_friendRank @Test @LoadGraphWith(MODERN) - public void g_V_pageRank_order_byXpageRank_decrX_name_limitX2X() { - final Traversal traversal = get_g_V_pageRank_order_byXpageRank_decrX_name_limitX2X(); + public void g_V_pageRank_order_byXpageRank_descX_name_limitX2X() { + final Traversal traversal = get_g_V_pageRank_order_byXpageRank_descX_name_limitX2X(); printTraversalForm(traversal); final List names = traversal.toList(); assertEquals(2, names.size()); @@ -256,13 +256,13 @@ public Traversal>> get_g_V_pageRank_byXoutEXkno } @Override - public Traversal get_g_V_pageRank_order_byXpageRank_decrX_name() { - return g.V().pageRank().order().by(PageRankVertexProgram.PAGE_RANK, Order.decr).values("name"); + public Traversal get_g_V_pageRank_order_byXpageRank_descX_name() { + return g.V().pageRank().order().by(PageRankVertexProgram.PAGE_RANK, Order.desc).values("name"); } @Override - public Traversal get_g_V_pageRank_order_byXpageRank_decrX_name_limitX2X() { - return g.V().pageRank().order().by(PageRankVertexProgram.PAGE_RANK, Order.decr).values("name").limit(2); + public Traversal get_g_V_pageRank_order_byXpageRank_descX_name_limitX2X() { + return g.V().pageRank().order().by(PageRankVertexProgram.PAGE_RANK, Order.desc).values("name").limit(2); } @Override diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/ProgramTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/ProgramTest.java index db76bbc8a77..1923352f288 100644 --- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/ProgramTest.java +++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/ProgramTest.java @@ -71,7 +71,7 @@ public abstract class ProgramTest extends AbstractGremlinProcessTest { public abstract Traversal get_g_V_programXpageRankX(); - public abstract Traversal>> get_g_V_hasLabelXpersonX_programXpageRank_rankX_order_byXrank_incrX_valueMapXname_rankX(); + public abstract Traversal>> get_g_V_hasLabelXpersonX_programXpageRank_rankX_order_byXrank_ascX_valueMapXname_rankX(); public abstract Traversal> get_g_V_outXcreatedX_aggregateXxX_byXlangX_groupCount_programXTestProgramX_asXaX_selectXa_xX(); @@ -91,8 +91,8 @@ public void g_V_programXpageRankX() { @Test @LoadGraphWith(MODERN) - public void g_V_hasLabelXpersonX_programXpageRank_rankX_order_byXrank_decrX_valueMapXname_rankX() { - final Traversal>> traversal = get_g_V_hasLabelXpersonX_programXpageRank_rankX_order_byXrank_incrX_valueMapXname_rankX(); + public void g_V_hasLabelXpersonX_programXpageRank_rankX_order_byXrank_ascX_valueMapXname_rankX() { + final Traversal>> traversal = get_g_V_hasLabelXpersonX_programXpageRank_rankX_order_byXrank_ascX_valueMapXname_rankX(); printTraversalForm(traversal); int counter = 0; double lastRank = Double.MIN_VALUE; @@ -148,8 +148,8 @@ public Traversal get_g_V_programXpageRankX() { } @Override - public Traversal>> get_g_V_hasLabelXpersonX_programXpageRank_rankX_order_byXrank_incrX_valueMapXname_rankX() { - return g.V().hasLabel("person").program(PageRankVertexProgram.build().property("rank").create(graph)).order().by("rank", Order.incr).valueMap("name", "rank"); + public Traversal>> get_g_V_hasLabelXpersonX_programXpageRank_rankX_order_byXrank_ascX_valueMapXname_rankX() { + return g.V().hasLabel("person").program(PageRankVertexProgram.build().property("rank").create(graph)).order().by("rank", Order.asc).valueMap("name", "rank"); } @Override diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/ProjectTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/ProjectTest.java index 3fd7ad3ccec..6bfae906aa3 100644 --- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/ProjectTest.java +++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/ProjectTest.java @@ -40,7 +40,7 @@ public abstract class ProjectTest extends AbstractGremlinProcessTest { public abstract Traversal> get_g_V_hasLabelXpersonX_projectXa_bX_byXoutE_countX_byXageX(); - public abstract Traversal get_g_V_outXcreatedX_projectXa_bX_byXnameX_byXinXcreatedX_countX_order_byXselectXbX__decrX_selectXaX(); + public abstract Traversal get_g_V_outXcreatedX_projectXa_bX_byXnameX_byXinXcreatedX_countX_order_byXselectXbX__descX_selectXaX(); @Test @LoadGraphWith(MODERN) @@ -56,8 +56,8 @@ public void g_V_hasLabelXpersonX_projectXa_bX_byXoutE_countX_byXageX() { @Test @LoadGraphWith(MODERN) - public void g_V_outXcreatedX_projectXa_bX_byXnameX_byXinXcreatedX_countX_order_byXselectXbX__decrX_selectXaX() { - final Traversal traversal = get_g_V_outXcreatedX_projectXa_bX_byXnameX_byXinXcreatedX_countX_order_byXselectXbX__decrX_selectXaX(); + public void g_V_outXcreatedX_projectXa_bX_byXnameX_byXinXcreatedX_countX_order_byXselectXbX__descX_selectXaX() { + final Traversal traversal = get_g_V_outXcreatedX_projectXa_bX_byXnameX_byXinXcreatedX_countX_order_byXselectXbX__descX_selectXaX(); printTraversalForm(traversal); final List names = traversal.toList(); assertEquals(4, names.size()); @@ -75,8 +75,8 @@ public Traversal> get_g_V_hasLabelXpersonX_projectXa } @Override - public Traversal get_g_V_outXcreatedX_projectXa_bX_byXnameX_byXinXcreatedX_countX_order_byXselectXbX__decrX_selectXaX() { - return g.V().out("created").project("a", "b").by("name").by(__.in("created").count()).order().by(__.select("b"), Order.decr).select("a"); + public Traversal get_g_V_outXcreatedX_projectXa_bX_byXnameX_byXinXcreatedX_countX_order_byXselectXbX__descX_selectXaX() { + return g.V().out("created").project("a", "b").by("name").by(__.in("created").count()).order().by(__.select("b"), Order.desc).select("a"); } } } diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/SelectTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/SelectTest.java index 31400048ad0..72a1872fa1d 100644 --- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/SelectTest.java +++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/SelectTest.java @@ -73,7 +73,7 @@ public abstract class SelectTest extends AbstractGremlinProcessTest { public abstract Traversal> get_g_V_asXaX_name_order_asXbX_selectXa_bX_byXnameX_by_XitX(); - public abstract Traversal> get_g_V_hasXname_gremlinX_inEXusesX_order_byXskill_incrX_asXaX_outV_asXbX_selectXa_bX_byXskillX_byXnameX(); + public abstract Traversal> get_g_V_hasXname_gremlinX_inEXusesX_order_byXskill_ascX_asXaX_outV_asXbX_selectXa_bX_byXskillX_byXnameX(); public abstract Traversal get_g_V_hasXname_isXmarkoXX_asXaX_selectXaX(); @@ -254,8 +254,8 @@ public void g_V_asXaX_name_order_asXbX_selectXa_bX_byXnameX_by_XitX() { @Test @LoadGraphWith(CREW) - public void g_V_hasXname_gremlinX_inEXusesX_order_byXskill_incrX_asXaX_outV_asXbX_selectXa_bX_byXskillX_byXnameX() { - final Traversal> traversal = get_g_V_hasXname_gremlinX_inEXusesX_order_byXskill_incrX_asXaX_outV_asXbX_selectXa_bX_byXskillX_byXnameX(); + public void g_V_hasXname_gremlinX_inEXusesX_order_byXskill_ascX_asXaX_outV_asXbX_selectXa_bX_byXskillX_byXnameX() { + final Traversal> traversal = get_g_V_hasXname_gremlinX_inEXusesX_order_byXskill_ascX_asXaX_outV_asXbX_selectXa_bX_byXskillX_byXnameX(); printTraversalForm(traversal); final List> expected = makeMapList(2, "a", 3, "b", "matthias", @@ -731,8 +731,8 @@ public Traversal> get_g_V_asXaX_name_order_asXbX_sel } @Override - public Traversal> get_g_V_hasXname_gremlinX_inEXusesX_order_byXskill_incrX_asXaX_outV_asXbX_selectXa_bX_byXskillX_byXnameX() { - return g.V().has("name", "gremlin").inE("uses").order().by("skill", Order.incr).as("a").outV().as("b").select("a", "b").by("skill").by("name"); + public Traversal> get_g_V_hasXname_gremlinX_inEXusesX_order_byXskill_ascX_asXaX_outV_asXbX_selectXa_bX_byXskillX_byXnameX() { + return g.V().has("name", "gremlin").inE("uses").order().by("skill", Order.asc).as("a").outV().as("b").select("a", "b").by("skill").by("name"); } @Override diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategyProcessTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategyProcessTest.java index 10473a8d611..f06b0f7af5b 100644 --- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategyProcessTest.java +++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/decoration/SubgraphStrategyProcessTest.java @@ -484,7 +484,7 @@ public void shouldFilterVertexProperties() throws Exception { checkResults(makeMapList(1, "seattle", 1L), sg.V().groupCount().by("location")); // sg = g.withStrategies(SubgraphStrategy.build().vertices(has("location")).vertexProperties(hasNot("endTime")).create()); - checkOrderedResults(Arrays.asList("aachen", "purcellville", "santa fe", "seattle"), sg.V().order().by("location", Order.incr).values("location")); + checkOrderedResults(Arrays.asList("aachen", "purcellville", "santa fe", "seattle"), sg.V().order().by("location", Order.asc).values("location")); // sg = g.withStrategies(SubgraphStrategy.create(new MapConfiguration(new HashMap() {{ put(SubgraphStrategy.VERTICES, __.has("location")); diff --git a/gremlin-test/src/test/java/org/apache/tinkerpop/gremlin/process/FeatureCoverageTest.java b/gremlin-test/src/test/java/org/apache/tinkerpop/gremlin/process/FeatureCoverageTest.java index 28c6d778af9..9fd161a87c8 100644 --- a/gremlin-test/src/test/java/org/apache/tinkerpop/gremlin/process/FeatureCoverageTest.java +++ b/gremlin-test/src/test/java/org/apache/tinkerpop/gremlin/process/FeatureCoverageTest.java @@ -118,8 +118,8 @@ public class FeatureCoverageTest { "g_V_matchXa_0sungBy_b__a_0writtenBy_c__b_writtenBy_dX_whereXc_sungBy_dX_whereXd_hasXname_GarciaXX", "get_g_V_matchXa_followedBy_count_isXgtX10XX_b__a_0followedBy_count_isXgtX10XX_bX_count", "g_V_matchXa_followedBy_count_isXgtX10XX_b__a_0followedBy_count_isXgtX10XX_bX_count", - "g_V_hasXsong_name_OHBOYX_outXfollowedByX_outXfollowedByX_order_byXperformancesX_byXsongType_incrX", - "g_V_hasLabelXsongX_order_byXperfomances_decrX_byXnameX_rangeX110_120X_name", + "g_V_hasXsong_name_OHBOYX_outXfollowedByX_outXfollowedByX_order_byXperformancesX_byXsongType_descX", + "g_V_hasLabelXsongX_order_byXperformances_descX_byXnameX_rangeX110_120X_name", // Pop tests not organized right for GLVs "g_V_valueMap_selectXpop_aX", "g_V_selectXa_bX", diff --git a/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java b/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java index f6905ae881c..e8a0e638cea 100644 --- a/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java +++ b/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java @@ -145,7 +145,7 @@ private Model() { addGraphProcessEntry(Column.keys, "Column", "", Compatibilities.UNTYPED_GRAPHSON.matchToArray()); addGraphProcessEntry(Direction.OUT, "Direction", "", Compatibilities.UNTYPED_GRAPHSON.matchToArray()); addGraphProcessEntry(Operator.sum, "Operator", "", Compatibilities.UNTYPED_GRAPHSON.matchToArray()); - addGraphProcessEntry(Order.incr, "Order", "", Compatibilities.UNTYPED_GRAPHSON.matchToArray()); + addGraphProcessEntry(Order.shuffle, "Order", "", Compatibilities.UNTYPED_GRAPHSON.matchToArray()); addGraphProcessEntry(TraversalOptionParent.Pick.any, "Pick", "", Compatibilities.UNTYPED_GRAPHSON.matchToArray()); addGraphProcessEntry(Pop.all, "Pop", "", Compatibilities.UNTYPED_GRAPHSON.matchToArray()); addGraphProcessEntry(org.apache.tinkerpop.gremlin.util.function.Lambda.function("{ it.get() }"), "Lambda", "", Compatibilities.UNTYPED_GRAPHSON.matchToArray()); diff --git a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractTypedCompatibilityTest.java b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractTypedCompatibilityTest.java index 87f8d70889d..67e59016c13 100644 --- a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractTypedCompatibilityTest.java +++ b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/AbstractTypedCompatibilityTest.java @@ -62,12 +62,10 @@ import java.time.YearMonth; import java.time.ZoneOffset; import java.time.ZonedDateTime; -import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.Date; import java.util.HashMap; -import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/order-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/order-v2d0-no-types.json index 8f2c2366634..7446df0da47 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/order-v2d0-no-types.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/order-v2d0-no-types.json @@ -1 +1 @@ -"incr" \ No newline at end of file +"shuffle" \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/order-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/order-v2d0-partial.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/order-v2d0-partial.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_3/order-v2d0-partial.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_4/order-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_4/order-v2d0-no-types.json index 8f2c2366634..7446df0da47 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_4/order-v2d0-no-types.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_4/order-v2d0-no-types.json @@ -1 +1 @@ -"incr" \ No newline at end of file +"shuffle" \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_4/order-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_4/order-v2d0-partial.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_4/order-v2d0-partial.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_4/order-v2d0-partial.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_5/order-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_5/order-v2d0-no-types.json index 8f2c2366634..7446df0da47 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_5/order-v2d0-no-types.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_5/order-v2d0-no-types.json @@ -1 +1 @@ -"incr" \ No newline at end of file +"shuffle" \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_5/order-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_5/order-v2d0-partial.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_5/order-v2d0-partial.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_5/order-v2d0-partial.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/order-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/order-v2d0-no-types.json index 8f2c2366634..7446df0da47 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/order-v2d0-no-types.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/order-v2d0-no-types.json @@ -1 +1 @@ -"incr" \ No newline at end of file +"shuffle" \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/order-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/order-v2d0-partial.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/order-v2d0-partial.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/order-v2d0-partial.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_7/order-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_7/order-v2d0-no-types.json index 8f2c2366634..7446df0da47 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_7/order-v2d0-no-types.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_7/order-v2d0-no-types.json @@ -1 +1 @@ -"incr" \ No newline at end of file +"shuffle" \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_7/order-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_7/order-v2d0-partial.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_7/order-v2d0-partial.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_7/order-v2d0-partial.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_8/order-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_8/order-v2d0-no-types.json index 8f2c2366634..7446df0da47 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_8/order-v2d0-no-types.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_8/order-v2d0-no-types.json @@ -1 +1 @@ -"incr" \ No newline at end of file +"shuffle" \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_8/order-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_8/order-v2d0-partial.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_8/order-v2d0-partial.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_8/order-v2d0-partial.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_9/order-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_9/order-v2d0-no-types.json index 8f2c2366634..7446df0da47 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_9/order-v2d0-no-types.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_9/order-v2d0-no-types.json @@ -1 +1 @@ -"incr" \ No newline at end of file +"shuffle" \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_9/order-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_9/order-v2d0-partial.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_9/order-v2d0-partial.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_9/order-v2d0-partial.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_0/order-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_0/order-v2d0-no-types.json index 8f2c2366634..7446df0da47 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_0/order-v2d0-no-types.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_0/order-v2d0-no-types.json @@ -1 +1 @@ -"incr" \ No newline at end of file +"shuffle" \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_0/order-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_0/order-v2d0-partial.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_0/order-v2d0-partial.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_0/order-v2d0-partial.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_0/order-v3d0.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_0/order-v3d0.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_0/order-v3d0.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_0/order-v3d0.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_1/order-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_1/order-v2d0-no-types.json index 8f2c2366634..7446df0da47 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_1/order-v2d0-no-types.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_1/order-v2d0-no-types.json @@ -1 +1 @@ -"incr" \ No newline at end of file +"shuffle" \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_1/order-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_1/order-v2d0-partial.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_1/order-v2d0-partial.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_1/order-v2d0-partial.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_1/order-v3d0.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_1/order-v3d0.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_1/order-v3d0.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_1/order-v3d0.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_2/order-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_2/order-v2d0-partial.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_2/order-v2d0-partial.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_2/order-v2d0-partial.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_2/order-v3d0.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_2/order-v3d0.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_2/order-v3d0.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_2/order-v3d0.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_3/order-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_3/order-v2d0-partial.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_3/order-v2d0-partial.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_3/order-v2d0-partial.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_3/order-v3d0.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_3/order-v3d0.json index 6ad66d8d272..4be0432dfa2 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_3/order-v3d0.json +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_3_3/order-v3d0.json @@ -1,4 +1,4 @@ { "@type" : "g:Order", - "@value" : "incr" + "@value" : "shuffle" } \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_3/order-v1d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_3/order-v1d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_3/order-v1d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_3/order-v1d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_4/order-v1d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_4/order-v1d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_4/order-v1d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_4/order-v1d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_5/order-v1d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_5/order-v1d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_5/order-v1d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_5/order-v1d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_6/order-v1d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_6/order-v1d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_6/order-v1d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_6/order-v1d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_7/order-v1d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_7/order-v1d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_7/order-v1d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_7/order-v1d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_8/order-v1d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_8/order-v1d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_8/order-v1d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_8/order-v1d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_9/order-v1d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_9/order-v1d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_9/order-v1d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_2_9/order-v1d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_0/order-v1d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_0/order-v1d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_0/order-v1d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_0/order-v1d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_0/order-v3d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_0/order-v3d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_0/order-v3d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_0/order-v3d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_1/order-v1d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_1/order-v1d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_1/order-v1d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_1/order-v1d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_1/order-v3d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_1/order-v3d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_1/order-v3d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_1/order-v3d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_2/order-v1d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_2/order-v1d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_2/order-v1d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_2/order-v1d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_2/order-v3d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_2/order-v3d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_2/order-v3d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_2/order-v3d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_3/order-v1d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_3/order-v1d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_3/order-v1d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_3/order-v1d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_3/order-v3d0.kryo b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_3/order-v3d0.kryo index 40fdece9d24..c8c78114440 100644 --- a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_3/order-v3d0.kryo +++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/gryo/_3_3_3/order-v3d0.kryo @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file