apache / apache/arrow

[Python] Calls to do_get ignore Python signal handlers

Open
#20,177 3 comments 1 reaction 0 assignees View on GitHub
Component: FlightRPC Component: Python Type: bug
Dominant language
C++
Stars
17.1k
Forks
4.3k
Avg merge
3d 18h
Merged PRs (30d)
91

Description

Similar to ARROW-15106 but observed from the client, not the server.

The Python Flight client blocks the thread and ignores signal handlers. This makes it impossible for the client to handle the signal handler and cancel the query before it has returned a FlightStreamReader.

**Reporter**: [Alex Bergeron](https://issues.apache.org/jira/browse/ARROW-16086)

**Note**: *This issue was originally created as [ARROW-16086](https://issues.apache.org/jira/browse/ARROW-16086). Please see the [migration documentation](https://github.com/apache/arrow/issues/14542) for further details.*

Contributor guide

Open the contributing guide

Research direction

Start at the Python Flight client's do_get entry point and compare the client-side behavior with ARROW-15106. The fix is complete when Python signal handlers can run and cancel the query before do_get returns a FlightStreamReader.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.