You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by jo...@apache.org on 2019/11/07 09:18:29 UTC
[tinkerpop] 01/01: Merge branch 'TINKERPOP-2305' into tp34
This is an automated email from the ASF dual-hosted git repository.
jorgebg pushed a commit to branch tp34
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit 2b9f40efb1da6b9ab22e3ffbe700759f4156ec9a
Merge: 47e25aa c2108bb
Author: Jorge Bay Gondra <jo...@gmail.com>
AuthorDate: Thu Nov 7 10:07:14 2019 +0100
Merge branch 'TINKERPOP-2305' into tp34
CHANGELOG.asciidoc | 6 +
docs/src/upgrade/release-3.4.x.asciidoc | 25 ++
.../tinkerpop/gremlin/structure/io/Buffer.java | 250 +++++++++++++
.../gremlin/structure/io/BufferFactory.java | 21 +-
.../gremlin/structure/io}/binary/DataType.java | 5 +-
.../structure/io}/binary/GraphBinaryIo.java | 5 +-
.../structure/io}/binary/GraphBinaryReader.java | 15 +-
.../structure/io}/binary/GraphBinaryWriter.java | 30 +-
.../structure/io}/binary/TypeSerializer.java | 16 +-
.../io}/binary/TypeSerializerRegistry.java | 18 +-
.../io}/binary/types/BigDecimalSerializer.java | 16 +-
.../io}/binary/types/BigIntegerSerializer.java | 16 +-
.../io}/binary/types/BindingSerializer.java | 17 +-
.../io}/binary/types/BulkSetSerializer.java | 19 +-
.../io}/binary/types/ByteBufferSerializer.java | 16 +-
.../io}/binary/types/ByteCodeSerializer.java | 24 +-
.../structure/io}/binary/types/CharSerializer.java | 17 +-
.../io}/binary/types/ClassSerializer.java | 17 +-
.../io}/binary/types/CollectionSerializer.java | 16 +-
.../io}/binary/types/CustomTypeSerializer.java | 4 +-
.../structure/io}/binary/types/DateSerializer.java | 14 +-
.../io}/binary/types/DurationSerializer.java | 16 +-
.../structure/io}/binary/types/EdgeSerializer.java | 17 +-
.../structure/io}/binary/types/EnumSerializer.java | 16 +-
.../io}/binary/types/GraphSerializer.java | 25 +-
.../io}/binary/types/InetAddressSerializer.java | 18 +-
.../io}/binary/types/InstantSerializer.java | 16 +-
.../io}/binary/types/LambdaSerializer.java | 17 +-
.../structure/io}/binary/types/ListSerializer.java | 16 +-
.../io}/binary/types/LocalDateSerializer.java | 16 +-
.../io}/binary/types/LocalDateTimeSerializer.java | 16 +-
.../io}/binary/types/LocalTimeSerializer.java | 16 +-
.../io}/binary/types/MapEntrySerializer.java | 18 +-
.../structure/io}/binary/types/MapSerializer.java | 16 +-
.../io}/binary/types/MetricsSerializer.java | 16 +-
.../io}/binary/types/MonthDaySerializer.java | 16 +-
.../io}/binary/types/OffsetDateTimeSerializer.java | 16 +-
.../io}/binary/types/OffsetTimeSerializer.java | 16 +-
.../structure/io}/binary/types/PSerializer.java | 24 +-
.../structure/io}/binary/types/PathSerializer.java | 16 +-
.../io}/binary/types/PeriodSerializer.java | 16 +-
.../io}/binary/types/PropertySerializer.java | 17 +-
.../structure/io}/binary/types/SetSerializer.java | 16 +-
.../io}/binary/types/SimpleTypeSerializer.java | 33 +-
.../io}/binary/types/SingleTypeSerializer.java | 36 +-
.../io}/binary/types/StringSerializer.java | 14 +-
.../io}/binary/types/TransformSerializer.java | 4 +-
.../types/TraversalExplanationSerializer.java | 18 +-
.../binary/types/TraversalMetricsSerializer.java | 16 +-
.../binary/types/TraversalStrategySerializer.java | 16 +-
.../io}/binary/types/TraverserSerializer.java | 17 +-
.../structure/io}/binary/types/TreeSerializer.java | 17 +-
.../structure/io}/binary/types/UUIDSerializer.java | 14 +-
.../io}/binary/types/VertexPropertySerializer.java | 17 +-
.../io}/binary/types/VertexSerializer.java | 17 +-
.../io}/binary/types/YearMonthSerializer.java | 16 +-
.../io}/binary/types/ZoneOffsetSerializer.java | 16 +-
.../io}/binary/types/ZonedDateTimeSerializer.java | 16 +-
.../driver/ser/GraphBinaryMessageSerializerV1.java | 10 +-
.../tinkerpop/gremlin/driver/ser/NettyBuffer.java | 267 ++++++++++++++
.../gremlin/driver/ser/NettyBufferFactory.java | 114 ++++++
.../ser/binary/RequestMessageSerializer.java | 58 +++-
.../ser/binary/ResponseMessageSerializer.java | 65 ++--
.../gremlin/driver/ser/NettyBufferFactoryTest.java | 385 +++++++++++++++++++++
.../binary/GraphBinaryMessageSerializerV1Test.java | 1 +
.../GraphBinaryReaderWriterRoundTripTest.java | 8 +-
.../ser/binary/TypeSerializerFailureTests.java | 11 +-
.../ser/binary/TypeSerializerRegistryTest.java | 29 +-
.../ser/binary/types/CharSerializerTest.java | 23 +-
.../types/sample/SamplePersonSerializer.java | 19 +-
.../types/sample/SamplePersonSerializerTest.java | 25 +-
.../driver/GraphBinaryReaderWriterBenchmark.java | 29 +-
.../gremlin/driver/SerializationBenchmark.java | 2 +-
.../scripts/generate-graphbinary-resources.groovy | 7 +-
.../graphbinary/GraphBinaryCompatibilityTest.java | 21 +-
75 files changed, 1704 insertions(+), 580 deletions(-)
diff --cc CHANGELOG.asciidoc
index c896cd7,8841204..1e159b5
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@@ -20,17 -20,14 +20,23 @@@ limitations under the License
image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/images/avant-gremlin.png[width=185]
+ [[release-3-4-5]]
+ === TinkerPop 3.4.5 (Release Date: NOT OFFICIALLY RELEASED YET)
+
+ * GraphBinary: Introduced our own `Buffer` API as a way to wrap Netty's Buffer API. Moved `GraphBinaryReader`,
+ `GraphBinaryWriter` and `TypeSerializer<T>` to gremlin-core.
+
[[release-3-4-4]]
-=== TinkerPop 3.4.4 (Release Date: NOT OFFICIALLY RELEASED YET)
+=== TinkerPop 3.4.5 (Release Date: NOT OFFICIALLY RELEASED YET)
+
+This release also includes changes from <<release-3-3-10, 3.3.10>>.
+
+* Bump to Netty 4.1.42
+
+[[release-3-4-4]]
+=== TinkerPop 3.4.4 (Release Date: October 14, 2019)
+
+This release also includes changes from <<release-3-3-9, 3.3.9>>.
* Provided support for DSLs by way of remote connections through `AnonymousTraversalSource`.
* Added `elementMap()` step.
diff --cc docs/src/upgrade/release-3.4.x.asciidoc
index d7b14a3,98e1f6c..8fce2e7
--- a/docs/src/upgrade/release-3.4.x.asciidoc
+++ b/docs/src/upgrade/release-3.4.x.asciidoc
@@@ -21,9 -21,34 +21,34 @@@ image::https://raw.githubusercontent.co
*Avant-Gremlin Construction #3 for Theremin and Flowers*
+ == TinkerPop 3.4.5
+
+ *Release Date: NOT OFFICIALLY RELEASED YET*
+
+ Please see the link:https://github.com/apache/tinkerpop/blob/3.4.5/CHANGELOG.asciidoc#release-3-4-5[changelog] for a
+ complete list of all the modifications that are part of this release.
+
+ === Upgrading for Providers
+
+ ==== Graph Driver Providers
+
+ ===== GraphBinary API Change
+
+ In GraphBinary serialization, Java `GraphBinaryReader` and `GraphBinaryWriter`, along with `TypeSerializer<T>`
+ interface now take a `Buffer` instance instead of Netty's `ByteBuf`, that way we avoid exposing Netty's API in our own
+ public API.
+
+ Using our own `Buffer` interface, wrapping Netty's buffer API, allowed us to move `TypeSerializer<T>` implementations,
+ the reader and the writer to `org.apache.tinkerpop.gremlin.structure.io.binary` package in `gremlin-core`.
+
+ Additionally, `GraphBinaryReader` and `GraphBinaryWriter` methods now throw an java's `IOException`, instead of our
+ own `SerializationException`.
+
+ See: link:https://issues.apache.org/jira/browse/TINKERPOP-2305[TINKERPOP-2305]
+
== TinkerPop 3.4.4
-*Release Date: NOT OFFICIALLY RELEASED YET*
+*Release Date: October 14, 2019*
Please see the link:https://github.com/apache/tinkerpop/blob/3.4.4/CHANGELOG.asciidoc#release-3-4-4[changelog] for a complete list of all the modifications that are part of this release.