zeroshade opened a new pull request, #1278:
URL: https://github.com/apache/arrow-go/pull/1278

   ### Rationale for this change
   
   `WrapResults` selects between result delivery and context cancellation. When 
cancellation and channel closure become ready together, the channel branch can 
win and return a partial result from a canceled `CallFunction`. This has caused 
intermittent failures of the caller-cancellation tests on Windows, macOS, and 
release verification.
   
   ### What changes are included in this PR?
   
   - Discard and release scalar and vector partial outputs on cancellation
   - Recheck cancellation after receiving output or channel closure
   - Add direct coverage for releasing a single scalar output
   - Release unexpected results in cancellation tests so regressions report the 
primary assertion rather than a secondary allocator leak
   
   ### Are these changes tested?
   
   - `go test ./arrow/compute -run 
'Test(ScalarExecutorWrapResults|CallFunctionPreservesCallerCancellation)' 
-count=100`
   - `go test ./arrow/compute`
   - pre-commit hooks
   
   ### Are there any user-facing changes?
   
   Canceled compute calls now deterministically return no result instead of 
occasionally returning a partial result.
   


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