grpc / grpc/grpc-java

SafeMethodCachingInterceptor Half-closed without a request

Aperta
#9,310 5 commenti 0 reazioni 0 assegnatari Vedi su GitHub
docs
Lingua principale
Java
Stelle
12.1k
Fork
4k
Merge medio
2g 17h
PR unite (30g)
37

Descrizione

[SafeMethodCachingInterceptor.java](https://github.com/grpc/grpc-java/blob/master/examples/android/clientcache/app/src/main/java/io/grpc/clientcacheexample/SafeMethodCachingInterceptor.java)

16:42:31.306 [grpc-nio-worker-ELG-1-2] DEBUG io.grpc.netty.shaded.io.grpc.netty.NettyClientHandler - [id: 0xa5392116, L:/10.173.96.176:59727 - R:/100.95.188.184:8090] INBOUND HEADERS: streamId=5 headers=GrpcHttp2ResponseHeaders[:status: 200, content-type: application/grpc, grpc-status: 13, grpc-message: Half-closed without a request, x-envoy-upstream-service-time: 5, date: Thu, 23 Jun 2022 08:42:31 GMT, server: istio-envoy] padding=0 endStream=true

My issue is that for every cached response I use, instead of reporting a grpc_client_status=OK I'm instead getting grpc_client_status=Internal with a message Half-closed without a request. I am assuming that this is coming from the server telling us that we started a call but then closed it early.

Is there a correct way to close out this request so that the server doesn't send us this error message? Right now my grpc client statistics make it look like an overwhelming number of our client requests are failing with an internal error, rather than succeeding.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia da examples/android/clientcache/app/src/main/java/io/grpc/clientcacheexample/SafeMethodCachingInterceptor.java e traccia il modo in cui le risposte memorizzate nella cache chiudono le proprie richieste. Riproduci il percorso della risposta memorizzata nella cache usando lo stato gRPC riportato e analizza l’interazione tra client e server. Il lavoro è completato quando le risposte memorizzate nella cache terminano senza “Half-closed without a request” e riportano grpc_client_status=OK.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
api, mobile
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.