From a34f08bf7551e79724fb2b224a0fdbabe4d70f84 Mon Sep 17 00:00:00 2001 From: Yuxuan 'fishy' Wang Date: Thu, 10 Aug 2023 08:54:54 -0700 Subject: [PATCH] THRIFT-5653: Fix Java UUID typeid It should be 16 not 17 according to the spec. Currently ENUM holds 16, it's not in TBinaryProtocol spec and seems to be a Java implementation detail somehow got mixed inside TType, move that to 255 for now. Someone more familiar with Java can probably remove it from TType completely in the future. client: java --- .../src/main/java/org/apache/thrift/protocol/TType.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/java/src/main/java/org/apache/thrift/protocol/TType.java b/lib/java/src/main/java/org/apache/thrift/protocol/TType.java index 5a64e4278f3..d2f2e48d909 100644 --- a/lib/java/src/main/java/org/apache/thrift/protocol/TType.java +++ b/lib/java/src/main/java/org/apache/thrift/protocol/TType.java @@ -34,6 +34,9 @@ public final class TType { public static final byte MAP = 13; public static final byte SET = 14; public static final byte LIST = 15; - public static final byte ENUM = 16; - public static final byte UUID = 17; + public static final byte UUID = 16; + + // This is not part of the TBinaryProtocol spec but Java specific + // implementation detail. + public static final byte ENUM = 255; }