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
roachtest: This change introduces a transparent to caller, default retry when
encountering an error of 255 (SSH). The retry could be exposed to
callers fairly simply, but this PR does not introduce that.
Today there appears the concept of a "roachprod" and a "command error",
the former of which denotes an issue in roachprod handling code, the
latter representing an error executing a command over SSH. This PR
preserves this behaviour and introduces an updated function signature
from `f(i int) ([]byte, error) to f(i int) (*RunResultDetails, error).
RunResultDetails has been expanded to capture information about the
execution of a command, such as stderr/our, exit code, error, attempt
number. Any roachprod error will result in an error being returned, and set
in RunResultDetails.Err. Any command error would be only set in
RunResultDetails.Err with the returned error being nil. This allows callers to
differentiate between a roachprod and a command error, which existing code
depends on.
Retry handling code can use a function's returned RunResultDetails to
determine whether a retry should take place. The default retry
handling occurs on `RunResultDetails.RemoteExitStatus == 255`
Release note: None
Epic: CRDB-21386
0 commit comments