tinkerpop-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dkupp...@apache.org
Subject tinkerpop git commit: Updated release docs
Date Fri, 02 Mar 2018 21:05:04 GMT
Repository: tinkerpop
Updated Branches:
  refs/heads/TINKERPOP-1777 32014426f -> 7149f8e8c


Updated release docs


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/7149f8e8
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/7149f8e8
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/7149f8e8

Branch: refs/heads/TINKERPOP-1777
Commit: 7149f8e8c1c255420b19748632ee4d928480f2e2
Parents: 3201442
Author: Daniel Kuppitz <daniel_kuppitz@hotmail.com>
Authored: Fri Mar 2 14:04:58 2018 -0700
Committer: Daniel Kuppitz <daniel_kuppitz@hotmail.com>
Committed: Fri Mar 2 14:04:58 2018 -0700

----------------------------------------------------------------------
 docs/src/upgrade/release-3.4.x.asciidoc | 42 ++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/7149f8e8/docs/src/upgrade/release-3.4.x.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/upgrade/release-3.4.x.asciidoc b/docs/src/upgrade/release-3.4.x.asciidoc
index ff7b458..5a355fa 100644
--- a/docs/src/upgrade/release-3.4.x.asciidoc
+++ b/docs/src/upgrade/release-3.4.x.asciidoc
@@ -28,3 +28,45 @@ NEED AN IMAGE
 Please see the link:https://github.com/apache/tinkerpop/blob/3.4.0/CHANGELOG.asciidoc#release-3-4-0[changelog]
for a complete list of all the modifications that are part of this release.
 
 === Upgrading for Users
+
+==== Modifications to reducing barrier steps
+
+The behavior of `min()`, `max()`, `mean()` and `sum()` has been modified to return no result
if there's no input. Previously these steps yielded the internal seed value:
+
+[source,groovy]
+----
+gremlin> g.V().values('foo').min()
+==>NaN
+gremlin> g.V().values('foo').max()
+==>NaN
+gremlin> g.V().values('foo').mean()
+==>NaN
+gremlin> g.V().values('foo').sum()
+==>0
+----
+
+These traversals will no longer emit a result. Note, that this also affects more complex
scenarios, e.g. if these steps are used in `by()` modulators:
+
+[source,groovy]
+----
+gremlin> g.V().group().
+......1>   by(label).
+......2>   by(outE().values("weight").sum())
+==>[software:0,person:3.5]
+----
+
+Since software vertices have no outgoing edges and thus no weight values to sum, `software`
will no longer show up in the result. In order to get the same result as before, one would
+have to add a `coalesce()`-step:
+
+[source,groovy]
+----
+gremlin> g.V().group().
+......1>   by(label).
+......2>   by(outE().values("weight").sum())
+==>[person:3.5]
+gremlin> 
+gremlin> g.V().group().
+......1>   by(label).
+......2>   by(coalesce(outE().values("weight"), constant(0)).sum())
+==>[software:0,person:3.5]
+----


Mime
View raw message