This is an automated email from the ASF dual-hosted git repository. jorgebg pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git.
from 172b77b Merge pull request #1211 from apache/TINKERPOP-1568 add 344b737 TINKERPOP-2305 Introduce Buffer interface add a76cf5d TINKERPOP-2305 Refactor serialization method signatures add 6e10bde TINKERPOP-2035 Move to gremlin-core add 5c2cb9f TINKERPOP-2035 Add utility methods to read/write from Netty buffer add c2108bb TINKERPOP-2035 Fix gremlin-io-test and declare params as final add 2b9f40e Merge branch 'TINKERPOP-2305' into tp34 new d0838e2 Merge branch 'tp34' The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: 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 | 24 +- .../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(+), 579 deletions(-) create mode 100644 gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Buffer.java copy gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/binary/types/CustomTypeSerializer.java => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/BufferFactory.java (66%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/DataType.java (96%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/GraphBinaryIo.java (93%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/GraphBinaryReader.java (89%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/GraphBinaryWriter.java (81%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/TypeSerializer.java (70%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/TypeSerializerRegistry.java (96%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/BigDecimalSerializer.java (69%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/BigIntegerSerializer.java (68%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/BindingSerializer.java (71%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/BulkSetSerializer.java (70%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/ByteBufferSerializer.java (67%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/ByteCodeSerializer.java (73%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/CharSerializer.java (75%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/ClassSerializer.java (66%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/CollectionSerializer.java (69%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/CustomTypeSerializer.java (88%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/DateSerializer.java (75%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/DurationSerializer.java (66%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/EdgeSerializer.java (82%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/EnumSerializer.java (84%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/GraphSerializer.java (87%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/InetAddressSerializer.java (68%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/InstantSerializer.java (66%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/LambdaSerializer.java (75%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/ListSerializer.java (67%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/LocalDateSerializer.java (67%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/LocalDateTimeSerializer.java (72%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/LocalTimeSerializer.java (65%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/MapEntrySerializer.java (62%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/MapSerializer.java (71%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/MetricsSerializer.java (80%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/MonthDaySerializer.java (66%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/OffsetDateTimeSerializer.java (73%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/OffsetTimeSerializer.java (70%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/PSerializer.java (88%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/PathSerializer.java (75%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/PeriodSerializer.java (66%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/PropertySerializer.java (72%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/SetSerializer.java (67%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/SimpleTypeSerializer.java (63%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/SingleTypeSerializer.java (59%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/StringSerializer.java (72%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/TransformSerializer.java (88%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/TraversalExplanationSerializer.java (81%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/TraversalMetricsSerializer.java (75%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/TraversalStrategySerializer.java (80%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/TraverserSerializer.java (70%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/TreeSerializer.java (70%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/UUIDSerializer.java (68%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/VertexPropertySerializer.java (79%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/VertexSerializer.java (72%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/YearMonthSerializer.java (66%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/ZoneOffsetSerializer.java (65%) rename {gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser => gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io}/binary/types/ZonedDateTimeSerializer.java (73%) create mode 100644 gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/NettyBuffer.java create mode 100644 gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/NettyBufferFactory.java create mode 100644 gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/driver/ser/NettyBufferFactoryTest.java