This is an automated email from the ASF dual-hosted git repository.

colegreer pushed a commit to branch 3.7-dev
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git


The following commit(s) were added to refs/heads/3.7-dev by this push:
     new 88acbad25a Change edge weights to double in feature tests (#2503)
88acbad25a is described below

commit 88acbad25a4f07fbc28bf761a09def3d5805c562
Author: Ryan Tan <65996005+r...@users.noreply.github.com>
AuthorDate: Thu Feb 29 08:31:42 2024 -0800

    Change edge weights to double in feature tests (#2503)
    
    https://issues.apache.org/jira/browse/TINKERPOP-3020 Updated all edge 
weights to use type double in PartitionStrategy and SideEffect feature tests.
---
 .../Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs | 26 +++++-----
 gremlin-go/driver/cucumber/gremlin.go              | 26 +++++-----
 .../gremlin-javascript/test/cucumber/gremlin.js    | 26 +++++-----
 gremlin-python/src/main/python/radish/gremlin.py   | 26 +++++-----
 .../features/integrated/PartitionStrategy.feature  | 56 +++++++++++-----------
 .../gremlin/test/features/map/MergeEdge.feature    |  2 +-
 6 files changed, 81 insertions(+), 81 deletions(-)

diff --git a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs 
b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs
index fd96bdc6ea..d99f0d1672 100644
--- a/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs
+++ b/gremlin-dotnet/test/Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs
@@ -399,18 +399,18 @@ namespace Gremlin.Net.IntegrationTest.Gherkin
                {"g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_name", 
new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").AddV("person").Property("_partition","b").Property("name","bob"),
 (g,p) =>g.WithStrategies(new PartitionStrategy(includeMetaProperties: false, 
partitionKey: "_partition", readPartitions: new HashSet<string> {"a"}, 
writePartition: "a")).V().Values<object>("na [...]
                
{"g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").AddV("person").Property("_partition","b").Property("name","bob"),
 (g,p) =>g.WithStrategies(new PartitionStrategy(includeMetaProperties: false, 
partitionKey: "_partition", readPartitions: new HashSet<string> {"a", "b"}, 
writePartition: "a")).V().Values<obje [...]
                {"g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_name", 
new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").AddV("person").Property("_partition","b").Property("name","bob"),
 (g,p) =>g.WithStrategies(new PartitionStrategy(includeMetaProperties: false, 
partitionKey: "_partition", readPartitions: new HashSet<string> {"c"}, 
writePartition: "a")).V().Values<object>("na [...]
-               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_bothE_weight", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2),
 (g,p) => [...]
-               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_bothE_weight", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2),
 (g,p) => [...]
-               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_bothE_dedup_weight", 
new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2),
  [...]
-               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_bothE_weight", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2),
 (g,p) => [...]
-               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_both_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2),
 (g,p) =>g.W [...]
-               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_both_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2),
 (g,p) =>g.W [...]
-               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_both_dedup_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2),
 (g, [...]
-               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_both_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2),
 (g,p) =>g.W [...]
-               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_out_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2),
 (g,p) =>g.Wi [...]
-               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_in_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2),
 (g,p) =>g.Wit [...]
-               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_out_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2),
 (g,p) =>g. [...]
-               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_out_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2),
 (g,p) =>g.Wi [...]
+               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_bothE_weight", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1.0).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2.0),
 (g,p [...]
+               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_bothE_weight", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1.0).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2.0),
 (g,p [...]
+               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_bothE_dedup_weight", 
new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1.0).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2.
 [...]
+               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_bothE_weight", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1.0).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2.0),
 (g,p [...]
+               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_both_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1.0).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2.0),
 (g,p) = [...]
+               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_both_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1.0).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2.0),
 (g,p) = [...]
+               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_both_dedup_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1.0).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2.0),
 [...]
+               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_both_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1.0).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2.0),
 (g,p) = [...]
+               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_out_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1.0).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2.0),
 (g,p) => [...]
+               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_in_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1.0).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2.0),
 (g,p) =>g [...]
+               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_out_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1.0).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2.0),
 (g,p)  [...]
+               
{"g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_out_name", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("_partition","a").Property("name","alice").As("a").AddV("person").Property("_partition","b").Property("name","bob").As("b").AddE("knows").From("a").To("b").Property("_partition","a").Property("weight",1.0).AddE("knows").From("b").To("a").Property("_partition","b").Property("weight",2.0),
 (g,p) => [...]
                
{"g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_addVXpersonX_propertyXname_aliceX_addXselfX",
 new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new PartitionStrategy(includeMetaProperties: false, 
partitionKey: "_partition", readPartitions: new HashSet<string> {"a"}, 
writePartition: "a")).AddV("person").Property("name","alice").AddE("self"), 
(g,p) =>g.V().Has("person","name","alice").Has("_partition","a"), (g,p) => [...]
                
{"g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_injectXzeroX_addVXpersonX_propertyXname_aliceX_addXselfX",
 new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new PartitionStrategy(includeMetaProperties: false, 
partitionKey: "_partition", readPartitions: new HashSet<string> {"a"}, 
writePartition: 
"a")).Inject(0).AddV("person").Property("name","alice").AddE("self"), (g,p) 
=>g.V().Has("person","name","alice").Has("_pa [...]
                {"g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_mergeV", 
new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) =>g.WithStrategies(new PartitionStrategy(includeMetaProperties: false, 
partitionKey: "_partition", readPartitions: new HashSet<string> {"a"}, 
writePartition: "a")).MergeV((IDictionary<object,object>) p["xx1"]), (g,p) 
=>g.V().Has("person","name","alice").Has("_partition","a"), (g,p) =>g.V()}}, 
@@ -900,7 +900,7 @@ namespace Gremlin.Net.IntegrationTest.Gherkin
                
