apache / apache/arrow-java

Arrow vector in Java(Scala) allocate byteBuffer error while read the bytes from Python pyarrow

Aberta
#322 0 comentários 0 reações 0 responsáveis Ver no GitHub
Type: bug
Linguagem predominante
Java
Estrelas
94
Forks
152
Merge médio
3d 16h
PRs com merge (30d)
11

Descrição

I am using scala arrow 1.0.1 and pyarrow 1.0.1

Following error occurs when scala decode the byte that encoded from python.

tried to downgrade pyarrow to 0.17.0, 0.14.1, error still exists.

This is a loop function to decode the same data repeatedly. The error occurs sometimes, after an error occurs, following code could still work correctly.
```
Error stack trace java.nio.ByteBuffer.allocate(ByteBuffer.java:334)
com.intel.analytics.zoo.shaded.arrow.vector.ipc.message.MessageSerializer.readMessage(MessageSerializer.java:692)
com.intel.analytics.zoo.shaded.arrow.vector.ipc.message.MessageChannelReader.readNext(MessageChannelReader.java:57)
com.intel.analytics.zoo.shaded.arrow.vector.ipc.ArrowStreamReader.readSchema(ArrowStreamReader.java:164)
com.intel.analytics.zoo.shaded.arrow.vector.ipc.ArrowReader.initialize(ArrowReader.java:170)
com.intel.analytics.zoo.shaded.arrow.vector.ipc.ArrowReader.ensureInitialized(ArrowReader.java:161)
com.intel.analytics.zoo.shaded.arrow.vector.ipc.ArrowReader.getVectorSchemaRoot(ArrowReader.java:63)
```
How to fix it?

**Reporter**: [Litchy Soong](https://issues.apache.org/jira/browse/ARROW-10341)

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

Guia de contribuição

Abrir o guia de contribuição

Direção de pesquisa

Comece em com.intel.analytics.zoo.shaded.arrow.vector.ipc.message.MessageSerializer.readMessage e siga a pilha por MessageChannelReader.readNext e ArrowStreamReader.readSchema. Reproduza leituras repetidas em Scala de bytes codificados pelo Python pyarrow 1.0.1, concentrando-se na falha intermitente de alocação de ByteBuffer; considera-se concluído quando a decodificação repetida não falhar mais de forma intermitente.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
java, python, scala
Domínio
data-engineering
Tipo de issue
Bug
Dificuldade
4/5
Tempo estimado
3-5 dias
Status de atividade
Estagnada
Clareza
Precisa de esclarecimento
Facilidade para iniciantes
25/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.