Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

binder: BinderChannelBuilder and BinderServerBuilder should implement maxInboundMessageSize()

Abierto
#12,744 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
48/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
java

Línea de trabajo

Comienza en BinderChannelBuilder y BinderServerBuilder; después, sigue el manejo de transacciones de stream de grpc-binder para FLAG_MESSAGE_DATA_IS_PARTIAL. Determina el límite predeterminado de mensajes entrantes y la ruta del receptor que debería cerrar el stream con RESOURCE_EXHAUSTED cuando el siguiente mensaje superaría ese límite. Se considera terminado cuando ambos builders exponen el límite y se rechazan las secuencias de mensajes parciales cuyo tamaño exceda el límite.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

binder enhancement
Is your feature request related to a problem?

Yes. Senders can trivially OOM a peer with an unending sequence of non-empty stream transactions with the FLAG_MESSAGE_DATA_IS_PARTIAL flag set.

Describe the solution you'd like

grpc-binder should establish a default value for client and server maxInboundMessageSize(). If a receiver sees a transaction that would cause the next message to exceed this limit, it should "out of band close" the stream with RESOURCE_EXHAUSTED.

Describe alternatives you've considered

None

Additional context

Even with stream flow control receivers must ack transactions whenever the application has request()ed at least one message. That design had been relying on this message-layer limit but grpc-binder doesn't seem to implement one.

Lenguaje dominante
Java
Estrellas
12.1k
Forks
4k
Merge medio
2 d 3 h
PR fusionados (30 d)
30

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de grpc/grpc-java

Todos los issues de grpc/grpc-java

Issues similares

Más issues de Java

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.