When a connection is idle, and the networking drops (or the server disappears without properly disconnecting), the client happily waits forever on active stream, but no data will ever come again, at least for a long time if TCP keepalive kicks in.
What did you expect instead?
We should configure the gRPC channel keepalive feature to have some reasonable default, and to be able to override the defaults via the connection URL. We should also check if some default keepalive is already configured in gRPC.
What happened?
When a connection is idle, and the networking drops (or the server disappears without properly disconnecting), the client happily waits forever on active stream, but no data will ever come again, at least for a long time if TCP keepalive kicks in.
What did you expect instead?
We should configure the gRPC channel keepalive feature to have some reasonable default, and to be able to override the defaults via the connection URL. We should also check if some default keepalive is already configured in gRPC.
Affected version(s)
No response
Affected part(s)
Code (part:code)
Extra information
Coming from: