This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git commit 4bbcd55df0b921a24e41fe47ba55516928ed767b Merge: f821ba2 4a32107 Author: stephen mallette AuthorDate: Tue Jan 1 08:25:00 2019 -0500 Merge pull request #1000 from apache/TINKERPOP-1942 TINKERPOP-1942 New Binary Serialization Format CHANGELOG.asciidoc | 1 + docs/src/dev/io/graphbinary.asciidoc | 771 +++++++++++++++++++++ docs/src/dev/io/index.asciidoc | 2 + docs/src/reference/gremlin-applications.asciidoc | 50 +- docs/src/reference/gremlin-variants.asciidoc | 16 +- docs/src/upgrade/release-3.4.x.asciidoc | 18 + .../traversal/strategy/TraversalStrategyProxy.java | 18 +- .../structure/util/reference/ReferenceEdge.java | 6 + .../structure/util/reference/ReferenceElement.java | 5 + .../util/reference/ReferenceProperty.java | 6 + .../structure/util/reference/ReferenceVertex.java | 4 + .../util/reference/ReferenceVertexProperty.java | 7 + gremlin-driver/pom.xml | 17 +- .../driver/ser/AbstractMessageSerializer.java | 2 +- .../driver/ser/GraphBinaryMessageSerializerV1.java | 161 +++++ .../tinkerpop/gremlin/driver/ser/SerTokens.java | 1 + .../tinkerpop/gremlin/driver/ser/Serializers.java | 3 + .../gremlin/driver/ser/binary/DataType.java | 131 ++++ .../gremlin/driver/ser/binary/GraphBinaryIo.java | 61 ++ .../driver/ser/binary/GraphBinaryReader.java | 77 ++ .../driver/ser/binary/GraphBinaryWriter.java | 121 ++++ .../ser/binary/RequestMessageSerializer.java | 60 ++ .../ser/binary/ResponseMessageSerializer.java | 67 ++ .../gremlin/driver/ser/binary/TypeSerializer.java | 58 ++ .../driver/ser/binary/TypeSerializerRegistry.java | 371 ++++++++++ .../ser/binary/types/BigDecimalSerializer.java | 54 ++ .../ser/binary/types/BigIntegerSerializer.java | 51 ++ .../driver/ser/binary/types/BindingSerializer.java | 52 ++ .../driver/ser/binary/types/BulkSetSerializer.java | 65 ++ .../ser/binary/types/ByteBufferSerializer.java | 51 ++ .../ser/binary/types/ByteCodeSerializer.java | 99 +++ .../driver/ser/binary/types/CharSerializer.java | 68 ++ .../driver/ser/binary/types/ClassSerializer.java | 47 ++ .../ser/binary/types/CollectionSerializer.java | 60 ++ .../ser/binary/types/CustomTypeSerializer.java | 35 + .../driver/ser/binary/types/DateSerializer.java | 55 ++ .../ser/binary/types/DurationSerializer.java | 47 ++ .../driver/ser/binary/types/EdgeSerializer.java | 81 +++ .../driver/ser/binary/types/EnumSerializer.java | 74 ++ .../driver/ser/binary/types/GraphSerializer.java | 209 ++++++ .../ser/binary/types/InetAddressSerializer.java | 57 ++ .../driver/ser/binary/types/InstantSerializer.java | 47 ++ .../driver/ser/binary/types/LambdaSerializer.java | 62 ++ .../driver/ser/binary/types/ListSerializer.java | 47 ++ .../ser/binary/types/LocalDateSerializer.java | 47 ++ .../ser/binary/types/LocalDateTimeSerializer.java | 54 ++ .../ser/binary/types/LocalTimeSerializer.java | 47 ++ .../ser/binary/types/MapEntrySerializer.java | 51 ++ .../driver/ser/binary/types/MapSerializer.java | 63 ++ .../driver/ser/binary/types/MetricsSerializer.java | 68 ++ .../ser/binary/types/MonthDaySerializer.java | 47 ++ .../ser/binary/types/OffsetDateTimeSerializer.java | 55 ++ .../ser/binary/types/OffsetTimeSerializer.java | 55 ++ .../driver/ser/binary/types/PSerializer.java | 135 ++++ .../driver/ser/binary/types/PathSerializer.java | 68 ++ .../driver/ser/binary/types/PeriodSerializer.java | 47 ++ .../ser/binary/types/PropertySerializer.java | 60 ++ .../driver/ser/binary/types/SetSerializer.java | 47 ++ .../ser/binary/types/SimpleTypeSerializer.java | 103 +++ .../ser/binary/types/SingleTypeSerializer.java | 77 ++ .../driver/ser/binary/types/StringSerializer.java | 46 ++ .../ser/binary/types/TransformSerializer.java | 28 + .../types/TraversalExplanationSerializer.java | 85 +++ .../binary/types/TraversalStrategySerializer.java | 73 ++ .../ser/binary/types/TraverserSerializer.java | 54 ++ .../driver/ser/binary/types/TreeSerializer.java | 61 ++ .../driver/ser/binary/types/UUIDSerializer.java | 46 ++ .../ser/binary/types/VertexPropertySerializer.java | 70 ++ .../driver/ser/binary/types/VertexSerializer.java | 62 ++ .../ser/binary/types/YearMonthSerializer.java | 47 ++ .../ser/binary/types/ZoneOffsetSerializer.java | 48 ++ .../ser/binary/types/ZonedDateTimeSerializer.java | 55 ++ .../binary/GraphBinaryMessageSerializerV1Test.java | 144 ++++ .../GraphBinaryReaderWriterRoundTripTest.java | 267 +++++++ .../ser/binary/TypeSerializerRegistryTest.java | 123 ++++ .../ser/binary/types/CharSerializerTest.java | 70 ++ .../ser/binary/types/sample/SamplePerson.java | 46 ++ .../types/sample/SamplePersonSerializer.java | 103 +++ .../types/sample/SamplePersonSerializerTest.java | 100 +++ gremlin-server/conf/gremlin-server-classic.yaml | 1 + gremlin-server/conf/gremlin-server-modern-py.yaml | 7 +- .../conf/gremlin-server-modern-readonly.yaml | 7 +- gremlin-server/conf/gremlin-server-modern.yaml | 7 +- gremlin-server/conf/gremlin-server-neo4j.yaml | 1 + gremlin-server/conf/gremlin-server-secure.yaml | 1 + gremlin-server/conf/gremlin-server-spark.yaml | 1 + gremlin-server/conf/gremlin-server.yaml | 1 + .../gremlin/server/AbstractChannelizer.java | 4 +- .../remote/GraphBinaryRemoteGraphProvider.java | 30 + .../GraphBinaryRemoteGraphProcessStandardTest.java | 33 + .../gremlin/server/GremlinDriverIntegrateTest.java | 16 + .../gremlin/server/gremlin-server-integration.yaml | 1 + gremlin-tools/gremlin-benchmark/pom.xml | 5 + .../gremlin/driver/SerializationBenchmark.java | 125 ++++ 94 files changed, 6050 insertions(+), 37 deletions(-)