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 2018/02/09 19:29:40 UTC
[1/2] tinkerpop git commit: Improved error messaging on
request/response serialization/deserialization CTR
Repository: tinkerpop
Updated Branches:
refs/heads/master 304a7ae3f -> 8c079598e
Improved error messaging on request/response serialization/deserialization CTR
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/97947c1a
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/97947c1a
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/97947c1a
Branch: refs/heads/master
Commit: 97947c1a60e399a4f53e2b3e60c4bef60bdbc94f
Parents: 4e284c0
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Fri Feb 9 14:02:48 2018 -0500
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Fri Feb 9 14:02:48 2018 -0500
----------------------------------------------------------------------
CHANGELOG.asciidoc | 1 +
.../driver/ser/AbstractGraphSONMessageSerializerV2d0.java | 8 ++++----
.../driver/ser/AbstractGryoMessageSerializerV1d0.java | 8 ++++----
3 files changed, 9 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/97947c1a/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index c562ccd..9dcb7f0 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -26,6 +26,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
* Added the "Kitchen Sink" test data set.
* Fixed a bug in `NumberHelper` that led to wrong min/max results if numbers exceeded the Integer limits.
* Delayed setting of the request identifier until `RequestMessage` construction by the builder.
+* Improved error messaging for failed serialization and deserialization of request/response messages.
* Removed hardcoded expectation in metrics serialization test suite as different providers may have different outputs.
* Added `IndexedTraverserSet` which indexes on the value of a `Traverser` thus improving performance when used.
* Utilized `IndexedTraverserSet` in `TraversalVertexProgram` to avoid extra iteration when doing `Vertex` lookups.
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/97947c1a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGraphSONMessageSerializerV2d0.java
----------------------------------------------------------------------
diff --git a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGraphSONMessageSerializerV2d0.java b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGraphSONMessageSerializerV2d0.java
index 9527224..ab79ec9 100644
--- a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGraphSONMessageSerializerV2d0.java
+++ b/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGraphSONMessageSerializerV2d0.java
@@ -118,7 +118,7 @@ public abstract class AbstractGraphSONMessageSerializerV2d0 extends AbstractMess
} catch (Exception ex) {
if (encodedMessage != null) ReferenceCountUtil.release(encodedMessage);
- logger.warn("Response [{}] could not be serialized by {}.", responseMessage.toString(), AbstractGraphSONMessageSerializerV2d0.class.getName());
+ logger.warn(String.format("Response [%s] could not be serialized by %s.", responseMessage, AbstractGraphSONMessageSerializerV2d0.class.getName()), ex);
throw new SerializationException(ex);
}
}
@@ -138,7 +138,7 @@ public abstract class AbstractGraphSONMessageSerializerV2d0 extends AbstractMess
} catch (Exception ex) {
if (encodedMessage != null) ReferenceCountUtil.release(encodedMessage);
- logger.warn("Request [{}] could not be serialized by {}.", requestMessage.toString(), AbstractGraphSONMessageSerializerV2d0.class.getName());
+ logger.warn(String.format("Request [%s] could not be serialized by %s.", requestMessage, AbstractGraphSONMessageSerializerV2d0.class.getName()), ex);
throw new SerializationException(ex);
}
}
@@ -150,7 +150,7 @@ public abstract class AbstractGraphSONMessageSerializerV2d0 extends AbstractMess
msg.readBytes(payload);
return mapper.readValue(payload, RequestMessage.class);
} catch (Exception ex) {
- logger.warn("Request [{}] could not be deserialized by {}.", msg, AbstractGraphSONMessageSerializerV2d0.class.getName());
+ logger.warn(String.format("Request [%s] could not be deserialized by %s.", msg, AbstractGraphSONMessageSerializerV2d0.class.getName()), ex);
throw new SerializationException(ex);
}
}
@@ -162,7 +162,7 @@ public abstract class AbstractGraphSONMessageSerializerV2d0 extends AbstractMess
msg.readBytes(payload);
return mapper.readValue(payload, ResponseMessage.class);
} catch (Exception ex) {
- logger.warn("Response [{}] could not be deserialized by {}.", msg, AbstractGraphSONMessageSerializerV2d0.class.getName());
+ logger.warn(String.format("Response [%s] could not be deserialized by %s.", msg, AbstractGraphSONMessageSerializerV2d0.class.getName()), ex);
throw new SerializationException(ex);
}
}
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/97947c1a/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGryoMessageSerializerV1d0.java
----------------------------------------------------------------------
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 c79c124..868f5b5 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
@@ -198,7 +198,7 @@ public abstract class AbstractGryoMessageSerializerV1d0 extends AbstractMessageS
.create();
}
} catch (Exception ex) {
- logger.warn("Response [{}] could not be deserialized by {}.", msg, GryoMessageSerializerV1d0.class.getName());
+ logger.warn(String.format("Response [%s] could not be deserialized by %s.", msg, AbstractGryoMessageSerializerV1d0.class.getName()), ex);
throw new SerializationException(ex);
}
}
@@ -236,7 +236,7 @@ public abstract class AbstractGryoMessageSerializerV1d0 extends AbstractMessageS
} catch (Exception ex) {
if (encodedMessage != null) ReferenceCountUtil.release(encodedMessage);
- logger.warn("Response [{}] could not be serialized by {}.", responseMessage.toString(), GryoMessageSerializerV1d0.class.getName());
+ logger.warn(String.format("Response [%s] could not be serialized by %s.", responseMessage, AbstractGryoMessageSerializerV1d0.class.getName()), ex);
throw new SerializationException(ex);
}
}
@@ -263,7 +263,7 @@ public abstract class AbstractGryoMessageSerializerV1d0 extends AbstractMessageS
return builder.create();
}
} catch (Exception ex) {
- logger.warn("Request [{}] could not be deserialized by {}.", msg, GryoMessageSerializerV1d0.class.getName());
+ logger.warn(String.format("Request [%s] could not be deserialized by %s.", msg, AbstractGryoMessageSerializerV1d0.class.getName()), ex);
throw new SerializationException(ex);
}
}
@@ -297,7 +297,7 @@ public abstract class AbstractGryoMessageSerializerV1d0 extends AbstractMessageS
} catch (Exception ex) {
if (encodedMessage != null) ReferenceCountUtil.release(encodedMessage);
- logger.warn("Request [{}] could not be serialized by {}.", requestMessage.toString(), GryoMessageSerializerV1d0.class.getName());
+ logger.warn(String.format("Request [%s] could not be serialized by %s.", requestMessage, AbstractGryoMessageSerializerV1d0.class.getName()), ex);
throw new SerializationException(ex);
}
}
[2/2] tinkerpop git commit: Merge branch 'tp32'
Posted by sp...@apache.org.
Merge branch 'tp32'
Conflicts:
CHANGELOG.asciidoc
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/8c079598
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/8c079598
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/8c079598
Branch: refs/heads/master
Commit: 8c079598ee9cbd67b67af8296ff7920691ce28dc
Parents: 304a7ae 97947c1
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Fri Feb 9 14:29:28 2018 -0500
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Fri Feb 9 14:29:28 2018 -0500
----------------------------------------------------------------------
CHANGELOG.asciidoc | 3 ++-
.../driver/ser/AbstractGraphSONMessageSerializerV2d0.java | 8 ++++----
.../driver/ser/AbstractGryoMessageSerializerV1d0.java | 8 ++++----
3 files changed, 10 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8c079598/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --cc CHANGELOG.asciidoc
index 1ba3aa8,9dcb7f0..e60186d
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@@ -16,255 -16,6 +16,255 @@@ limitations under the License
////
= TinkerPop3 CHANGELOG
+== TinkerPop 3.3.0 (Gremlin Symphony #40 in G Minor)
+
+image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/images/gremlin-mozart.png[width=185]
+
+[[release-3-3-2]]
+=== TinkerPop 3.3.2 (Release Date: NOT OFFICIALLY RELEASED YET)
-
++
+This release also includes changes from <<release-3-2-8, 3.2.8>>.
+
+* Fixed regression issue where the HTTPChannelizer doesn't instantiate the specified AuthenticationHandler
+* Defaulted GLV tests for gremlin-python to run for GraphSON 3.0.
+* In gremlin-python, the GraphSON 3.0 `g:Set` type is now deserialized to `List`.
+
+[[release-3-3-1]]
+=== TinkerPop 3.3.1 (Release Date: December 17, 2017)
+
+This release also includes changes from <<release-3-2-7, 3.2.7>>.
+
+* Added `NoneStep` and `Traversal.none()` for full filtering integration with `iterate()`.
+* Fixed bug in serialization of `Path` for GraphSON 3.0 in `gremlin-python`.
+* Added support for GraphSON 3.0 in Gremlin.Net.
+* Added `math()`-step which supports scientific calculator capabilities for numbers within a traversal.
+* Added missing `GraphTraversalSource.addE()`-method to `GremlinDslProcessor`.
+* Changed `to()` and `from()` traversal-based steps to take a wildcard `?` instead of of `E`.
+* Added `addV(traversal)` and `addE(traversal)` so that created element labels can be determined dynamically.
+* `PageRankVertexProgram` supports `maxIterations` but will break out early if epsilon-based convergence occurs.
+* Added support for epsilon-based convergence in `PageRankVertexProgram`.
+* Fixed two major bugs in how PageRank was being calculated in `PageRankVertexProgram`.
+* Added `Io.requiresVersion(Object)` to allow graph providers a way to check the `Io` type and version being constructed.
+* Defaulted `IoCore.gryo()` and `IoCore.graphson()` to both use their 3.0 formats which means that `Graph.io()` will use those by default.
+* Bumped Neo4j 3.2.3
+
+==== Bugs
+
+* TINKERPOP-1773 Lop should be created as a "software" and not a "person"
+* TINKERPOP-1783 PageRank gives incorrect results for graphs with sinks *(breaking)*
+* TINKERPOP-1799 Failure to serialize path() in gremlin-python
+* TINKERPOP-1847 tinkergraph-gremlin dependency on gremlin-test, bad scope?
+
+==== Improvements
+
+* TINKERPOP-1632 Create a set of default functions
+* TINKERPOP-1692 Bump to Neo4j 3.2.3
+* TINKERPOP-1717 Update name and link of DynamoDB storage backend in landing page
+* TINKERPOP-1730 Gremlin .NET support for GraphSON 3.0
+* TINKERPOP-1767 Method for graph providers to check an IO version and type
+* TINKERPOP-1793 addE() should allow dynamic edge labels
+* TINKERPOP-1834 Consider iterate() as a first class step
+
+[[release-3-3-0]]
+=== TinkerPop 3.3.0 (Release Date: August 21, 2017)
+
+This release also includes changes from <<release-3-2-6, 3.2.6>>.
+
+* Removed previously deprecated `ScriptElementFactory`.
+* Added `GraphTraversalSource.addE(String)` in support of `g.addE().from().to()`.
+* Added support for `to(Vertex)` and `from(Vertex)` as a shorthand for `to(V(a))` and `from(V(b))`.
+* Bumped to support Spark 2.2.0.
+* Detected if type checking was required in `GremlinGroovyScriptEngine` and disabled related infrastructure if not.
+* Removed previously deprecated `GraphTraversal.selectV3d0()` step.
+* Removed previously deprecated `DetachedEdge(Object,String,Map,Pair,Pair)` constructor.
+* Removed previously deprecated `Bindings` constructor. It is now a private constructor.
+* Removed previously deprecated `TraversalSource.withBindings()`.
+* Removed previously deprecated `GraphTraversal.sack(BiFunction,String)`.
+* `TraversalMetrics` and `Metrics` Gryo 1.0 formats changed given internal changes to their implementations.
+* Made `TraversalMetrics` safe to write to from multiple threads.
+* Removed previously deprecated `TraversalSideEffects` methods.
+* Removed previously deprecated `finalization.LazyBarrierStrategy` (moved to `optimization.LazyBarrierStrategy`).
+* Removed previously deprecated `Constants` in Hadoop.
+* Removed previously deprecated `VertexComputing.generateComputer(Graph)`.
+* Removed previously deprecated `ConfigurationTraversal`.
+* Established the Gryo 3.0 format.
+* `GryoVersion` now includes a default `ClassResolver` to supply to the `GryoMapper`.
+* `GryoClassResolver` renamed to `GryoClassResolverV1d0` which has an abstract class that for providers to extend in `AbstractGryoClassResolver`.
+* Removed previously deprecated `Order` enums of `keyIncr`, `keyDecr`, `valueIncr`, and `valueDecr.`
+* Removed previously deprecated `GraphTraversal.mapKeys()` step.
+* Removed previously deprecated `GraphTraversal.mapValues()` step.
+* Removed previously deprecated `GraphTraversal#addV(Object...)`.
+* Removed previously deprecated `GraphTraversal#addE(Direction, String, String, Object...)`.
+* Removed previously deprecated `GraphTraversal#addOutE(String, String, Object...)`.
+* Removed previously deprecated `GraphTraversal#addInV(String, String, Object...)`.
+* Removed previously deprecated `GraphTraversal.groupV3d0()` and respective `GroupSideEffectStepV3d0` and `GroupStepV3d0`.
+* Removed previously deprecated `TraversalSource.Builder` class.
+* Removed previously deprecated `ConnectiveP`, `AndP`, `OrP` constructors.
+* Removed previously deprecated `TraversalScriptFunction` class.
+* Removed previously deprecated `TraversalScriptHelper` class.
+* Removed previously deprecated `ScriptEngineCache` class.
+* Removed previously deprecated `CoreImports` class.
+* Removed previously deprecated `GremlinJythonScriptEngine#()` constructor.
+* Removed access to previously deprecated `CoreGremlinPlugin#INSTANCE` field.
+* `gremlin.sh` and `gremln.bat` no longer support the option to pass a script as an argument for execution mode without using the `-i` option.
+* Graphite and Ganglia are no longer packaged with the Gremlin Server distribution.
+* `TransactionException` is no longer a class of `AbstractTransaction` and it extends `RuntimeException`.
+* Included an ellipse on long property names that are truncated.
+* Renamed `RangeByIsCountStrategy` to `CountStrategy`.
+* Added more specific typing to various `__` traversal steps. E.g. `<A,Vertex>out()` is `<Vertex,Vertex>out()`.
+* Updated Docker build scripts to include Python dependencies (NOTE: users should remove any previously generated TinkerPop Docker images).
+* Added "attachment requisite" `VertexProperty.element()` and `Property.element()` data in GraphSON serialization.
+* GraphSON 3.0 is now the default serialization format in TinkerGraph and Gremlin Server.
+* Changed `ServerGremlinExecutor` to not use generics since there really is no flexibility in the kind of `ScheduledExecutorService` that will be used.
+* Removed support for passing a byte array on the `sasl` parameter.
+* Removed previously deprecated `GraphSONMapper$Builder#embedTypes` option.
+* Removed previously deprecated `:remote config timeout max`.
+* Removed previously deprecated `ConnectionPoolSettings.sessionId` and `ConnectionPoolSettings.optionalSessionId()`.
+* Removed previously deprecated `reconnectInitialDelay` setting from the Java driver.
+* Removed previously deprecated `useMapperFromGraph` option.
+* Established the GraphSON 3.0 format with new `g:Map`, `g:List` and `g:Set` types.
+* Removed previously deprecated `Io.Builder#registry(IoRegistry)` method.
+* Removed previously deprecated `GryoMessageSerializerV1d0(GryoMapper)` constructor.
+* Removed previously deprecated `TinkerIoRegistry`.
+* Removed previously deprecated `getInstance()` methods on all TinkerPop classes.
+* Removed previously deprecated `VertexPropertyFeatures.supportsAddProperty()`.
+* Removed previously deprecated TinkerGraph configuration member variables.
+* Removed previously deprecated `Transaction.submit(Function)`.
+* Removed previously deprecated `OpSelectorHandler.errorMeter` and `AbstractEvalOpProcessor.errorMeter` fields.
+* Removed previously deprecated `AbstractEvalOpProcessor.validBindingName` field.
+* Removed previously deprecated `SimpleAuthenticator.CONFIG_CREDENTIALS_LOCATION` field.
+* Removed previously deprecated `IteratorHandler`, `NioGremlinResponseEncoder` and `WsGremlinResponseEncoder` classes.
+* Removed previously deprecated `Session.kill()` and `Session.manualKill()`.
+* Removed previously deprecated `Authenticator.newSaslNegotiator()` and its method implementations in classes that were assignable to that interface.
+* Removed `gremlin-groovy-test`.
+* Removed previously deprecated "G" functions in `gremlin-groovy` (i.e. `GFunction`).
+* Removed references to the old `GremlinPlugin` system that was in `gremlin-groovy` - the revised `GremlinPlugin` system in `gremlin-core` is the only one now in use.
+* `GremlinGroovyScriptEngine` no longer implements the now removed `DependencyManager`.
+* Added `Vertex`, `Edge`, `VertexProperty`, and `Property` serializers to Gremlin-Python and exposed tests that use graph object arguments.
+* `Bytecode.getSourceInstructions()` and `Bytecode.getStepInstructions()` now returns `List<Instruction>` instead of `Iterable<Instruction>`.
+* Added various `TraversalStrategy` registrations with `GryoMapper`.
+* Fixed a naming mistake in Gremlin-Python: `IdentityRemoveStrategy` is now called `IdentityRemovalStrategy`.
+* Added `TranslationStrategy` test infrastructure that verifies `Bytecode` generated from a translation is equal to the original `Bytecode`.
+* Moved `NumberHelper` into the `org.apache.tinkerpop.gremlin.util` package.
+* Added `Pop.mixed` instead of using `null` to represent such semantics.
+* `select()`-step now defaults to using `Pop.last` instead of `Pop.mixed`.
+* Added `gremlin-io-test` module to validate IO formats.
+* `RequestMessage` and `ResponseMessage` are now registered with `GryoMapper` as part of the TinkerPop range of type identifiers.
+* Removed previously deprecated `Console` constructor that took a `String` as an argument from `gremlin-console`.
+* Removed previously deprecated `ConcurrentBindings` from `gremlin-groovy`.
+* Removed previously deprecated `ScriptExecutor` from `gremlin-groovy`.
+* Removed previously deprecated `SandboxExtension` from `gremlin-groovy`.
+* Removed previously deprecated `GremlinGroovyScriptEngine` constructor that took `ImportCustomizerProvider` as an argument from `gremlin-groovy`.
+* Removed previously deprecated `GremlinGroovyScriptEngine#plugins()` from `gremlin-groovy`.
+* Added `OptionalStep` for use with `optional()` to better handle issues associated with branch side-effects.
+* `UnfoldStep` now supports unfolding of arrays.
+* Removed all performance tests that were not part of `gremlin-benchmark`.
+* Removed dependency on `junit-benchmarks` and it's related reference to `h2`.
+* Moved the source for the "home page" into the repository under `/site` so that it easier to accept contributions.
+* Added `UnshadedKryoShimService` as the new default serializer model for `SparkGraphComputer`.
+* `GryoRegistrator` is more efficient than the previous `GryoSerializer` model in `SparkGraphComputer`.
+* Added support for `IoRegistry` custom serialization in Spark/Giraph and provided a general `hadoop-gremlin` test suite.
+* Replaced term `REST` with `HTTP` to remove any confusion as to the design of the API.
+* Moved `gremlin-benchmark` under `gremlin-tools` module.
+* Added `gremlin-tools` and its submodule `gremlin-coverage`.
+* Removed `tryRandomCommit()` from `AbstractGremlinTest`.
+* Changed `gremlin-benchmark` system property for the report location to `benchmarkReportDir` for consistency.
+* Added SysV and systemd init scripts.
+* `GraphTraversal.valueMap(includeTokens,propertyKeys...)` now returns a `Map<Object,E>` since keys could be `T.id` or `T.label`.
+* Added `skip(long)` and `skip((Scope,long)` which call the `range(low,high)` equivalents with -1 as the high.
+* Added Kerberos authentication to `gremlin-server` for websockets and nio transport.
+* Added audit logging of authenticated users and gremlin queries to `gremlin-server`.
+
+==== Bugs
+
+* TINKERPOP-1211 UnfoldStep should unfold arrays. *(breaking)*
+* TINKERPOP-1426 GryoSerializer should implement Java serialization interface
+* TINKERPOP-1465 Remove deprecated newSaslNegotiator *(breaking)*
+* TINKERPOP-1483 PropertyMapStep returns Map<String,E> but puts non String keys in it!
+* TINKERPOP-1520 Difference between 'has' step generated graphson2.0 in java and python glv implementation
+* TINKERPOP-1533 Storage and IoRegistry
+* TINKERPOP-1597 PathRetractionStrategy messing up certain traversals
+* TINKERPOP-1635 gremlin-python: Duplicate serialization of element property in PropertySerializer
+* TINKERPOP-1658 Graphson2 map keys are serialised as strings
+* TINKERPOP-1716 Traversal strategies are not applied with remote in Gremlin Console
+
+==== Improvements
+
+* TINKERPOP-832 Remove deprecated addV/E/InE/OutE methods *(breaking)*
+* TINKERPOP-833 Remove deprecated GremlinGroovyScriptEngine constructor and plugins() *(breaking)*
+* TINKERPOP-834 Remove deprecated sack() method *(breaking)*
+* TINKERPOP-880 Remove deprecated GroupStepV3d0 and GroupSideEffectStepV3d0 *(breaking)*
+* TINKERPOP-929 Remove Deprecated TinkerGraph public static methods. *(breaking)*
+* TINKERPOP-980 Add a service script or daemon mode in the distribution *(breaking)*
+* TINKERPOP-999 ServerGremlinExecutor construction need not use generics for ExecutorService *(breaking)*
+* TINKERPOP-1004 Make Transaction.commit() failures consistent across implementations. *(breaking)*
+* TINKERPOP-1010 Remove deprecated credentialsDbLocation for SimpleAuthenticator *(breaking)*
+* TINKERPOP-1024 Remove deprecated tryRandomCommit() *(breaking)*
+* TINKERPOP-1028 Remove deprecated ConnectionPoolSettings session settings *(breaking)*
+* TINKERPOP-1040 Remove deprecated SandboxExtension *(breaking)*
+* TINKERPOP-1046 Remove deprecated Gremlin Server handler implementations *(breaking)*
+* TINKERPOP-1049 Remove deprecated error meter member variables in Gremlin Server handlers *(breaking)*
+* TINKERPOP-1094 Remove deprecated VertexPropertyFeatures.FEATURE_ADD_PROPERTY *(breaking)*
+* TINKERPOP-1116 Some anonymous traversal steps can be hard typed. *(breaking)*
+* TINKERPOP-1130 Each release should store Kryo/GraphSON/GraphML versions to ensure future compatibility *(breaking)*
+* TINKERPOP-1142 Remove deprecated valueIncr, valueDecr, keyIncr, keyDecr. *(breaking)*
+* TINKERPOP-1169 Remove deprecated TraversalScriptFunction and TraversalScriptHelper *(breaking)*
+* TINKERPOP-1170 Remove deprecated ConfigurationTraversal. *(breaking)*
+* TINKERPOP-1171 Remove deprecated TraversalSource.Builder *(breaking)*
+* TINKERPOP-1235 Remove deprecated ProcessPerformanceSuite and TraversalPerformanceTest *(breaking)*
+* TINKERPOP-1275 Remove deprecated max setting for :remote *(breaking)*
+* TINKERPOP-1283 Remove deprecated ScriptExecutor *(breaking)*
+* TINKERPOP-1289 Remove deprecated ConnectiveP, AndP, and OrP constructors. *(breaking)*
+* TINKERPOP-1291 Remove deprecated mapValues and mapKeys methods *(breaking)*
+* TINKERPOP-1313 Rename RangeByIsCountStrategy *(breaking)*
+* TINKERPOP-1316 Remove deprecated constructor from GryoMessageSerializers *(breaking)*
+* TINKERPOP-1327 Bring GryoRegistrator to the forefront and deprecate GryoSerializer *(breaking)*
+* TINKERPOP-1363 Cleanup Docker build script for next major release *(breaking)*
+* TINKERPOP-1369 Replace REST API with HTTP API
+* TINKERPOP-1389 Support Spark 2.0.0
+* TINKERPOP-1399 NumberHelper needs to go into util and have a private constructor *(breaking)*
+* TINKERPOP-1404 Path/label optimization
+* TINKERPOP-1408 Remove Deprecated Io.Builder.registry() *(breaking)*
+* TINKERPOP-1414 Change default GraphSON version to 3.0 *(breaking)*
+* TINKERPOP-1420 Remove deprecated ConcurrentBindings in gremlin-groovy *(breaking)*
+* TINKERPOP-1421 Remove deprecated ControlOps *(breaking)*
+* TINKERPOP-1427 GraphSON 3.0 needs collection types and consistent number typing.
+* TINKERPOP-1443 Use an API checker during build
+* TINKERPOP-1445 Large nested VertexProperties and Properties do not get printed well
+* TINKERPOP-1454 Create Serializers for Graph objects in Gremlin-Python
+* TINKERPOP-1481 Remove deprecated reconnectInitialDelay in Java driver *(breaking)*
+* TINKERPOP-1485 Move source for TinkerPop site to source code repo
+* TINKERPOP-1506 Optional/Coalesce should not allow sideEffect traversals.
+* TINKERPOP-1514 Restructure for gremlin-tools module *(breaking)*
+* TINKERPOP-1524 Bytecode.getXXXInstructions should return a List, not Iterable.
+* TINKERPOP-1526 Remove deprecated Session kill() overloads *(breaking)*
+* TINKERPOP-1536 Include GLVs in Docker build
+* TINKERPOP-1541 Select should default to Pop.last semantics *(breaking)*
+* TINKERPOP-1549 Implement skip()
+* TINKERPOP-1550 Make Graphite and Ganglia optional dependencies
+* TINKERPOP-1563 Remove deprecated getInstance() methods *(breaking)*
+* TINKERPOP-1565 Setup GraphSON 3.0
+* TINKERPOP-1566 Kerberos authentication for gremlin-server
+* TINKERPOP-1574 Get rid of untyped GraphSON in 3.0
+* TINKERPOP-1603 Remove support for SASL byte array in protocol *(breaking)*
+* TINKERPOP-1612 Remove gremlin-groovy-test module *(breaking)*
+* TINKERPOP-1621 Remove deprecated GremlnPlugin and related infrastructure *(breaking)*
+* TINKERPOP-1622 Remove deprecated G functions in gremlin-groovy *(breaking)*
+* TINKERPOP-1651 Remove deprecated gremlin.sh init syntax *(breaking)*
+* TINKERPOP-1686 Make TraversalMetrics thread safe *(breaking)*
+* TINKERPOP-1698 Gryo 3.0
+* TINKERPOP-1699 Remove deprecated userMapperFromGraph *(breaking)*
+* TINKERPOP-1700 Remove deprecated embedTypes option
+* TINKERPOP-1706 Remove deprecated ScriptEngineCache and related dead code *(breaking)*
+* TINKERPOP-1715 Bump to Spark 2.2
+* TINKERPOP-1719 Remove deprecated Traversal related code *(breaking)*
+* TINKERPOP-1720 Remove deprecated Hadoop code *(breaking)*
+* TINKERPOP-1721 Remove deprecated Bindings related code *(breaking)*
+* TINKERPOP-1724 Remove deprecated ScriptElementFactory
+* TINKERPOP-1729 Remove deprecated select steps.
+* TINKERPOP-1740 Add vertex parameter overload to to() and from()
+* TINKERPOP-1747 Streamline inheritance for gremlin-python GraphSON serializer classes
+
== TinkerPop 3.2.0 (Nine Inch Gremlins)
image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/images/nine-inch-gremlins.png[width=185]
@@@ -275,7 -26,7 +275,8 @@@
* Added the "Kitchen Sink" test data set.
* Fixed a bug in `NumberHelper` that led to wrong min/max results if numbers exceeded the Integer limits.
* Delayed setting of the request identifier until `RequestMessage` construction by the builder.
+* `ReferenceElement` avoids `UnsupportedOperationException` handling in construction thus improving performance.
+ * Improved error messaging for failed serialization and deserialization of request/response messages.
* Removed hardcoded expectation in metrics serialization test suite as different providers may have different outputs.
* Added `IndexedTraverserSet` which indexes on the value of a `Traverser` thus improving performance when used.
* Utilized `IndexedTraverserSet` in `TraversalVertexProgram` to avoid extra iteration when doing `Vertex` lookups.
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8c079598/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGraphSONMessageSerializerV2d0.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/8c079598/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/AbstractGryoMessageSerializerV1d0.java
----------------------------------------------------------------------