TheR1sing3un opened a new pull request, #7952:
URL: https://github.com/apache/paimon/pull/7952

   ### Purpose
   
   Port Java's `AggregateMergeFunction` to pypaimon, following the shape of 
#7745.
   
   Ships the `FieldAggregator` framework, 9 value aggregators (`sum` / `max` / 
`min` / `last_value` / `last_non_null_value` / `first_value` / 
`first_non_null_value` / `bool_or` / `bool_and`) plus the `primary_key` 
placeholder, the `AggregateMergeFunction` wired into 
`MergeFileSplitRead._build_merge_function`, and a `merge_engine_support` guard 
that rejects retract opt-ins, sequence fields and out-of-scope aggregator 
identifiers (`collect` / `nested_update` / `theta_sketch` / `roaring_bitmap_*` 
/ ...).
   
   Retract handling (DELETE / UPDATE_BEFORE) and the remaining 14 Java 
aggregators are intentionally deferred to follow-up PRs, mirroring #7745's 
scoping.
   
   ### Tests
   
   - Unit: `test_field_aggregator_registry.py`, `test_field_aggregators.py`, 
`test_aggregation_merge_function.py`
   - E2E: `test_aggregation_e2e.py` covers positive merges (sum across commits, 
mixed aggregators, null semantics, disjoint keys, default aggregator) plus the 
unsupported-option guard.


-- 
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]

Reply via email to