Hi everyone, I would like to start a discussion on the proposal for Native Bitmap Integration & Stateless Pushdown Aggregation.
This proposal enables end-to-end native support for the BITMAP type in Fluss and integrates it with the existing aggregation merge engine to support server-side bitmap union pushdown. The goal is to reduce network transfer and offload DISTINCT-style aggregation from Flink to the TabletServer. Key highlights of the proposal include: - Type System: Promoting BITMAP to a first-class logical type. - UDF Suite: Introducing BITMAP_BUILD, BITMAP_OR_AGG, and BITMAP_CARDINALITY (aligned with FLIP-556 and StarRocks semantics). - Optimizer: Planner-based pushdown via applyAggregates in the Flink connector. - Safety: No changes to LogRecordBatch or WAL, making this strictly additive and migration-free. You can find the full proposal document here: https://docs.google.com/document/d/1sDhfkmo-w-UTvo2n3rsY1lytSSryswfkI83cSdka8s0/edit?usp=sharing I would appreciate feedback on the public interfaces, pushdown constraints, and overall scope. Best regards, Prajwal Banakar
