1
0
Fork 0

More e2e test fixes

master
Philip O'Toole 8 months ago
parent cf4274ef24
commit f5c136e206

@ -317,7 +317,7 @@ class TestAutoBackupS3(unittest.TestCase):
cfg = write_random_file(json.dumps(auto_backup_cfg))
# Create a cluster with automatic backups enabled.
node = Node(RQLITED_PATH, '0', auto_backup=cfg)
node = Node(RQLITED_PATH, '0', auto_backup=cfg, raft_snap_int='300s')
node.start()
node.wait_for_leader()
@ -328,12 +328,22 @@ class TestAutoBackupS3(unittest.TestCase):
node.wait_for_all_fsm()
node.wait_for_upload(i+1)
# Restart the node, and confirm no further backups are made.
# Restart the node, and confirm no backup is uploaded just due to the restart.
node.stop(graceful=True)
node.start()
node.wait_for_leader()
node.wait_for_upload_skipped_sum(1)
# Insert a row, make sure a backup will happen now.
i = node.num_auto_backups()[0]
node.execute('INSERT INTO foo(name) VALUES("fiona")')
node.wait_for_all_fsm()
node.wait_for_upload(i+1)
# Make sure we go back to skipping backups.
i = node.num_auto_backups()[0]
node.wait_for_upload_skipped(i+1)
delete_s3_object(access_key_id, secret_access_key_id, S3_BUCKET, path)
deprovision_node(node)
os.remove(cfg)

@ -393,6 +393,20 @@ class Node(object):
n = self.num_auto_backups()
raise Exception('rqlite node failed to upload backup within %d seconds (%d, %d, %d, %d)' % (timeout, n[0], n[1], n[2], n[3]))
def wait_for_upload_skipped(self, i, timeout=TIMEOUT):
'''
Wait until the number of skipped uploads is at least as great as the given value.
'''
t = 0
while t < timeout:
if self.num_auto_backups()[2] >= i:
return self.num_auto_backups()
time.sleep(1)
t+=1
n = self.num_auto_backups()
raise Exception('rqlite node failed to skip backup due sum within %d seconds (%d, %d, %d, %d)' % (timeout, n[0], n[1], n[2], n[3]))
def wait_for_upload_skipped_sum(self, i, timeout=TIMEOUT):
'''
Wait until the number of skipped sum uploads is at least as great as the given value.
@ -404,7 +418,7 @@ class Node(object):
time.sleep(1)
t+=1
n = self.num_auto_backups()
raise Exception('rqlite node failed to skip backup within %d seconds (%d, %d, %d, %d)' % (timeout, n[0], n[1], n[2], n[3]))
raise Exception('rqlite node failed to skip backup due sum within %d seconds (%d, %d, %d, %d)' % (timeout, n[0], n[1], n[2], n[3]))
def wait_for_fsm_index(self, index, timeout=TIMEOUT):
'''

Loading…
Cancel
Save