grpc / grpc/grpc-java

status code for unclean connection termination

Abierto
#8,684 14 comentarios 0 reacciones 0 asignados Ver en GitHub
enhancement
Lenguaje dominante
Java
Estrellas
12.1k
Forks
4k
Merge medio
2 d 17 h
PR fusionados (30 d)
37

Descripción

When the TCP connection underlying a netty server connection is abruptly closed by the client, grpc-java goes through all active call streams and closes them as `UNAVAILABLE`:
https://github.com/grpc/grpc-java/blob/6518d7bd6dc496c89ff320e06c73424f26af364a/netty/src/main/java/io/grpc/netty/NettyServerHandler.java#L613-L625 A problem we've seen with this arrangement is that there is no way for to distinguish `UNAVAILABLE` call failures due to "real" server unavailability and due to the client uncleanly closing their connections (probably due to abrupt process death). What do you think about changing the status in this situation to `CANCELLED`?

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Empieza por NettyServerHandler.java en las líneas 613–625 y después lee la discusión de 14 comentarios sobre cómo debería representarse la terminación abrupta del cliente. Se considera completado cuando se haya llegado a un acuerdo sobre si CANCELLED es semánticamente correcto y se hayan definido el cambio de comportamiento correspondiente y el plan de validación.

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

Evaluación

Stack tecnológico
grpc, java
Área
api, networking
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.