cloud-fan opened a new pull request, #57375:
URL: https://github.com/apache/spark/pull/57375

   
   ### What changes were proposed in this pull request?
   
   Followup to https://github.com/apache/spark/pull/57177.
   
   This change makes `CombineInternal` serialize and deserialize the 
placeholder buffer created for
   an empty partition. It encodes a missing item type as a zero-length type 
section and uses a default
   string serde for the necessarily empty sketch.
   
   ### Why are the changes needed?
   
   An untouched `approx_top_k_combine` buffer has no item type. It can 
nevertheless be serialized
   between aggregation stages, where selecting a type-specific serde or 
serializing the type currently
   throws. Preserving the empty placeholder allows the later merge to 
initialize it from real input.
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. `approx_top_k_combine` no longer fails when an empty partition 
contributes an untouched
   placeholder buffer between aggregation stages.
   
   ### How was this patch tested?
   
   Added a regression test to `ApproxTopKSuite` that round-trips an empty 
combine buffer and verifies
   that its missing item type, sketch, and configured size are preserved. The 
staged workflow will run
   the required fail-before and pass-after suite cycle before opening the pull 
request.
   
   ### Was this patch authored or co-authored using generative AI tooling?
   
   Generated-by: Codex (GPT-5)
   
   


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

Reply via email to