ArrowBuf copying from GetReadableBuffer causes slowness
- Linguagem predominante
- Java
- Estrelas
- 94
- Forks
- 152
- Merge médio
- 3d 16h
- PRs com merge (30d)
- 11
Descrição
### Describe the usage question you have. Please include as many useful details as possible.
I'm using Arrow Flight and discovered an extra copy action while testing performance impact.
` ReadableBuffer readableBuffer = fastPath ? getReadableBuffer(stream) : null;
if (readableBuffer != null) {
readableBuffer.readBytes(buf.nioBuffer(0, size));
} `
The flame graph shows that after enabling zero_copy, ArrowBuf copying from GetReadableBuffer causes slowness.
Why does this copy occur?
Or is it because arrowbuf needs to manage its own memory, so the ownership must be transferred from netty?
### Component(s)
FlightRPC
Guia de contribuição
Direção de pesquisa
Comece pelo caminho rápido do FlightRPC mostrado na issue, acompanhando getReadableBuffer por ReadableBuffer.readBytes até o destino ArrowBuf e comparando com o flame graph relatado. Determine se a cópia é necessária para a propriedade ou o gerenciamento de memória e documente a causa ou uma forma claramente suportada de evitá-la.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- java
- Domínio
- api, performance
- Tipo de issue
- Bug
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Estagnada
- Clareza
- Precisa de esclarecimento
- Facilidade para iniciantes
- 35/100