apache / apache/arrow-julia

Segfault when filtering Arrow-backed DataFrame

Open
#257 2 comments 0 reactions 0 assignees View on GitHub
bug
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.