{"g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko1_in_vadas1X_optionXonCreate_selectXcXX_optionXonMatch_selectXmXX",
 new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("name","marko").As("a").AddV("person").Property("name","vadas").As("b"),
 (g,p) 
=>g.WithSideEffect("c",p["xx2"]).WithSideEffect("m",p["xx3"]).MergeE((IDictionary<object,object>)
 p["xx1"]).Option(Merge.OnCreate,  [...]
                {"g_mergeEXlabel_knows_out_marko_in_vadasX_aliased_direction", 
new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("name","marko").AddV("person").Property("name","vadas"),
 (g,p) =>g.MergeE((IDictionary<object,object>) p["xx1"]), (g,p) 
=>g.V().Has("person","name","marko").Out("knows").Has("person","name","vadas")}},
 
                
{"g_injectXlabel_knows_out_marko_in_vadas_label_self_out_vadas_in_vadasX", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("name","marko").AddV("person").Property("name","vadas"),
 (g,p) =>g.Inject(p["xx1"],p["xx2"]).MergeE(), (g,p) =>g.V(), (g,p) =>g.E(), 
(g,p) 
=>g.V().Has("person","name","marko").Out("knows").Has("person","name","vadas"), 
(g,p) =>g.V().Has("person","name","vadas").Out("self").Has("person","n [...]
-               
{"g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_selectXcXX_optionXonMatch_sideEffectXpropertiesXweightX_dropX_selectXmXX_exists",
 new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("name","marko").As("a").AddV("person").Property("name","vadas").As("b").AddE("knows").Property("weight",1).From("a").To("b"),
 (g,p) =>g.WithSideEffect("c",p["xx2"]).With [...]
+               
{"g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_selectXcXX_optionXonMatch_sideEffectXpropertiesXweightX_dropX_selectXmXX_exists",
 new List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("name","marko").As("a").AddV("person").Property("name","vadas").As("b").AddE("knows").Property("weight",1.0).From("a").To("b"),
 (g,p) =>g.WithSideEffect("c",p["xx2"]).Wi [...]
                {"g_mergeE_with_outVinV_options_map", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("name","marko").AddV("person").Property("name","vadas"),
 (g,p) =>g.MergeE((IDictionary<object,object>) p["xx1"]).Option(Merge.OutV, 
(IDictionary<object,object>) p["xx2"]).Option(Merge.InV, 
(IDictionary<object,object>) p["xx3"]), (g,p) =>g.V(), (g,p) 
=>g.V().Has("name","marko").Out("knows").Has("name","vadas")}}, 
                {"g_mergeE_with_outVinV_options_select", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("name","marko").AddV("person").Property("name","vadas"),
 (g,p) 
=>g.V(p["vid1"]).As("x").V(p["vid2"]).As("y").MergeE((IDictionary<object,object>)
 p["xx1"]).Option(Merge.OutV, (ITraversal) 
__.Select<object>("x")).Option(Merge.InV, (ITraversal) __.Select<object>("y")), 
(g,p) =>g.V(), (g,p) =>g.V().Has("name","marko").Out("kn [...]
                {"g_mergeE_with_eid_specified_and_inheritance_1", new 
List<Func<GraphTraversalSource, IDictionary<string, object>, ITraversal>> 
{(g,p) 
=>g.AddV("person").Property("name","marko").AddV("person").Property("name","vadas"),
 (g,p) =>g.MergeE((IDictionary<object,object>) p["xx1"]).Option(Merge.OnCreate, 
(IDictionary<object,object>) p["xx2"]), (g,p) =>g.V(), (g,p) =>g.E(), (g,p) 
=>g.E("201"), (g,p) 
=>g.V().Has("name","marko").Out("knows").Has("name","vadas")}}, 
diff --git a/gremlin-go/driver/cucumber/gremlin.go 
b/gremlin-go/driver/cucumber/gremlin.go
index fbcf1ac259..b9e83d9f32 100644
--- a/gremlin-go/driver/cucumber/gremlin.go
+++ b/gremlin-go/driver/cucumber/gremlin.go
@@ -370,18 +370,18 @@ var translationMap = map[string][]func(g 
*gremlingo.GraphTraversalSource, p map[
     "g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").AddV("person").Property("_partition", 
"b").Property("name", "bob")}, func(g *gremlingo.GraphTraversalSource, p 
map[string]interface{}) *gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.PartitionStrategy(gremlingo.PartitionStrategyConfig{Includ
 [...]
     "g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").AddV("person").Property("_partition", 
"b").Property("name", "bob")}, func(g *gremlingo.GraphTraversalSource, p 
map[string]interface{}) *gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.PartitionStrategy(gremlingo.PartitionStrategyConfig{Incl
 [...]
     "g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").AddV("person").Property("_partition", 
"b").Property("name", "bob")}, func(g *gremlingo.GraphTraversalSource, p 
map[string]interface{}) *gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.PartitionStrategy(gremlingo.PartitionStrategyConfig{Includ
 [...]
-    "g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_bothE_weight": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2) [...]
-    "g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_bothE_weight": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2) [...]
-    
"g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_bothE_dedup_weight": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1).AddE("knows").From("b").To("a").Property("_partition", "b").Property("wei 
[...]
-    "g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_bothE_weight": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2) [...]
-    "g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_both_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2)},  [...]
-    "g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_both_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2)},  [...]
-    "g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_both_dedup_name": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1).AddE("knows").From("b").To("a").Property("_partition", "b").Property("weight 
[...]
-    "g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_both_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2)},  [...]
-    "g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_out_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2)}, f [...]
-    "g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_in_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2)}, fu [...]
-    "g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_out_name": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2)}, [...]
-    "g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_out_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2)}, f [...]
+    "g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_bothE_weight": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1.0).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight",  [...]
+    "g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_bothE_weight": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1.0).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight",  [...]
+    
"g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_bothE_dedup_weight": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1.0).AddE("knows").From("b").To("a").Property("_partition", "b").Property("w 
[...]
+    "g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_bothE_weight": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1.0).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight",  [...]
+    "g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_both_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1.0).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2.0 [...]
+    "g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_both_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1.0).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2.0 [...]
+    "g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_both_dedup_name": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1.0).AddE("knows").From("b").To("a").Property("_partition", "b").Property("weig 
[...]
+    "g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_both_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1.0).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2.0 [...]
+    "g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_out_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1.0).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2.0) [...]
+    "g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_in_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1.0).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2.0)} [...]
+    "g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_out_name": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1.0).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2. [...]
+    "g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_out_name": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("_partition", 
"a").Property("name", "alice").As("a").AddV("person").Property("_partition", 
"b").Property("name", 
"bob").As("b").AddE("knows").From("a").To("b").Property("_partition", 
"a").Property("weight", 
1.0).AddE("knows").From("b").To("a").Property("_partition", 
"b").Property("weight", 2.0) [...]
     
