-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: 5.1 Required
-
Component/s: Replication
-
None
-
Fully Compatible
-
ALL
-
v5.0, v4.4
-
Repl 2021-08-23
-
150
There is a race in catchup_takeover_with_higher_config.js. When waiting for node1 to catchup takeover node2, we check that all nodes see node1 as primary, however it's possible that node1 has not finished stepping down (due to node2 stepup) before we wait, so it remains primary state and the wait condition is trivially satisfied, meaning that the catchup takeover has not happened yet after the wait. Later after the failpoint on node2 is lifted, node2 successfully becomes primary (because node1 didn't do catchup takeover) and stays as primary till the end, causing this line to hang forever.