[FLINK-39186][table] Add core built-in scalar functions for BITMAP#27817
[FLINK-39186][table] Add core built-in scalar functions for BITMAP#27817lincoln-lil merged 6 commits intoapache:masterfrom
Conversation
34083d6 to
24fd357
Compare
lincoln-lil
left a comment
There was a problem hiding this comment.
@dylanhz Well done!These bitmap functions followed the api design and have complete documentation. Only some minor comments that don't block merging.
Btw, it would be nice to have an explicit round-trip test chaining BITMAP_BUILD → BITMAP_TO_BYTES → BITMAP_FROM_BYTES → BITMAP_TO_ARRAY in a single expression, an end-to-end chain would catch any subtle serialization asymmetry.
...ntime/src/main/java/org/apache/flink/table/runtime/functions/scalar/BitmapBuildFunction.java
Outdated
Show resolved
Hide resolved
...ime/src/main/java/org/apache/flink/table/runtime/functions/scalar/BitmapToArrayFunction.java
Outdated
Show resolved
Hide resolved
…NOT, BITMAP_OR, BITMAP_XOR
@lincoln-lil Thanks for the feedback! The updates have been amended to the corresponding commits:
|
What is the purpose of the change
This is the fourth PR for FLIP-556, following #27778.
This PR introduces built-in scalar functions for the BITMAP type, BITMAP literal support in Table API, and comprehensive BITMAP cast tests.
Brief change log
BITMAP_BUILD,BITMAP_FROM_BYTES,BITMAP_TO_BYTES,BITMAP_TO_ARRAY,BITMAP_TO_STRING,BITMAP_CARDINALITY,BITMAP_AND,BITMAP_ANDNOT,BITMAP_OR,BITMAP_XORBITMAP_FROM_BYTES(serialized_bytes)inApiExpressionUtilsCastFunctionITCaseandCastFunctionMiscITCaseVerifying this change
This change added tests and can be verified as follows:
BitmapFunctionsITCase: Integration tests for all 10 functions covering null handling, boundary values, runtime errors, and validation errorsCastFunctionITCase/CastFunctionMiscITCase: BITMAP cast it cases covering all logical types and truncation/padding behaviorDoes this pull request potentially affect one of the following parts:
@Public(Evolving): yes (BaseExpressions)Documentation