"g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_addVXpersonX_propertyXname_aliceX_addXselfX":
 {func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.PartitionStrategy(gremlingo.PartitionStrategyConfig{IncludeMetaProperties:
 false, PartitionKey: "_partition", ReadPartitions: 
gremlingo.NewSimpleSet("a"), WritePartition: 
"a"})).AddV("person").Property("name", "alice").AddE("self")}, func(g 
*gremlingo.GraphTrav [...]
     
"g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_injectXzeroX_addVXpersonX_propertyXname_aliceX_addXselfX":
 {func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.PartitionStrategy(gremlingo.PartitionStrategyConfig{IncludeMetaProperties:
 false, PartitionKey: "_partition", ReadPartitions: 
gremlingo.NewSimpleSet("a"), WritePartition: 
"a"})).Inject(0).AddV("person").Property("name", "alice").AddE("self")}, func 
[...]
     "g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_mergeV": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.WithStrategies(gremlingo.PartitionStrategy(gremlingo.PartitionStrategyConfig{IncludeMetaProperties:
 false, PartitionKey: "_partition", ReadPartitions: 
gremlingo.NewSimpleSet("a"), WritePartition: "a"})).MergeV(p["xx1"])}, func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g [...]
@@ -871,7 +871,7 @@ var translationMap = map[string][]func(g 
*gremlingo.GraphTraversalSource, p map[
     
"g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko1_in_vadas1X_optionXonCreate_selectXcXX_optionXonMatch_selectXmXX":
 {func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("name", 
"marko").As("a").AddV("person").Property("name", "vadas").As("b")}, func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.WithSideEffect("c", p["xx2"]). [...]
     "g_mergeEXlabel_knows_out_marko_in_vadasX_aliased_direction": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("name", 
"marko").AddV("person").Property("name", "vadas")}, func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.MergeE(p["xx1"])}, func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.V().Has("person" [...]
     "g_injectXlabel_knows_out_marko_in_vadas_label_self_out_vadas_in_vadasX": 
{func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("name", 
"marko").AddV("person").Property("name", "vadas")}, func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.Inject(p["xx1"], p["xx2"]).MergeE()}, 
func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTrave [...]
-    
"g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_selectXcXX_optionXonMatch_sideEffectXpropertiesXweightX_dropX_selectXmXX_exists":
 {func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("name", 
"marko").As("a").AddV("person").Property("name", 
"vadas").As("b").AddE("knows").Property("weight", 1).From("a").To("b")}, func(g 
*gremlingo.GraphTraversalSourc [...]
+    
"g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_selectXcXX_optionXonMatch_sideEffectXpropertiesXweightX_dropX_selectXmXX_exists":
 {func(g *gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("name", 
"marko").As("a").AddV("person").Property("name", 
"vadas").As("b").AddE("knows").Property("weight", 1.0).From("a").To("b")}, 
func(g *gremlingo.GraphTraversalSou [...]
     "g_mergeE_with_outVinV_options_map": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("name", 
"marko").AddV("person").Property("name", "vadas")}, func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.MergeE(p["xx1"]).Option(gremlingo.Merge.OutV, 
p["xx2"]).Option(gremlingo.Merge.InV, p["xx3"])}, func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{})  [...]
     "g_mergeE_with_outVinV_options_select": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("name", 
"marko").AddV("person").Property("name", "vadas")}, func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.V(p["vid1"]).As("x").V(p["vid2"]).As("y").MergeE(p["xx1"]).Option(gremlingo.Merge.OutV,
 gremlingo.T__.Select("x")).Option(gremlingo.Merge.InV, gremlingo.T__.Se [...]
     "g_mergeE_with_eid_specified_and_inheritance_1": {func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return g.AddV("person").Property("name", 
"marko").AddV("person").Property("name", "vadas")}, func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraversal {return 
g.MergeE(p["xx1"]).Option(gremlingo.Merge.OnCreate, p["xx2"])}, func(g 
*gremlingo.GraphTraversalSource, p map[string]interface{}) 
*gremlingo.GraphTraver [...]
diff --git 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/gremlin.js
 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/gremlin.js
index 2e733673da..3add9737e2 100644
--- 
a/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/gremlin.js
+++ 
b/gremlin-javascript/src/main/javascript/gremlin-javascript/test/cucumber/gremlin.js
@@ -390,18 +390,18 @@ const gremlins = {
     g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_name: [function({g}) 
{ return 
g.addV("person").property("_partition","a").property("name","alice").addV("person").property("_partition","b").property("name","bob")
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProperties:false,partitionKey:"_partition",readPartitions:["a"],writePartition:"a"})).V().values("name")
 }], 
     g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").addV("person").property("_partition","b").property("name","bob")
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProperties:false,partitionKey:"_partition",readPartitions:["a",
 "b"],writePartition:"a"})).V().values("name") }], 
     g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_name: [function({g}) 
{ return 
g.addV("person").property("_partition","a").property("name","alice").addV("person").property("_partition","b").property("name","bob")
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProperties:false,partitionKey:"_partition",readPartitions:["c"],writePartition:"a"})).V().values("name")
 }], 
