frequenz-floss / frequenz-client-base-python

Base gRPC client
https://frequenz-floss.github.io/frequenz-client-base-python/
MIT License
0 stars 3 forks source link

Allow configuring keepalive and use a reasonable default value #68

Closed llucax closed 1 week ago

llucax commented 2 months ago

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:

llucax commented 1 week ago

Done via: