apache / apache/arrow-java

[Java] ArrowMessage failed to parse compressed grpc stream

Aberta
#391 2 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

InvalidProtocolBufferException will be thrown in ArrowMessage.frame if we use gzip compress in Grpc.

The reason is stream.available will still be 1 after we read compressed data. There should be another attempt read to change InflaterInputStream.reachEOF to be true, and make stream.available to be 0.

Thus we need check stream.available after read tag from stream.

**Reporter**: [Jackey Lee](https://issues.apache.org/jira/browse/ARROW-11177) / @jackylee-ch
#### PRs and other links:
- [GitHub Pull Request apache/arrow#9147](https://github.com/apache/arrow/pull/9147)

**Note**: *This issue was originally created as [ARROW-11177](https://issues.apache.org/jira/browse/ARROW-11177). 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 ArrowMessage.frame e inspecione o tratamento de read-tag para streams gRPC compactados, prestando atenção a stream.available e InvalidProtocolBufferException. Revise o PR #9147 vinculado e verifique se a entrada compactada com gzip é analisada com sucesso sem que o stream seja tratado como disponível prematuramente.

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

Avaliação

Stack de tecnologia
grpc, java
Domínio
api, backend
Tipo de issue
Bug
Dificuldade
3/5
Tempo estimado
1-2 dias
Status de atividade
Estagnada
Clareza
Claramente especificada
Facilidade para iniciantes
15/100

Receba novas issues na sua caixa de entrada

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