-    g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_bothE_weight: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaPropert [...]
-    g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_bothE_weight: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaPropert [...]
-    
g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_bothE_dedup_weight: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2)
 }, function({g}) { return g.withStrategies(new PartitionStrategy({includeMet 
[...]
-    g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_bothE_weight: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaPropert [...]
-    g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_both_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProperties [...]
-    g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_both_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProperties [...]
-    g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_both_dedup_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaPr [...]
-    g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_both_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProperties [...]
-    g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_out_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProperties: [...]
-    g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_in_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProperties:f [...]
-    g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_out_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaPropertie [...]
-    g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_out_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProperties: [...]
+    g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_bothE_weight: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1.0).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2.0)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaPro [...]
+    g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_bothE_weight: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1.0).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2.0)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaPro [...]
+    
g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_bothE_dedup_weight: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1.0).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2.0)
 }, function({g}) { return g.withStrategies(new PartitionStrategy({includ [...]
+    g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_bothE_weight: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1.0).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2.0)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaPro [...]
+    g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_both_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1.0).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2.0)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProper [...]
+    g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_both_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1.0).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2.0)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProper [...]
+    g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_both_dedup_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1.0).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2.0)
 }, function({g}) { return g.withStrategies(new PartitionStrategy({includeMe 
[...]
+    g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_both_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1.0).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2.0)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProper [...]
+    g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_out_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1.0).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2.0)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaPropert [...]
+    g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_in_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1.0).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2.0)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProperti [...]
+    g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_out_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1.0).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2.0)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaPrope [...]
+    g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_out_name: 
[function({g}) { return 
g.addV("person").property("_partition","a").property("name","alice").as("a").addV("person").property("_partition","b").property("name","bob").as("b").addE("knows").from_("a").to("b").property("_partition","a").property("weight",1.0).addE("knows").from_("b").to("a").property("_partition","b").property("weight",2.0)
 }, function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaPropert [...]
     
g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_addVXpersonX_propertyXname_aliceX_addXselfX:
 [function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProperties:false,partitionKey:"_partition",readPartitions:["a"],writePartition:"a"})).addV("person").property("name","alice").addE("self")
 }, function({g}) { return 
g.V().has("person","name","alice").has("_partition","a") }, function({g}) { 
return g.V() }, function({g}) { return g.E().has("_partition","a") }, funct 
[...]
     
