Skip to content

Commit 8fb9f94

Browse files
committed
tests: fix for backup.BackupTest.test_backup_detect_corruption
1 parent fc385aa commit 8fb9f94

File tree

1 file changed

+27
-13
lines changed

1 file changed

+27
-13
lines changed

tests/backup.py

Lines changed: 27 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -469,12 +469,16 @@ def test_backup_detect_corruption(self):
469469
"postgres",
470470
"select pg_relation_filepath('t_heap')").rstrip()
471471

472+
node.stop()
473+
472474
with open(os.path.join(node.data_dir, heap_path), "rb+", 0) as f:
473475
f.seek(9000)
474476
f.write(b"bla")
475477
f.flush()
476478
f.close
477479

480+
node.slow_start()
481+
478482
try:
479483
self.backup_node(
480484
backup_dir, 'node', node,
@@ -486,23 +490,33 @@ def test_backup_detect_corruption(self):
486490
"\n Output: {0} \n CMD: {1}".format(
487491
repr(self.output), self.cmd))
488492
except ProbackupException as e:
489-
if self.remote:
493+
if self.ptrack:
490494
self.assertTrue(
491-
"ERROR: Failed to read file" in e.message and
492-
"data file checksum mismatch" in e.message,
495+
'WARNING: page verification failed, '
496+
'calculated checksum' in e.message and
497+
'ERROR: query failed: ERROR: '
498+
'invalid page in block 1 of relation' in e.message and
499+
'ERROR: Data files transferring failed' in e.message,
493500
'\n Unexpected Error Message: {0}\n CMD: {1}'.format(
494501
repr(e.message), self.cmd))
495502
else:
496-
self.assertIn(
497-
'WARNING: Corruption detected in file',
498-
e.message,
499-
'\n Unexpected Error Message: {0}\n CMD: {1}'.format(
500-
repr(e.message), self.cmd))
501-
self.assertIn(
502-
'ERROR: Data file corruption',
503-
e.message,
504-
'\n Unexpected Error Message: {0}\n CMD: {1}'.format(
505-
repr(e.message), self.cmd))
503+
if self.remote:
504+
self.assertTrue(
505+
"ERROR: Failed to read file" in e.message and
506+
"data file checksum mismatch" in e.message,
507+
'\n Unexpected Error Message: {0}\n CMD: {1}'.format(
508+
repr(e.message), self.cmd))
509+
else:
510+
self.assertIn(
511+
'WARNING: Corruption detected in file',
512+
e.message,
513+
'\n Unexpected Error Message: {0}\n CMD: {1}'.format(
514+
repr(e.message), self.cmd))
515+
self.assertIn(
516+
'ERROR: Data file corruption',
517+
e.message,
518+
'\n Unexpected Error Message: {0}\n CMD: {1}'.format(
519+
repr(e.message), self.cmd))
506520

507521
# Clean after yourself
508522
self.del_test_dir(module_name, fname)

0 commit comments

Comments
 (0)