apache / apache/arrow-java

[Java] ORC JNI bridge should use the C data interface

Aperta
#350 5 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Java
Stelle
94
Fork
152
Merge medio
3g 16h
PR unite (30g)
11

Descrizione

Right now the ORC JNI bridge uses some custom buffer passing which only seems to handle primitive arrays correctly (child array buffers and dictionaries are not considered):
https://github.com/apache/arrow/blob/master/cpp/src/jni/orc/jni_wrapper.cpp#L263-L265

Instead, it should use the C data interface, which is now implemented in Java.

**Reporter**: [Antoine Pitrou](https://issues.apache.org/jira/browse/ARROW-15754) / @pitrou

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

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Start with cpp/src/jni/orc/jni_wrapper.cpp around lines 263-265 and review the Java C data interface implementation. Trace how the ORC JNI bridge currently passes buffers, then verify that the interface covers child array buffers and dictionaries. Done means the bridge uses the C data interface for those cases.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
c, cpp, java
Ambito
data-engineering
Tipo di issue
Refactoring
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.