pjfanning opened a new issue, #929:
URL: https://github.com/apache/pekko-grpc/issues/929

   A Pekko gRPC server ignores the client's `grpc-timeout` header. It only 
appears in the gRPC-Web CORS allow list (`WebHandler`).
   
   As a result:
   - A call isn't cancelled when its deadline expires, so the server keeps 
working for a client that has already given up.
   - Handlers can't see the remaining deadline, so they can't pass it on to the 
calls they make themselves.
   
   grpc-java servers cancel the call at the deadline and expose it through 
`Context` (https://grpc.io/docs/guides/deadlines/).
   
   Proposal:
   - Parse `grpc-timeout` (the unit suffixes `H`, `M`, `S`, `m`, `u`, `n`).
   - For calls past the deadline, fail with `DEADLINE_EXCEEDED` and cancel the 
response stream and the request source.
   - Make the deadline available to handlers, e.g. through `Metadata` or a 
power API accessor, and document how to pass it on to an outgoing call with 
`setDeadline` (#922).
   - Cover unary and streaming calls, with tests for both.
   
   Related: #928 (pekko-http client doesn't send `grpc-timeout`).
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to