Don't limit number of Gitaly client keepalives
Long-running RPCs, such as `ForkRepository`, may take several hours to complete. While Sidekiq waits for the RPC to complete it should send keepalive pings to Gitaly/Praefect to prevent load balancers from killing the connection. However, the default value for `GRPC_ARG_HTTP2_MAX_PINGS_WITHOUT_DATA` is only 2, with pings sent at 5 minute intervals. As a result, Sidekiq will only send keepalives for the first 5 minutes, then leave the connection idle for up to 6 hours and putting long-running RPCs at risk of failure. This commit sets `GRPC_ARG_HTTP2_MAX_PINGS_WITHOUT_DATA` to 0, so Sidekiq can send an unlimited number of keepalives and keep long-running RPCs active. Note that pings are still sent at 5 minute intervals with this change. Changelog: fixed
Showing
Please register or sign in to comment