g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_injectXzeroX_addVXpersonX_propertyXname_aliceX_addXselfX:
 [function({g}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProperties:false,partitionKey:"_partition",readPartitions:["a"],writePartition:"a"})).inject(0).addV("person").property("name","alice").addE("self")
 }, function({g}) { return 
g.V().has("person","name","alice").has("_partition","a") }, function({g}) { 
return g.V() }, function({g}) { return g.E().has("_p [...]
     g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_mergeV: [function({g, 
xx1}) { return g.withStrategies(new 
PartitionStrategy({includeMetaProperties:false,partitionKey:"_partition",readPartitions:["a"],writePartition:"a"})).mergeV(xx1)
 }, function({g, xx1}) { return 
g.V().has("person","name","alice").has("_partition","a") }, function({g, xx1}) 
{ return g.V() }], 
@@ -891,7 +891,7 @@ const gremlins = {
     
g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko1_in_vadas1X_optionXonCreate_selectXcXX_optionXonMatch_selectXmXX:
 [function({g, xx1, xx3, xx2}) { return 
g.addV("person").property("name","marko").as("a").addV("person").property("name","vadas").as("b")
 }, function({g, xx1, xx3, xx2}) { return 
g.withSideEffect("c",xx2).withSideEffect("m",xx3).mergeE(xx1).option(Merge.onCreate,__.select("c")).option(Merge.onMatch,__.select("m"))
 }, function({g, xx1, x [...]
     g_mergeEXlabel_knows_out_marko_in_vadasX_aliased_direction: [function({g, 
xx1}) { return 
g.addV("person").property("name","marko").addV("person").property("name","vadas")
 }, function({g, xx1}) { return g.mergeE(xx1) }, function({g, xx1}) { return 
g.V().has("person","name","marko").out("knows").has("person","name","vadas") 
}], 
     g_injectXlabel_knows_out_marko_in_vadas_label_self_out_vadas_in_vadasX: 
[function({g, xx1, xx2}) { return 
g.addV("person").property("name","marko").addV("person").property("name","vadas")
 }, function({g, xx1, xx2}) { return g.inject(xx1,xx2).mergeE() }, function({g, 
xx1, xx2}) { return g.V() }, function({g, xx1, xx2}) { return g.E() }, 
function({g, xx1, xx2}) { return 
g.V().has("person","name","marko").out("knows").has("person","name","vadas") }, 
function({g, xx1, xx2}) { return g.V( [...]
-    
g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_selectXcXX_optionXonMatch_sideEffectXpropertiesXweightX_dropX_selectXmXX_exists:
 [function({g, xx1, xx3, xx2}) { return 
g.addV("person").property("name","marko").as("a").addV("person").property("name","vadas").as("b").addE("knows").property("weight",1).from_("a").to("b")
 }, function({g, xx1, xx3, xx2}) { return 
g.withSideEffect("c",xx2).withSideEffect("m",xx3).mergeE(xx1).op [...]
+    
g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_selectXcXX_optionXonMatch_sideEffectXpropertiesXweightX_dropX_selectXmXX_exists:
 [function({g, xx1, xx3, xx2}) { return 
g.addV("person").property("name","marko").as("a").addV("person").property("name","vadas").as("b").addE("knows").property("weight",1.0).from_("a").to("b")
 }, function({g, xx1, xx3, xx2}) { return 
g.withSideEffect("c",xx2).withSideEffect("m",xx3).mergeE(xx1). [...]
     g_mergeE_with_outVinV_options_map: [function({g, xx1, xx3, xx2}) { return 
g.addV("person").property("name","marko").addV("person").property("name","vadas")
 }, function({g, xx1, xx3, xx2}) { return 
g.mergeE(xx1).option(Merge.outV,xx2).option(Merge.inV,xx3) }, function({g, xx1, 
xx3, xx2}) { return g.V() }, function({g, xx1, xx3, xx2}) { return 
g.V().has("name","marko").out("knows").has("name","vadas") }], 
     g_mergeE_with_outVinV_options_select: [function({g, xx1, vid2, vid1}) { 
return 
g.addV("person").property("name","marko").addV("person").property("name","vadas")
 }, function({g, xx1, vid2, vid1}) { return 
g.V(vid1).as("x").V(vid2).as("y").mergeE(xx1).option(Merge.outV,__.select("x")).option(Merge.inV,__.select("y"))
 }, function({g, xx1, vid2, vid1}) { return g.V() }, function({g, xx1, vid2, 
vid1}) { return g.V().has("name","marko").out("knows").has("name","vadas") }], 
     g_mergeE_with_eid_specified_and_inheritance_1: [function({g, xx1, xx2}) { 
return 
g.addV("person").property("name","marko").addV("person").property("name","vadas")
 }, function({g, xx1, xx2}) { return g.mergeE(xx1).option(Merge.onCreate,xx2) 
}, function({g, xx1, xx2}) { return g.V() }, function({g, xx1, xx2}) { return 
g.E() }, function({g, xx1, xx2}) { return g.E("201") }, function({g, xx1, xx2}) 
{ return g.V().has("name","marko").out("knows").has("name","vadas") }], 
diff --git a/gremlin-python/src/main/python/radish/gremlin.py 
b/gremlin-python/src/main/python/radish/gremlin.py
index 34cab041d8..1fd1e8dedd 100644
--- a/gremlin-python/src/main/python/radish/gremlin.py
+++ b/gremlin-python/src/main/python/radish/gremlin.py
@@ -372,18 +372,18 @@ world.gremlins = {
     'g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_name': [(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').addV('person').property('_partition','b').property('name','bob')),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties':False,'partitionKey':'_partition','readPartitions':set(('a')),'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.PartitionStrategy','writePartition':'a'},
 'org [...]
     'g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_name': [(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').addV('person').property('_partition','b').property('name','bob')),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties':False,'partitionKey':'_partition','readPartitions':set(('a','b')),'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.PartitionStrategy','writePartition':'a'}
 [...]
     'g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_name': [(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').addV('person').property('_partition','b').property('name','bob')),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties':False,'partitionKey':'_partition','readPartitions':set(('c')),'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.PartitionStrategy','writePartition':'a'},
 'org [...]
-    'g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_bothE_weight': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',1).addE('knows').from_('b').to('a').property('_partition','b').property('weight',2)),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties'
 [...]
-    'g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_bothE_weight': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',1).addE('knows').from_('b').to('a').property('_partition','b').property('weight',2)),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties'
 [...]
-    
'g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_bothE_dedup_weight': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',1).addE('knows').from_('b').to('a').property('_partition','b').property('weight',2)),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaPro 
[...]
-    'g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_bothE_weight': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',1).addE('knows').from_('b').to('a').property('_partition','b').property('weight',2)),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties'
 [...]
-    'g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_both_name': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',1).addE('knows').from_('b').to('a').property('_partition','b').property('weight',2)),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties':Fa
 [...]
-    'g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_both_name': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',1).addE('knows').from_('b').to('a').property('_partition','b').property('weight',2)),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties':Fa
 [...]
-    'g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_both_dedup_name': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',1).addE('knows').from_('b').to('a').property('_partition','b').property('weight',2)),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProper 
[...]
-    'g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_both_name': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',1).addE('knows').from_('b').to('a').property('_partition','b').property('weight',2)),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties':Fa
 [...]
-    'g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_out_name': [(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',1).addE('knows').from_('b').to('a').property('_partition','b').property('weight',2)),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties':Fal
 [...]
-    'g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_in_name': [(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',1).addE('knows').from_('b').to('a').property('_partition','b').property('weight',2)),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties':Fals
 [...]
-    'g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_out_name': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',1).addE('knows').from_('b').to('a').property('_partition','b').property('weight',2)),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties':F
 [...]
-    'g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_out_name': [(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',1).addE('knows').from_('b').to('a').property('_partition','b').property('weight',2)),
 (lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties':Fal
 [...]
+    'g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_bothE_weight': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',float(1.0)).addE('knows').from_('b').to('a').property('_partition','b').property('weight',float(2.0))),
 (lambda g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'incl [...]
+    'g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_bothE_weight': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',float(1.0)).addE('knows').from_('b').to('a').property('_partition','b').property('weight',float(2.0))),
 (lambda g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'incl [...]
+    
'g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_bothE_dedup_weight': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',float(1.0)).addE('knows').from_('b').to('a').property('_partition','b').property('weight',float(2.0))),
 (lambda g:g.withStrategies(*[TraversalStrategy('PartitionStrategy [...]
+    'g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_bothE_weight': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',float(1.0)).addE('knows').from_('b').to('a').property('_partition','b').property('weight',float(2.0))),
 (lambda g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'incl [...]
+    'g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_both_name': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',float(1.0)).addE('knows').from_('b').to('a').property('_partition','b').property('weight',float(2.0))),
 (lambda g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'include 
[...]
+    'g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_both_name': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',float(1.0)).addE('knows').from_('b').to('a').property('_partition','b').property('weight',float(2.0))),
 (lambda g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'include 
[...]
+    'g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_both_dedup_name': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',float(1.0)).addE('knows').from_('b').to('a').property('_partition','b').property('weight',float(2.0))),
 (lambda g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{ [...]
+    'g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_both_name': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',float(1.0)).addE('knows').from_('b').to('a').property('_partition','b').property('weight',float(2.0))),
 (lambda g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'include 
[...]
+    'g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_V_out_name': [(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',float(1.0)).addE('knows').from_('b').to('a').property('_partition','b').property('weight',float(2.0))),
 (lambda g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeM 
[...]
+    'g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_in_name': [(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',float(1.0)).addE('knows').from_('b').to('a').property('_partition','b').property('weight',float(2.0))),
 (lambda g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMe 
[...]
+    'g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_out_name': 
[(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',float(1.0)).addE('knows').from_('b').to('a').property('_partition','b').property('weight',float(2.0))),
 (lambda g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includ 
[...]
+    'g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_out_name': [(lambda 
g:g.addV('person').property('_partition','a').property('name','alice').as_('a').addV('person').property('_partition','b').property('name','bob').as_('b').addE('knows').from_('a').to('b').property('_partition','a').property('weight',float(1.0)).addE('knows').from_('b').to('a').property('_partition','b').property('weight',float(2.0))),
 (lambda g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeM 
[...]
     
'g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_addVXpersonX_propertyXname_aliceX_addXselfX':
 [(lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties':False,'partitionKey':'_partition','readPartitions':set(('a')),'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.PartitionStrategy','writePartition':'a'},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.PartitionStrategy')]).addV('person').property
 [...]
     
'g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_injectXzeroX_addVXpersonX_propertyXname_aliceX_addXselfX':
 [(lambda 
g:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties':False,'partitionKey':'_partition','readPartitions':set(('a')),'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.PartitionStrategy','writePartition':'a'},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.PartitionStrategy')]).inject(0).
 [...]
     'g_withStrategiesXPartitionStrategyXwrite_a_read_aXX_mergeV': [(lambda g, 
xx1=None:g.withStrategies(*[TraversalStrategy('PartitionStrategy',{'includeMetaProperties':False,'partitionKey':'_partition','readPartitions':set(('a')),'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.PartitionStrategy','writePartition':'a'},
 
'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.PartitionStrategy')]).merge_v(xx1)),
 (lambda g, xx1=None:g.V().has('pers [...]
@@ -873,7 +873,7 @@ world.gremlins = {
     
'g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko1_in_vadas1X_optionXonCreate_selectXcXX_optionXonMatch_selectXmXX':
 [(lambda g, 
xx1=None,xx3=None,xx2=None:g.addV('person').property('name','marko').as_('a').addV('person').property('name','vadas').as_('b')),
 (lambda g, 
xx1=None,xx3=None,xx2=None:g.withSideEffect('c',xx2).withSideEffect('m',xx3).merge_e(xx1).option(Merge.on_create,__.select('c')).option(Merge.on_match,__.select('m'))),
 (lambda g, xx1 [...]
     'g_mergeEXlabel_knows_out_marko_in_vadasX_aliased_direction': [(lambda g, 
xx1=None:g.addV('person').property('name','marko').addV('person').property('name','vadas')),
 (lambda g, xx1=None:g.merge_e(xx1)), (lambda g, 
xx1=None:g.V().has('person','name','marko').out('knows').has('person','name','vadas'))],
 
     'g_injectXlabel_knows_out_marko_in_vadas_label_self_out_vadas_in_vadasX': 
[(lambda g, 
xx1=None,xx2=None:g.addV('person').property('name','marko').addV('person').property('name','vadas')),
 (lambda g, xx1=None,xx2=None:g.inject(xx1,xx2).merge_e()), (lambda g, 
xx1=None,xx2=None:g.V()), (lambda g, xx1=None,xx2=None:g.E()), (lambda g, 
xx1=None,xx2=None:g.V().has('person','name','marko').out('knows').has('person','name','vadas')),
 (lambda g, xx1=None,xx2=None:g.V().has('person','name','vad [...]
-    
'g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_selectXcXX_optionXonMatch_sideEffectXpropertiesXweightX_dropX_selectXmXX_exists':
 [(lambda g, 
xx1=None,xx3=None,xx2=None:g.addV('person').property('name','marko').as_('a').addV('person').property('name','vadas').as_('b').addE('knows').property('weight',1).from_('a').to('b')),
 (lambda g, 
xx1=None,xx3=None,xx2=None:g.withSideEffect('c',xx2).withSideEffect('m',xx3).merge_e(xx1
 [...]
+    
'g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_selectXcXX_optionXonMatch_sideEffectXpropertiesXweightX_dropX_selectXmXX_exists':
 [(lambda g, 
xx1=None,xx3=None,xx2=None:g.addV('person').property('name','marko').as_('a').addV('person').property('name','vadas').as_('b').addE('knows').property('weight',float(1.0)).from_('a').to('b')),
 (lambda g, 
xx1=None,xx3=None,xx2=None:g.withSideEffect('c',xx2).withSideEffect('m',xx3).me 
[...]
     'g_mergeE_with_outVinV_options_map': [(lambda g, 
xx1=None,xx3=None,xx2=None:g.addV('person').property('name','marko').addV('person').property('name','vadas')),
 (lambda g, 
xx1=None,xx3=None,xx2=None:g.merge_e(xx1).option(Merge.out_v,xx2).option(Merge.in_v,xx3)),
 (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, 
xx1=None,xx3=None,xx2=None:g.V().has('name','marko').out('knows').has('name','vadas'))],
 
     'g_mergeE_with_outVinV_options_select': [(lambda g, 
xx1=None,vid2=None,vid1=None:g.addV('person').property('name','marko').addV('person').property('name','vadas')),
 (lambda g, 
xx1=None,vid2=None,vid1=None:g.V(vid1).as_('x').V(vid2).as_('y').merge_e(xx1).option(Merge.out_v,__.select('x')).option(Merge.in_v,__.select('y'))),
 (lambda g, xx1=None,vid2=None,vid1=None:g.V()), (lambda g, 
xx1=None,vid2=None,vid1=None:g.V().has('name','marko').out('knows').has('name','vadas'))],
 
     'g_mergeE_with_eid_specified_and_inheritance_1': [(lambda g, 
xx1=None,xx2=None:g.addV('person').property('name','marko').addV('person').property('name','vadas')),
 (lambda g, xx1=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2)), 
(lambda g, xx1=None,xx2=None:g.V()), (lambda g, xx1=None,xx2=None:g.E()), 
(lambda g, xx1=None,xx2=None:g.E('201')), (lambda g, 
xx1=None,xx2=None:g.V().has('name','marko').out('knows').has('name','vadas'))], 
diff --git 
a/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/integrated/PartitionStrategy.feature
 
b/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/integrated/PartitionStrategy.feature
index 7c7212027e..3b0c845ff0 100644
--- 
a/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/integrated/PartitionStrategy.feature
+++ 
b/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/integrated/PartitionStrategy.feature
@@ -75,8 +75,8 @@ Feature: Step - PartitionStrategy
       """
       
g.addV("person").property("_partition","a").property("name","alice").as("a").
         
addV("person").property("_partition","b").property("name","bob").as("b").
-        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1).
-        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2)
+        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1.0d).
+        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2.0d)
       """
     And the traversal of
       """
@@ -86,7 +86,7 @@ Feature: Step - PartitionStrategy
     When iterated to list
     Then the result should be unordered
       | result |
-      | d[1].i |
+      | d[1.0].d |
 
   @WithPartitionStrategy
   Scenario: g_withStrategiesXPartitionStrategyXwrite_a_read_bXX_V_bothE_weight
@@ -95,8 +95,8 @@ Feature: Step - PartitionStrategy
       """
       
g.addV("person").property("_partition","a").property("name","alice").as("a").
         
addV("person").property("_partition","b").property("name","bob").as("b").
-        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1).
-        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2)
+        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1.0d).
+        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2.0d)
       """
     And the traversal of
       """
@@ -106,7 +106,7 @@ Feature: Step - PartitionStrategy
     When iterated to list
     Then the result should be unordered
       | result |
-      | d[2].i |
+      | d[2.0].d |
 
   @WithPartitionStrategy
   Scenario: 
g_withStrategiesXPartitionStrategyXwrite_a_read_a_bXX_V_bothE_dedup_weight
@@ -115,8 +115,8 @@ Feature: Step - PartitionStrategy
       """
       
g.addV("person").property("_partition","a").property("name","alice").as("a").
         
addV("person").property("_partition","b").property("name","bob").as("b").
-        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1).
-        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2)
+        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1.0d).
+        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2.0d)
       """
     And the traversal of
       """
@@ -126,8 +126,8 @@ Feature: Step - PartitionStrategy
     When iterated to list
     Then the result should be unordered
       | result |
-      | d[1].i |
-      | d[2].i |
+      | d[1.0].d |
+      | d[2.0].d |
 
   @WithPartitionStrategy
   Scenario: g_withStrategiesXPartitionStrategyXwrite_a_read_cXX_V_bothE_weight
@@ -136,8 +136,8 @@ Feature: Step - PartitionStrategy
       """
       
g.addV("person").property("_partition","a").property("name","alice").as("a").
         
addV("person").property("_partition","b").property("name","bob").as("b").
-        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1).
-        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2)
+        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1.0d).
+        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2.0d)
       """
     And the traversal of
       """
@@ -154,8 +154,8 @@ Feature: Step - PartitionStrategy
       """
       
g.addV("person").property("_partition","a").property("name","alice").as("a").
         
addV("person").property("_partition","b").property("name","bob").as("b").
-        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1).
-        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2)
+        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1.0d).
+        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2.0d)
       """
     And the traversal of
       """
@@ -172,8 +172,8 @@ Feature: Step - PartitionStrategy
       """
       
g.addV("person").property("_partition","a").property("name","alice").as("a").
         
addV("person").property("_partition","b").property("name","bob").as("b").
-        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1).
-        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2)
+        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1.0d).
+        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2.0d)
       """
     And the traversal of
       """
@@ -190,8 +190,8 @@ Feature: Step - PartitionStrategy
       """
       
g.addV("person").property("_partition","a").property("name","alice").as("a").
         
addV("person").property("_partition","b").property("name","bob").as("b").
-        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1).
-        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2)
+        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1.0d).
+        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2.0d)
       """
     And the traversal of
       """
@@ -211,8 +211,8 @@ Feature: Step - PartitionStrategy
       """
       
g.addV("person").property("_partition","a").property("name","alice").as("a").
         
addV("person").property("_partition","b").property("name","bob").as("b").
-        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1).
-        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2)
+        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1.0d).
+        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2.0d)
       """
     And the traversal of
       """
@@ -229,8 +229,8 @@ Feature: Step - PartitionStrategy
       """
       
g.addV("person").property("_partition","a").property("name","alice").as("a").
         
addV("person").property("_partition","b").property("name","bob").as("b").
-        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1).
-        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2)
+        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1.0d).
+        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2.0d)
       """
     And the traversal of
       """
@@ -247,8 +247,8 @@ Feature: Step - PartitionStrategy
       """
       
g.addV("person").property("_partition","a").property("name","alice").as("a").
         
addV("person").property("_partition","b").property("name","bob").as("b").
-        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1).
-        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2)
+        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1.0d).
+        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2.0d)
       """
     And the traversal of
       """
@@ -265,8 +265,8 @@ Feature: Step - PartitionStrategy
       """
       
g.addV("person").property("_partition","a").property("name","alice").as("a").
         
addV("person").property("_partition","b").property("name","bob").as("b").
-        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1).
-        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2)
+        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1.0d).
+        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2.0d)
       """
     And the traversal of
       """
@@ -286,8 +286,8 @@ Feature: Step - PartitionStrategy
       """
       
g.addV("person").property("_partition","a").property("name","alice").as("a").
         
addV("person").property("_partition","b").property("name","bob").as("b").
-        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1).
-        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2)
+        
addE("knows").from("a").to("b").property("_partition","a").property("weight",1.0d).
+        
addE("knows").from("b").to("a").property("_partition","b").property("weight",2.0d)
       """
     And the traversal of
       """
diff --git 
a/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/map/MergeEdge.feature
 
b/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/map/MergeEdge.feature
index 6186d68f58..4585a46875 100644
--- 
a/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/map/MergeEdge.feature
+++ 
b/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/map/MergeEdge.feature
@@ -619,7 +619,7 @@ Feature: Step - mergeE()
       """
       g.addV("person").property("name", "marko").as("a").
         addV("person").property("name", "vadas").as("b").
-        addE("knows").property("weight", 1).from("a").to("b")
+        addE("knows").property("weight", 1.0d).from("a").to("b")
       """
     And using the parameter xx1 defined as "m[{\"t[label]\": \"knows\", 
\"D[OUT]\":\"v[marko]\", \"D[IN]\":\"v[vadas]\"}]"
     And using the parameter xx2 defined as "m[{\"t[label]\": \"knows\", 
\"D[OUT]\":\"v[marko]\", \"D[IN]\":\"v[vadas]\",\"created\":\"Y\"}]"

Reply via email to