diff --git a/system_test/e2e/auto_state.py b/system_test/e2e/auto_state.py index 38c70baa..ea417c31 100644 --- a/system_test/e2e/auto_state.py +++ b/system_test/e2e/auto_state.py @@ -340,7 +340,7 @@ class TestAutoBackupS3(unittest.TestCase): node.wait_until_uploads_idle() # Write one more record, wait for a backup to happen. - i = node.num_auto_backups()[0] + i = node.num_auto_backups()['ok'] node.execute('INSERT INTO foo(name) VALUES("fiona")') j = node.query('SELECT count(*) FROM foo', level='strong') self.assertEqual(j, d_("{'results': [{'values': [[100]], 'types': ['integer'], 'columns': ['count(*)']}]}")) @@ -409,7 +409,7 @@ class TestAutoBackupS3(unittest.TestCase): # Confirm that the follower has performed no backups. time.sleep(5) - self.assertEqual(follower.num_auto_backups()[0], 0) + self.assertEqual(follower.num_auto_backups()['ok'], 0) delete_s3_object(access_key_id, secret_access_key_id, S3_BUCKET, path) deprovision_node(leader) @@ -523,7 +523,7 @@ class TestAutoBackupS3(unittest.TestCase): # Ensure new leader didn't do a backup new_leader.wait_until_uploads_idle() - self.assertEquals(new_leader.num_auto_backups()[0], 0) + self.assertEqual(new_leader.num_auto_backups()['ok'], 0) delete_s3_object(access_key_id, secret_access_key_id, S3_BUCKET, path) deprovision_node(n0) diff --git a/system_test/e2e/helpers.py b/system_test/e2e/helpers.py index 5c5ef1d4..2c8d5b2d 100644 --- a/system_test/e2e/helpers.py +++ b/system_test/e2e/helpers.py @@ -376,12 +376,14 @@ class Node(object): def num_auto_backups(self): ''' - Return a tuple of the number of successful, failed, skipped auto-backups, skipped sum auto-backups. + Return a dict of the number of successful, failed, skipped auto-backups, skipped sum auto-backups. ''' - return (int(self.expvar()['uploader']['num_uploads_ok']), - int(self.expvar()['uploader']['num_uploads_fail']), - int(self.expvar()['uploader']['num_uploads_skipped']), - int(self.expvar()['uploader']['num_uploads_skipped_sum'])) + return { + 'ok': int(self.expvar()['uploader']['num_uploads_ok']), + 'fail': int(self.expvar()['uploader']['num_uploads_fail']), + 'skip': int(self.expvar()['uploader']['num_uploads_skipped']), + 'skip_sum': int(self.expvar()['uploader']['num_uploads_skipped_sum']) + } def wait_for_upload(self, i, timeout=TIMEOUT): ''' @@ -389,7 +391,7 @@ class Node(object): ''' t = 0 while t < timeout: - if self.num_auto_backups()[0] == i: + if self.num_auto_backups()['ok'] == i: return self.num_auto_backups() time.sleep(0.1) t+=1 @@ -402,7 +404,7 @@ class Node(object): ''' t = 0 while t < timeout: - if self.num_auto_backups()[3] >= i: + if self.num_auto_backups()['skip_sum'] >= i: return self.num_auto_backups() time.sleep(0.1) t+=1 @@ -415,17 +417,17 @@ class Node(object): ''' t = 0 while t < timeout: - backups = self.num_auto_backups()[0] - skipped = self.num_auto_backups()[2] - skipped_sum = self.num_auto_backups()[3] + backups = self.num_auto_backups()['ok'] + skipped = self.num_auto_backups()['skip'] + skipped_sum = self.num_auto_backups()['skip_sum'] time.sleep(0.5) - if self.num_auto_backups()[1] + self.num_auto_backups()[2] == skipped + skipped_sum: + if self.num_auto_backups()['skip'] + self.num_auto_backups()['skip_sum'] == skipped + skipped_sum: # Skipped uploads are not increasing, so uploads are not idle t+=1 continue # OK, skipped uploads are increasing, but has the number of backups stayed the same? - if self.num_auto_backups()[0] != backups: + if self.num_auto_backups()['ok'] != backups: t+=1 continue @@ -433,7 +435,7 @@ class Node(object): return self.num_auto_backups() n = self.num_auto_backups() - raise Exception('rqlite node failed to idle backups within %d seconds (%d, %d, %d, %d)' % (timeout, n[0], n[1], n[2], n[3])) + raise Exception('rqlite node failed to idle backups within %d seconds (%s)' % n) def wait_for_fsm_index(self, index, timeout=TIMEOUT): '''