apache/arrow-java

[FlightRPC] Remove sketchy gRPC reflection code

Aberta

#939 aberto em 29 de dez. de 2025

 (4 comentários) (1 reação) (1 responsável)Java (132 forks)auto 404
Type: bughelp wanted

Métricas do repositório

Stars
 (89 estrelas)
Métricas de merge de PR
 (Métricas PR pendentes)

Description

Describe the bug, including details regarding any error messages, version, and platform.

https://github.com/grpc/grpc-java/pull/12579

There are public methods to get ownership of the internal ByteBuffers, instead of having to use reflection (which, did we actually ever need it in the first place?)

There's no need to dig into our internals for accessing the ByteBuffer (which is what GetReadableBuffer reports to do). We have zero-copy APIs. They can use HasByteBuffer.getByteBuffer()+InputStream.skip() to loop through the ByteBuffers. If they want to access all the byte buffers simultaneously (as skip() will deallocate the last byte buffer, just like read() does), then they can use InputStream.mark(). If they want to take over ownership of the ByteBuffers, then they can use Detachable.detach().

Guia do colaborador