You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2019/06/24 15:51:01 UTC

[tinkerpop] 03/03: TINKERPOP-2250 Deprecate Gryo in Gremlin Server

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

spmallette pushed a commit to branch TINKERPOP-2250
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git

commit 75f108c0bc1a1bbe4539d8fd3b59565c363bfba3
Author: Stephen Mallette <sp...@genoprime.com>
AuthorDate: Mon Jun 24 11:50:24 2019 -0400

    TINKERPOP-2250 Deprecate Gryo in Gremlin Server
---
 CHANGELOG.asciidoc                                             |  1 +
 docs/src/upgrade/release-3.4.x.asciidoc                        | 10 ++++++++++
 .../gremlin/driver/ser/AbstractGryoMessageSerializerV1d0.java  |  2 ++
 .../gremlin/driver/ser/AbstractGryoMessageSerializerV3d0.java  |  2 ++
 .../gremlin/driver/ser/GryoMessageSerializerV1d0.java          |  2 ++
 .../gremlin/driver/ser/GryoMessageSerializerV3d0.java          |  2 ++
 .../apache/tinkerpop/gremlin/server/AbstractChannelizer.java   |  7 +++----
 7 files changed, 22 insertions(+), 4 deletions(-)

diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index d21e898..e304673 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -28,6 +28,7 @@ This release also includes changes from <<release-3-3-8, 3.3.8>>.
 * Improved error messaging on timeouts returned to the console from `:>`.
 * Added a `toString()` serializer for GraphBinary.
 * Configured the Gremlin Console to use GraphBinary by default.
+* Deprecated `MessageSerializer` implementations for Gryo in Gremlin Server.
 * Added a Docker command to start Gremlin Server with the standard GLV test configurations.
 * Modified `NumberHelper` to better ignore `Double.NaN` in `min()` and `max()` comparisons.
 * Bump to Netty 4.1.36.
diff --git a/docs/src/upgrade/release-3.4.x.asciidoc b/docs/src/upgrade/release-3.4.x.asciidoc
index cd575d6..d4b60e6 100644
--- a/docs/src/upgrade/release-3.4.x.asciidoc
+++ b/docs/src/upgrade/release-3.4.x.asciidoc
@@ -27,6 +27,16 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 
 Please see the link:https://github.com/apache/tinkerpop/blob/3.4.3/CHANGELOG.asciidoc#release-3-4-3[changelog] for a complete list of all the modifications that are part of this release.
 
+=== Upgrading for Users
+
+==== Deprecate Gryo in Gremlin Server
+
+Gryo is now deprecated as a serialization format for Gremlin Server, however, it is still configured as a default
+option in the sample configuration files packaged with the server. The preferred serialization option should now be
+GraphBinary. Note that Gremlin Console is now configured to use GraphBinary by default.
+
+See: link:https://issues.apache.org/jira/browse/TINKERPOP-2250[TINKERPOP-2250]
+
 === Upgrading for Providers
 
 ==== Graph Driver Providers
diff --git a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGryoMessageSerializerV1d0.java b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGryoMessageSerializerV1d0.java
index 2bb3383..799b3d9 100644
--- a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGryoMessageSerializerV1d0.java
+++ b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGryoMessageSerializerV1d0.java
@@ -47,7 +47,9 @@ import java.util.stream.Collectors;
 
 /**
  * @author Stephen Mallette (http://stephen.genoprime.com)
+ * @deprecated As of release 3.4.3, replaced by {@link GraphBinaryMessageSerializerV1}.
  */
+@Deprecated
 public abstract class AbstractGryoMessageSerializerV1d0 extends AbstractMessageSerializer {
     private GryoMapper gryoMapper;
     private ThreadLocal<Kryo> kryoThreadLocal = new ThreadLocal<Kryo>() {
diff --git a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGryoMessageSerializerV3d0.java b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGryoMessageSerializerV3d0.java
index 9c690c9..2efb4a3 100644
--- a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGryoMessageSerializerV3d0.java
+++ b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGryoMessageSerializerV3d0.java
@@ -44,7 +44,9 @@ import java.util.stream.Collectors;
 
 /**
  * @author Stephen Mallette (http://stephen.genoprime.com)
+ * @deprecated As of release 3.4.3, replaced by {@link GraphBinaryMessageSerializerV1}.
  */
+@Deprecated
 public abstract class AbstractGryoMessageSerializerV3d0 extends AbstractMessageSerializer {
     private GryoMapper gryoMapper;
     private ThreadLocal<Kryo> kryoThreadLocal = new ThreadLocal<Kryo>() {
diff --git a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV1d0.java b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV1d0.java
index d26f026..f97710f 100644
--- a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV1d0.java
+++ b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV1d0.java
@@ -28,7 +28,9 @@ import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedVertex;
  * network serialization purposes.
  *
  * @author Stephen Mallette (http://stephen.genoprime.com)
+ * @deprecated As of release 3.4.3, replaced by {@link GraphBinaryMessageSerializerV1}.
  */
+@Deprecated
 public final class GryoMessageSerializerV1d0 extends AbstractGryoMessageSerializerV1d0 {
 
     private static final String MIME_TYPE = SerTokens.MIME_GRYO_V1D0;
diff --git a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV3d0.java b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV3d0.java
index 85b79a9..1f1ccb8 100644
--- a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV3d0.java
+++ b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV3d0.java
@@ -28,7 +28,9 @@ import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedVertex;
  * network serialization purposes.
  *
  * @author Stephen Mallette (http://stephen.genoprime.com)
+ * @deprecated As of release 3.4.3, replaced by {@link GraphBinaryMessageSerializerV1}.
  */
+@Deprecated
 public final class GryoMessageSerializerV3d0 extends AbstractGryoMessageSerializerV3d0 {
 
     private static final String MIME_TYPE = SerTokens.MIME_GRYO_V3D0;
diff --git a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/AbstractChannelizer.java b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/AbstractChannelizer.java
index c969297..3ae41bc 100644
--- a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/AbstractChannelizer.java
+++ b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/AbstractChannelizer.java
@@ -86,7 +86,7 @@ public abstract class AbstractChannelizer extends ChannelInitializer<SocketChann
             new Settings.SerializerSettings(GraphSONMessageSerializerV2d0.class.getName(), Collections.emptyMap()),
             new Settings.SerializerSettings(GraphBinaryMessageSerializerV1.class.getName(), Collections.emptyMap()),
             new Settings.SerializerSettings(GraphBinaryMessageSerializerV1.class.getName(), new HashMap<String,Object>(){{
-                put(AbstractGryoMessageSerializerV1d0.TOKEN_SERIALIZE_RESULT_TO_STRING, true);
+                put(GraphBinaryMessageSerializerV1.TOKEN_SERIALIZE_RESULT_TO_STRING, true);
             }})
     );
 
@@ -111,15 +111,14 @@ public abstract class AbstractChannelizer extends ChannelInitializer<SocketChann
 
     protected final Map<String, MessageSerializer> serializers = new HashMap<>();
 
-    private IdleStateHandler idleStateHandler;
     private OpSelectorHandler opSelectorHandler;
     private OpExecutorHandler opExecutorHandler;
 
     protected Authenticator authenticator;
 
     /**
-     * This method is called from within {@link #initChannel(io.netty.channel.socket.SocketChannel)} just after
-     * the SSL handler is put in the pipeline.  Modify the pipeline as needed here.
+     * This method is called from within {@code SocketChannel} just after the SSL handler is put in the pipeline.
+     * Modify the pipeline as needed here.
      */
     public abstract void configure(final ChannelPipeline pipeline);