[
https://issues.apache.org/jira/browse/TINKERPOP-2824?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17695929#comment-17695929
]
ASF GitHub Bot commented on TINKERPOP-2824:
-------------------------------------------
Cole-Greer commented on code in PR #1843:
URL: https://github.com/apache/tinkerpop/pull/1843#discussion_r1123865203
##########
docs/src/upgrade/release-3.7.x.asciidoc:
##########
@@ -29,9 +29,73 @@ Please see the
link:https://github.com/apache/tinkerpop/blob/3.7.0/CHANGELOG.asc
=== Upgrading for Users
+==== Properties on Elements
+
+===== Introduction
+
+By default properties on Elements are now returned for OLTP requests. Gremlin
Server 3.5 and 3.6 does not return properties by default.
+More hitory details about serialization of properties can be found in the
link:https://lists.apache.org/thread/xltcon4zxnwq4fyw2r2126syyrqm8spy[Stephen's
post].
+
+===== Behavior for OLAP queries
+
+Queries still won't return Properties on Elements. The main reason for this is
performance considerations.
+If you need to get a properties, then this can be explicitly configured with
`HaltedTraverserStrategy`
+
+[source,java]
+----
+ g.withComputer().withStrategies(HaltedTraverserFactoryStrategy.detached())
+----
+
+===== Output compare for Gremlin Server 3.5/3.6 and 3.7
+
+Let's take a closer look at Javascript GLV code example in 3.6 and 3.7
+
+[source,javascript]
+----
+ const client = new Client('ws://localhost:8182/gremlin',{traversalSource:
'gmodern'});
+ await client.open();
+ const result = await client.submit('g.V(1)');
+ console.log(JSON.stringify(result.first()));
+ await client.close();
+----
+
+The result will be different depending on the version of Gremlin Server.
+For 3.5/3.6:
+[source,json]
+----
+ {"id":1,"label":"person"}
+----
+
+For 3.7:
+[source,json]
+----
+
{"id":1,"label":"person","properties":{"name":[{"id":0,"label":"name","value":"marko","key":"name"}],"age":[{"id":1,"label":"age","value":29,"key":"age"}]}}
+--
> Properties on Elements
> ----------------------
>
> Key: TINKERPOP-2824
> URL: https://issues.apache.org/jira/browse/TINKERPOP-2824
> Project: TinkerPop
> Issue Type: Improvement
> Components: dotnet, driver, go, javascript, process, python
> Affects Versions: 3.5.4
> Reporter: Valentyn Kahamlyk
> Assignee: Valentyn Kahamlyk
> Priority: Major
>
> Problem: When a user writes `g.V()` they get back a Vertex object. The
> problem is that depending on the execution context of the traversal, the
> result could be quite different, with or without properties.
> Solution: Implement new finalization strategy DetachStrategy(detachMode,
> properties) where mode is one of ALL, NONE or CUSTOM. `properties` is list of
> properties name, are taken into account only for CUSTOM mode.
> Discussion thread in dev list: [Proposal to handle properties on response
> Elements-Apache Mail
> Archives|https://lists.apache.org/thread/l8rw7ydj7kym8vhtwk50nhbp45ng9986]
> Stephen's thread in dev list: [The Issue of Detachment-Apache Mail
> Archives|https://lists.apache.org/thread/xltcon4zxnwq4fyw2r2126syyrqm8spy]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)