paleolimbot commented on PR #13635:
URL: https://github.com/apache/arrow/pull/13635#issuecomment-1252320421
I forgot that I created ARROW-17173 for this, which is perhaps a better
place to discuss it. I don't necessarily care what the implementation route is,
but the current path of having Arrow register signal handlers causes
unnecessary interactions with reticulate (which also registers signal handlers)
and the current path of assuming exactly one `StopSource` per cancellable
operation is at odds with the `StopToken` living with the `IOContext`, which
can and should persist across multiple cancellable operations.
In R's case, our stop token's poll method would just be `Poll() { return
SafeCallIntoRVoid([] { cpp11::check_user_interrupt(); }); }`...we happen to
have a way to do this already in R that's poll based (it sounds like Python is
well-suited to the `RequestStop()` approach...that could work too, but if so,
it would work better if the `StopSource` was static instead of one per
cancellable operation).
--
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]