Skip to content

Commit daa7e37

Browse files
authored
fix(test): Verify that save has not finished (#3278)
fix(test): Verify that save has not finished, otherwise it's an endless loop
1 parent 775ba34 commit daa7e37

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

tests/dragonfly/replication_test.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2070,7 +2070,10 @@ async def save_replica():
20702070

20712071
save_task = asyncio.create_task(save_replica())
20722072
while not await is_saving(c_replica): # wait for replica start saving
2073-
asyncio.sleep(0.1)
2073+
assert "rdb_changes_since_last_success_save:0" not in await c_replica.execute_command(
2074+
"info persistence"
2075+
), "Weak test case, finished saving too quickly"
2076+
await asyncio.sleep(0.1)
20742077
await c_replica.execute_command("replicaof no one")
20752078
assert await is_saving(c_replica)
20762079
await save_task
@@ -2090,14 +2093,17 @@ async def test_start_replicating_while_save(df_factory):
20902093
c_master = master.client()
20912094
c_replica = replica.client()
20922095

2093-
await c_replica.execute_command("DEBUG POPULATE 1000 key 4096 RAND")
2096+
await c_replica.execute_command("DEBUG POPULATE 10000 key 4096 RAND")
20942097

20952098
async def save_replica():
20962099
await c_replica.execute_command("save")
20972100

20982101
save_task = asyncio.create_task(save_replica())
20992102
while not await is_saving(c_replica): # wait for server start saving
2100-
asyncio.sleep(0.1)
2103+
assert "rdb_changes_since_last_success_save:0" not in await c_replica.execute_command(
2104+
"info persistence"
2105+
), "Weak test case, finished saving too quickly"
2106+
await asyncio.sleep(0.1)
21012107
await c_replica.execute_command(f"REPLICAOF localhost {master.port}")
21022108
assert await is_saving(c_replica)
21032109
await save_task

0 commit comments

Comments
 (0)