This is an automated email from the ASF dual-hosted git repository. kenhuuu pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit 974bbdb3c166c5aaf8f253179f78fc2bbc3554cf Author: Ken Hu <[email protected]> AuthorDate: Wed Jun 24 17:52:25 2026 -0700 Remove obsolete GType GraphBinary4 serialization CTR GType doesn't exist in GraphBinaryV4 so this was just a bit of cleanup for code that was carried over from the 3.x line. Assisted-by: Claude Code:claude-opus-4-8 --- .../gremlin/structure/io/binary/DataType.java | 1 - .../structure/io/binary/TypeSerializerRegistry.java | 1 - .../structure/io/binary/types/EnumSerializer.java | 2 -- gremlin-go/driver/graphBinaryDeserializer.go | 4 +--- gremlin-go/driver/graphBinaryDeserializer_test.go | 20 -------------------- gremlin-go/driver/graphBinarySerializer.go | 3 --- gremlin-go/driver/serializer.go | 3 --- .../gremlin_python/structure/io/graphbinaryV4.py | 8 +------- 8 files changed, 2 insertions(+), 40 deletions(-) diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/binary/DataType.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/binary/DataType.java index 6ca99db840..e2af7911ac 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/binary/DataType.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/binary/DataType.java @@ -53,7 +53,6 @@ public enum DataType { BOOLEAN(0x27), BULKSET(0X2A), // todo: TREE(0X2B), - GTYPE(0x30), CHAR(0X80), DURATION(0X81), diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/binary/TypeSerializerRegistry.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/binary/TypeSerializerRegistry.java index c0a3234aac..8b35c2e43a 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/binary/TypeSerializerRegistry.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/binary/TypeSerializerRegistry.java @@ -20,7 +20,6 @@ package org.apache.tinkerpop.gremlin.structure.io.binary; import org.apache.tinkerpop.gremlin.process.traversal.Merge; import org.apache.tinkerpop.gremlin.process.traversal.Path; -import org.apache.tinkerpop.gremlin.process.traversal.GType; import org.apache.tinkerpop.gremlin.process.traversal.step.util.BulkSet; import org.apache.tinkerpop.gremlin.process.traversal.step.util.Tree; import org.apache.tinkerpop.gremlin.process.traversal.util.TraversalExplanation; diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/binary/types/EnumSerializer.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/binary/types/EnumSerializer.java index ae1d1249e4..65f21e4552 100644 --- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/binary/types/EnumSerializer.java +++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/binary/types/EnumSerializer.java @@ -26,7 +26,6 @@ import org.apache.tinkerpop.gremlin.process.traversal.Pick; import org.apache.tinkerpop.gremlin.process.traversal.Pop; import org.apache.tinkerpop.gremlin.process.traversal.SackFunctions; import org.apache.tinkerpop.gremlin.process.traversal.Scope; -import org.apache.tinkerpop.gremlin.process.traversal.GType; import org.apache.tinkerpop.gremlin.structure.io.binary.DataType; import org.apache.tinkerpop.gremlin.structure.io.binary.GraphBinaryReader; import org.apache.tinkerpop.gremlin.structure.io.binary.GraphBinaryWriter; @@ -49,7 +48,6 @@ public class EnumSerializer<E extends Enum> extends SimpleTypeSerializer<E> { public static final EnumSerializer<Direction> DirectionSerializer = new EnumSerializer<>(DataType.DIRECTION, Direction::valueOf); public static final EnumSerializer<T> TSerializer = new EnumSerializer<>(DataType.T, T::valueOf); public static final EnumSerializer<Merge> MergeSerializer = new EnumSerializer<>(DataType.MERGE, Merge::valueOf); - public static final EnumSerializer<GType> GTypeSerializer = new EnumSerializer<>(DataType.GTYPE, GType::valueOf); private final Function<String, E> readFunc; diff --git a/gremlin-go/driver/graphBinaryDeserializer.go b/gremlin-go/driver/graphBinaryDeserializer.go index 6b06bc6e33..1d5b5bda09 100644 --- a/gremlin-go/driver/graphBinaryDeserializer.go +++ b/gremlin-go/driver/graphBinaryDeserializer.go @@ -274,7 +274,7 @@ func (d *GraphBinaryDeserializer) readValue(dt dataType, flag byte) (interface{} return Of(b) case byteBuffer: return d.readByteBuffer() - case tType, directionType, mergeType, gTypeType: + case tType, directionType, mergeType: return d.readEnum(dt) case compositePDTType: return d.readCompositePDT() @@ -802,8 +802,6 @@ func (d *GraphBinaryDeserializer) readEnum(dt dataType) (interface{}, error) { return direction(s), nil case mergeType: return merge(s), nil - case gTypeType: - return gType(s), nil default: return s, nil } diff --git a/gremlin-go/driver/graphBinaryDeserializer_test.go b/gremlin-go/driver/graphBinaryDeserializer_test.go index 044da9a877..7e777b6685 100644 --- a/gremlin-go/driver/graphBinaryDeserializer_test.go +++ b/gremlin-go/driver/graphBinaryDeserializer_test.go @@ -453,26 +453,6 @@ func TestGraphBinaryDeserializerComplexTypes(t *testing.T) { assert.Equal(t, "matched", m[Merge.OnMatch], "Merge.OnMatch key should survive round-trip") }) - t.Run("round-trip map with GType enum keys preserves types", func(t *testing.T) { - original := map[interface{}]interface{}{ - GType.Int: "integer", - GType.String: "string", - } - - var buf bytes.Buffer - ser := newGraphBinarySerializer(newLogHandler(&defaultLogger{}, Error, language.English)) - err := ser.ser.write(original, &buf) - assert.Nil(t, err) - - d := NewGraphBinaryDeserializer(&buf) - val, err := d.ReadFullyQualified() - assert.Nil(t, err) - - m := val.(map[interface{}]interface{}) - assert.Equal(t, "integer", m[GType.Int], "GType.Int key should survive round-trip") - assert.Equal(t, "string", m[GType.String], "GType.String key should survive round-trip") - }) - t.Run("reads list of integers from chunked stream", func(t *testing.T) { // List type split across chunks chunk1 := []byte{ diff --git a/gremlin-go/driver/graphBinarySerializer.go b/gremlin-go/driver/graphBinarySerializer.go index c1ec27b674..5da2327d49 100644 --- a/gremlin-go/driver/graphBinarySerializer.go +++ b/gremlin-go/driver/graphBinarySerializer.go @@ -62,7 +62,6 @@ const ( shortType dataType = 0x26 booleanType dataType = 0x27 mergeType dataType = 0x2e - gTypeType dataType = 0x30 durationType dataType = 0x81 compositePDTType dataType = 0xf0 markerType dataType = 0xfd @@ -615,8 +614,6 @@ func (serializer *graphBinaryTypeSerializer) getType(val interface{}) (dataType, return tType, nil case merge: return mergeType, nil - case gType: - return gTypeType, nil case *BigDecimal, BigDecimal: return bigDecimalType, nil case *ByteBuffer, ByteBuffer: diff --git a/gremlin-go/driver/serializer.go b/gremlin-go/driver/serializer.go index 509d51657f..2a69942f96 100644 --- a/gremlin-go/driver/serializer.go +++ b/gremlin-go/driver/serializer.go @@ -203,7 +203,6 @@ func initSerializers() { datetimeType: dateTimeWriter, durationType: durationWriter, directionType: enumWriter, - gTypeType: enumWriter, tType: enumWriter, mergeType: enumWriter, mapType: mapWriter, @@ -214,5 +213,3 @@ func initSerializers() { compositePDTType: pdtWriter, } } - - diff --git a/gremlin-python/src/main/python/gremlin_python/structure/io/graphbinaryV4.py b/gremlin-python/src/main/python/gremlin_python/structure/io/graphbinaryV4.py index c6098619ce..41843a33eb 100644 --- a/gremlin-python/src/main/python/gremlin_python/structure/io/graphbinaryV4.py +++ b/gremlin-python/src/main/python/gremlin_python/structure/io/graphbinaryV4.py @@ -27,7 +27,7 @@ from datetime import datetime, timedelta, timezone from struct import pack, unpack from aenum import Enum -from gremlin_python.process.traversal import Direction, T, Merge, GType +from gremlin_python.process.traversal import Direction, T, Merge from gremlin_python.statics import FloatType, BigDecimal, ShortType, IntType, LongType, BigIntType, \ DictType, SetType, SingleByte, SingleChar from gremlin_python.structure.graph import Graph, Edge, Property, Vertex, VertexProperty, Path, ProviderDefinedType, \ @@ -71,7 +71,6 @@ class DataType(Enum): short = 0x26 boolean = 0x27 tree = 0x2b # not supported - no tree object in Python yet - gtype = 0x30 char = 0x80 duration = 0x81 composite_pdt = 0xf0 @@ -851,11 +850,6 @@ class MergeIO(_EnumIO): python_type = Merge -class GTYPEIO(_EnumIO): - graphbinary_type = DataType.gtype - python_type = GType - - class ByteIO(_GraphBinaryTypeIO): python_type = SingleByte graphbinary_type = DataType.byte
