status code for unclean connection termination
- Langage dominant
- Java
- Étoiles
- 12.1k
- Forks
- 4k
- Merge moyen
- 2 j 17 h
- PR mergées (30 j)
- 37
Description
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`?
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par NettyServerHandler.java aux lignes 613–625, puis lisez la discussion de 14 commentaires sur la manière dont l’arrêt brutal du client devrait être représenté. Le travail est considéré comme terminé lorsqu’un accord a été trouvé sur le fait que CANCELLED soit sémantiquement correct et que le changement de comportement correspondant ainsi que le plan de validation aient été définis.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- grpc, java
- Domaine
- api, networking
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100