xiangfu0 commented on code in PR #18876:
URL: https://github.com/apache/pinot/pull/18876#discussion_r3801185674
##########
pinot-common/src/main/java/org/apache/pinot/common/utils/DataSchema.java:
##########
@@ -303,6 +324,16 @@ public RelDataType toType(RelDataTypeFactory typeFactory) {
return typeFactory.createSqlType(SqlTypeName.MAP);
}
},
+ // NOTE: UUID is placed before OBJECT and the array types, shifting their
ordinals by +1 relative to any build that
+ // does not contain this enum constant. This is safe because DataSchema
serialization uses enum names (not ordinals)
+ // via ColumnDataType.name() / ColumnDataType.valueOf(). If ordinal-based
serialization is ever added for
+ // ColumnDataType, UUID must be moved to the end of the enum (as was done
for FieldSpec.DataType.UUID).
+ UUID(BYTES, null) {
Review Comment:
Superseded by the merged UUID result layer (#18871). After the rebase, this
PR contains only UUID 8/8 coverage and documentation; the README now explicitly
requires brokers and servers to be upgraded together before querying UUID
columns.
##########
pinot-common/src/main/proto/expressions.proto:
##########
@@ -44,6 +44,12 @@ enum ColumnDataType {
UNKNOWN = 19;
MAP = 20;
BIG_DECIMAL_ARRAY = 21;
+ // Rolling-upgrade limitation for UUID columns: in a mixed-version
multi-stage query, an older broker/server that
+ // does not know UUID = 22 / UUID_ARRAY = 23 will fail planning with
UnknownEnumValueException when receiving a plan
+ // that includes a UUID literal. Avoid issuing UUID queries until all
brokers and servers are upgraded. See the
+ // matching note on DataSchema.toBytes and
ProtoExpressionToRexExpression#convertColumnDataType.
+ UUID = 22;
Review Comment:
Superseded by the merged multi-stage layer (#18874) and binary UUID
request-literal support (#19155). After the rebase, this PR no longer changes
expressions.proto.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]