@@ -469,12 +469,16 @@ def test_backup_detect_corruption(self):
469
469
"postgres" ,
470
470
"select pg_relation_filepath('t_heap')" ).rstrip ()
471
471
472
+ node .stop ()
473
+
472
474
with open (os .path .join (node .data_dir ,heap_path ),"rb+" ,0 )as f :
473
475
f .seek (9000 )
474
476
f .write (b"bla" )
475
477
f .flush ()
476
478
f .close
477
479
480
+ node .slow_start ()
481
+
478
482
try :
479
483
self .backup_node (
480
484
backup_dir ,'node' ,node ,
@@ -486,23 +490,33 @@ def test_backup_detect_corruption(self):
486
490
"\n Output: {0}\n CMD: {1}" .format (
487
491
repr (self .output ),self .cmd ))
488
492
except ProbackupException as e :
489
- if self .remote :
493
+ if self .ptrack :
490
494
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 ,
493
500
'\n Unexpected Error Message: {0}\n CMD: {1}' .format (
494
501
repr (e .message ),self .cmd ))
495
502
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 ))
506
520
507
521
# Clean after yourself
508
522
self .del_test_dir (module_name ,fname )