You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Python] Several APIs segfault when required Arrow object arguments are None #51043
Several PyArrow APIs whose signatures require Arrow extension objects reject invalid types with TypeError, but accept None and then terminate the interpreter.
I would expect None to be rejected with TypeError, like the other invalid types, rather than causing a process crash.
I found these cases while fuzzing Python C extension modules.
Activity
apacheGH-51043: Reject null dictionary arrays
marinelay commentedon Sep 8, 2026
I found three additional APIs that appear to have the same issue:
Each command terminates independently with SIGSEGV (signal 11) on PyArrow 25.0.0, CPython 3.12.3, Ubuntu 24.04 x86_64, and glibc 2.39.
I think that explicit None checks similar to those added in PR #51161 may be needed for these arguments as well.
apacheGH-51043: [Python] Validate required array buffer arguments
marinelay commentedon Sep 19, 2026
@1fanwang Thanks for working on these issues.
I found three more cases that appear to be outside the current changes:
Each command exits with SIGSEGV on PyArrow 25.0.1
Would you consider updating the PR to validate these
Noneinputs and add regression tests?apacheGH-51043: Reject null required PyArrow objects
apacheGH-51043: Reject null dictionary arrays
apacheGH-51043: [Python] Validate required array buffer arguments
apacheGH-51043: [Python] Reject None in more required object construc…
1fanwang commentedon Sep 24, 2026
Done in bb913b6.
apacheGH-51043: Reject null required PyArrow objects
apacheGH-51043: Reject null dictionary arrays
apacheGH-51043: [Python] Validate required array buffer arguments
apacheGH-51043: [Python] Reject None in more required object construc…