Description
In [1], WaitForSQLReady
was added immediately after roachprod.Start
to ensure freshly started nodes are ready to serve (and authenticate) SQL sessions. This behavior is specific to roachtest
; i.e., roachprod start
remains unchanged. The reason for WaitForSQLReady
is described in [2]. Essentially, part of the SQL subsystem is initialized asynchronously; session authentication isn't available until it's fully initialized.
Some roachtests, e.g., cluster-init
, set SkipInit
, effectively disabling automated cluster initialization. In that case, WaitForSQLReady
is also skipped, since we can't place a definite upper bound on when SQL will eventually be ready. More recently, another roachtest, namely network/authentication
was found to flake due to WaitForSQLReady
[3]. While the test was made compatible with WaitForSQLReady
, it's likely we will run into other examples in the future. Thus, we should add an opt-out via startOpts.RoachprodOpts.SkipWaitForSQL
.
[1] #138109
[2] #137988
[3] #138806
Jira issue: CRDB-47618