fallintoplace opened a new pull request, #2243:
URL: https://github.com/apache/iceberg-go/pull/2243

   ### What
   Reduce allocations in `internal.Difference` when building the result slice.
   
   ### Why
   Large inputs can allocate and copy more than needed while filtering excluded 
values.
   
   ### Implementation
   - Size and fill the result using the input and exclusion counts.
   - Keep the existing output order and filtering behavior.
   
   ### Benchmark
   - Go 1.26.3, Apple M1 Pro, median of 5 runs.
   - 1,024 values, no exclusions: 23.921 → 4.758 µs/op (about 5x), 59,760 → 
18,432 B/op, 12 → 1 allocations.
   - 8,192 values, half excluded: 534.931 → 332.189 µs/op (about 1.6x), 676,392 
→ 458,416 B/op, 61 → 32 allocations.
   - This measures `internal.Difference` directly.
   


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