Loading
Exclude negotiation timeouts from the SSH error SLI
What does this MR do and why?
Contributes to gitlab#630253 (closed)
Problem
Idle Git-over-SSH clients can cause Gitaly to return a DeadlineExceeded error containing "waiting for negotiation". gitlab-shell counted this client-caused timeout as an SSH server error.
Solution
- Exclude negotiation-timeout errors from
trackError. - Keep unrelated
DeadlineExceedederrors and other gRPC codes counted. - Add table-driven coverage for the excluded and counted cases.
References
How to set up and validate locally
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.