Segfault when filtering Arrow-backed DataFrame
- Dominant language
- Julia
- Stars
- 312
- Forks
- 78
- PR merge metrics
- No merged PRs in 30d
Description
```julia
signal (11): Segmentation fault
in expression starting at none:1
unknown function (ip: 0x7f82a3ce5527)
jl_symbol_n at /buildworker/worker/package_linux64/build/src/symbol.c:113
_symbol at /home/ubuntu/.julia/packages/ArrowTypes/dkiHE/src/ArrowTypes.jl:208 [inlined]
fromarrow at /home/ubuntu/.julia/packages/ArrowTypes/dkiHE/src/ArrowTypes.jl:209 [inlined]
getindex at /home/ubuntu/.julia/packages/Arrow/PQ5Mm/src/arraytypes/list.jl:56 [inlined]
macro expansion at ./multidimensional.jl:860 [inlined]
macro expansion at ./cartesian.jl:64 [inlined]
_unsafe_getindex! at ./multidimensional.jl:855 [inlined]
_unsafe_getindex at ./multidimensional.jl:846
_getindex at ./multidimensional.jl:832 [inlined]
getindex at ./abstractarray.jl:1170
unknown function (ip: 0x7f821e6d691c)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2237 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2419
_threaded_getindex at /home/ubuntu/.julia/packages/DataFrames/vuMM8/src/dataframe/dataframe.jl:531
getindex at /home/ubuntu/.julia/packages/DataFrames/vuMM8/src/dataframe/dataframe.jl:574 [inlined]
#filter#78 at /home/ubuntu/.julia/packages/DataFrames/vuMM8/src/abstractdataframe/abstractdataframe.jl:1017 [inlined]
filter at /home/ubuntu/.julia/packages/DataFrames/vuMM8/src/abstractdataframe/abstractdataframe.jl:1016 [inlined]
```
which points to https://github.com/JuliaData/Arrow.jl/blob/56f8f9342389c1b9664157ca4a2d1f5501d8341d/src/ArrowTypes/src/ArrowTypes.jl#L208
I don't have a MWE currently.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the ArrowTypes.jl code at line 208 and the DataFrames filter stack frames shown in the report. First obtain a minimal reproducible example for filtering an Arrow-backed DataFrame, then determine whether the crash occurs in ArrowTypes.fromarrow/_symbol or DataFrames indexing; done means the reproduction no longer segfaults and a regression test covers it.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- data
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100