`Arrow.write()` cannot handle large `Mmap`-ed table
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- julia
- Ambito
- data-engineering
Direzione di ricerca
Inizia riproducendo il problema con il file Arrow grande e non compresso, una Mmap-ed table view e le due chiamate a Arrow.write mostrate nel report, entro il limite di memoria indicato. Traccia Arrow.write a partire dall’input della vista e confronta il comportamento della memoria man mano che la maschera cresce; il lavoro è concluso quando la tabella filtrata viene scritta correttamente senza l’errore di memoria insufficiente riportato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Premise:
- input file is large, uncompressed Arrow file
- we produce a mask and produce a
view()over theMmap-ed table - use
Arrow.write()to write filtered table to disk
This seems to take increasing memory as the content of the mask.
I know this doesn't work correctly because if I set memory limit first:
> ulimit -Sv 8000000
julia> using Arrow, DataFrames
julia> const df = @time DataFrame(Arrow.Table("./nanoAOD_nocomp.feather"); copycols=false);
2.685720 seconds (4.84 M allocations: 321.109 MiB, 4.41% gc time, 100.89% compilation time)
julia> Arrow.write("/home/akako/Downloads/out.feather", @view df[1:1*10^4, :]);
julia> Arrow.write("/home/akako/Downloads/out.feather", @view df[1:2*10^4, :]);
ERROR: Internal error: encountered unexpected error in runtime:
OutOfMemoryError()
unknown function (ip: 0x7f9d7329fc99)
unknown function (ip: 0x7f9d732935b5)
jl_gc_alloc at /home/akako/Documents/github/dotFiles/homedir/.julia/juliaup/julia-1.9.0-rc1+0.x64.linux.gnu/bin/../lib/julia/libjulia-internal.so.1 (unknown line)
ijl_alloc_array_1d at /home/akako/Documents/github/dotFiles/homedir/.julia/juliaup/julia-1.9.0-rc1+0.x64.linux.gnu/bin/../lib/julia/libjulia-internal.so.1 (unknown line)
unknown function (ip: 0x7f9d5ec6259e)
unknown function (ip: 0x7f9d5e36c9dc)
unknown function (ip: 0x7f9d5e73ee1f)
unknown function (ip: 0x7f9d5e73ed98)
- Lingua principale
- Julia
- Stelle
- 315
- Fork
- 78
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di apache/arrow-julia
-
`Arrow.Table` uses last dictionary for all batches in streaming decode, resulting in incorrect readsForse già presa @quinnj l’ha presa 59 giorni fa. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 55/100
apache/arrow-julia#610 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
apache/arrow-julia#597 ·
-
BoundsError: attempt to access 0-element Vector{Vector{UInt8}} at index [1]Forse già presa @quinnj l’ha presa 26 giorni fa. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
apache/arrow-julia#590 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 58/100
apache/arrow-julia#589 · 2 commenti ·
-
Test failures with CategoricalArrays 1.0Forse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
apache/arrow-julia#586 · 2 commenti ·
Tutte le issue di apache/arrow-julia
Issue simili
-
OptimizationCUTEst jobs fail: gfortran not installed on the runnerForse già presa @ChrisRackauckas-Claude l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
SciML/SciMLBenchmarks.jl#1946 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
JuliaSmoothOptimizers/NCL.jl#101 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 69/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
WaterLily-jl/WaterLily.jl#367 ·
I maintainer di solito rispondono entro 1 giorno