Problem
test_read_only_actions_offline_hard_servers-t empties hostgroup 1300 during its setup, fails to execute its test scenario, and doesn't restore the server configuration on cleanup. All subsequent tests that rely on hostgroup 1300 fail with:
Max connect timeout reached while reaching hostgroup 1300 after 10000ms
Affected tests (cascading failures in legacy-g4)
First pass:
test_throttle_max_bytes_per_second_to_client-t
test_unsupported_queries-t
test_warnings-t
Second pass (all tests_with_deps/deprecate_eof_support):
deprecate_eof_cache-t
eof_cache_mixed_flags-t
eof_conn_options_check-t
eof_fast_forward-t
eof_mixed_flags_queries-t
eof_packet_mixed_queries-t
ok_packet_mixed_queries-t
Evidence from debug dump
dump_hostgroup_debug() output at test_warnings-t start:
=== Hostgroup 1300 Debug Dump ===
runtime_mysql_servers (hg=1300):
(no servers in hostgroup 1300)
stats_mysql_connection_pool (hg=1300):
(no pool entries for hostgroup 1300)
=== End Hostgroup 1300 Debug Dump ===
While hostgroup 0 (fallback) still has servers:
hg=0 host=mysql1.infra-mysql57 port=3306 status=ONLINE
Root cause
test_read_only_actions_offline_hard_servers-t replaces mysql_servers with its own test configuration (only hostgroups 0/1), then fails with "hostgroup 1300 timeout" because its own test scenario can't work with the new infra's hostgroup layout. The cleanup path (goto cleanup) attempts LOAD MYSQL SERVERS FROM DISK but doesn't verify the restore succeeded.
Fix needed
The test's cleanup must reliably restore hostgroup 1300 servers, regardless of whether the test passes or fails. Options:
- Save and restore
mysql_servers content explicitly (not via DISK)
- Verify after
LOAD MYSQL SERVERS FROM DISK that hostgroup 1300 has servers
- Adapt the test to work with hostgroup 1300 instead of only 0/1
Problem
test_read_only_actions_offline_hard_servers-tempties hostgroup 1300 during its setup, fails to execute its test scenario, and doesn't restore the server configuration on cleanup. All subsequent tests that rely on hostgroup 1300 fail with:Affected tests (cascading failures in legacy-g4)
First pass:
test_throttle_max_bytes_per_second_to_client-ttest_unsupported_queries-ttest_warnings-tSecond pass (all
tests_with_deps/deprecate_eof_support):deprecate_eof_cache-teof_cache_mixed_flags-teof_conn_options_check-teof_fast_forward-teof_mixed_flags_queries-teof_packet_mixed_queries-tok_packet_mixed_queries-tEvidence from debug dump
dump_hostgroup_debug()output attest_warnings-tstart:While hostgroup 0 (fallback) still has servers:
Root cause
test_read_only_actions_offline_hard_servers-treplacesmysql_serverswith its own test configuration (only hostgroups 0/1), then fails with "hostgroup 1300 timeout" because its own test scenario can't work with the new infra's hostgroup layout. The cleanup path (goto cleanup) attemptsLOAD MYSQL SERVERS FROM DISKbut doesn't verify the restore succeeded.Fix needed
The test's cleanup must reliably restore hostgroup 1300 servers, regardless of whether the test passes or fails. Options:
mysql_serverscontent explicitly (not via DISK)LOAD MYSQL SERVERS FROM DISKthat hostgroup 1300 has servers