You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
rfq: add client-side keepalive to price oracle connections
In this commit, we add comprehensive client-side gRPC keepalive
parameters to the price oracle client connections. This addresses the
root cause of issue #1814 where connections to price oracle servers
were being silently closed after idle periods, resulting in "connection
reset by peer" errors during RFQ operations.
The key change is adding PermitWithoutStream set to true, which allows
the client to send keepalive pings even when there are no active RPC
calls. This is essential for long-lived connections that may experience
extended idle periods between price queries. Without this setting, idle
connections would be closed by intermediaries or the server itself,
leaving the client unaware of the broken connection until the next RPC
attempt.
We configure the client to ping the server every 30 seconds of
inactivity and wait 20 seconds for a response. These values are
conservative enough to detect connection issues quickly while avoiding
excessive network traffic. The same keepalive parameters are applied to
both TLS and insecure (testing-only) connection modes to ensure
consistent behavior.
Fixes#1814
0 commit comments