@@ -281,26 +281,25 @@ func (s *MoveTablesCutOverSuite) TestRenameFailurePropagates() {
281281}
282282
283283// TestDrainTimeoutPropagates maps to T3 timeout handling: applier coordinates
284- // never reach the drain GTID -> drain poll bounded by moveTablesCutOverDrainTimeout
284+ // never reach the drain GTID -> drain poll bounded by CutOverLockTimeoutSeconds
285285// returns a wrapped error and the flag is not set.
286286func (s * MoveTablesCutOverSuite ) TestDrainTimeoutPropagates () {
287287 ctx := context .Background ()
288288 _ , err := s .db .ExecContext (ctx , fmt .Sprintf ("CREATE TABLE %s (id INT PRIMARY KEY)" , getTestTableName ()))
289289 s .Require ().NoError (err )
290290
291- // Patch the package-level timeout/poll just for this test.
292- origTimeout , origPoll := moveTablesCutOverDrainTimeout , moveTablesCutOverDrainPollInterval
293- moveTablesCutOverDrainTimeout = 200 * time .Millisecond
291+ // Patch poll interval and use a 1-second drain timeout for a bounded test.
292+ origPoll := moveTablesCutOverDrainPollInterval
294293 moveTablesCutOverDrainPollInterval = 50 * time .Millisecond
295294 s .T ().Cleanup (func () {
296- moveTablesCutOverDrainTimeout = origTimeout
297295 moveTablesCutOverDrainPollInterval = origPoll
298296 })
299297
300298 var calls []string
301299 fakeHooks := & recordingHooks {name : "fake" , calls : & calls }
302300 // initialCoords nil - drain comparison never satisfies.
303301 m , mc := s .buildMigrator (fakeHooks , nil )
302+ mc .CutOverLockTimeoutSeconds = 1
304303
305304 s .Require ().Equal (int64 (0 ), atomic .LoadInt64 (& mc .CutOverCompleteFlag ), "pre-state: flag must be 0" )
306305
@@ -327,17 +326,16 @@ func (s *MoveTablesCutOverSuite) TestDrainWaitsForQueuedDML() {
327326 _ , err := s .db .ExecContext (ctx , fmt .Sprintf ("CREATE TABLE %s (id INT PRIMARY KEY)" , getTestTableName ()))
328327 s .Require ().NoError (err )
329328
330- origTimeout , origPoll := moveTablesCutOverDrainTimeout , moveTablesCutOverDrainPollInterval
331- moveTablesCutOverDrainTimeout = 200 * time .Millisecond
329+ origPoll := moveTablesCutOverDrainPollInterval
332330 moveTablesCutOverDrainPollInterval = 50 * time .Millisecond
333331 s .T ().Cleanup (func () {
334- moveTablesCutOverDrainTimeout = origTimeout
335332 moveTablesCutOverDrainPollInterval = origPoll
336333 })
337334
338335 var calls []string
339336 fakeHooks := & recordingHooks {name : "fake" , calls : & calls }
340337 m , mc := s .buildMigrator (fakeHooks , s .containingDrainGTID ())
338+ mc .CutOverLockTimeoutSeconds = 1
341339 m .applyEventsQueue <- newApplyEventStructByDML (& binlog.BinlogEntry {
342340 DmlEvent : & binlog.BinlogDMLEvent {
343341 DatabaseName : testMysqlDatabase ,
0 commit comments