lgbo-ustc commented on code in PR #13470:
URL: https://github.com/apache/gluten/pull/13470#discussion_r4395898368
##########
gluten-flink/runtime/src/main/java/org/apache/gluten/util/LogicalTypeConverter.java:
##########
@@ -117,6 +118,13 @@ private interface VLTypeConverter {
Map.entry(
TinyIntType.class,
logicalType -> new
io.github.zhztheplayer.velox4j.type.TinyIntType()),
+ // Map Flink's `TIME` type to the velox `INTEGER` type: Flink
carries a
+ // TIME(p) field in RowData as an int of milliseconds of day, so
INTEGER
+ // is the isomorphic carrier (the exact RowData representation);
velox
+ // itself has no TIME type.
+ // TODO: support FLINK TIME type
+ Map.entry(
+ TimeType.class, logicalType -> new
io.github.zhztheplayer.velox4j.type.IntegerType()),
Review Comment:
This maps every Flink TimeType to Velox INTEGER, so the bridge preserves the
RowData carrier for direct projection but loses TIME semantics for all other
expressions. For example, EXTRACT(HOUR FROM LOCALTIME), TIME comparisons, TIME
arithmetic, and CAST to VARCHAR may either fail against Velox signatures or
expose the integer carrier. Please either add coverage for the supported TIME
expression surface or reject unsupported operations explicitly instead of
silently treating TIME as INTEGER.
--
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]