@@ -249,7 +249,8 @@ def test_validate_corrupted_intermediate_backup(self):
249
249
250
250
# Corrupt some file
251
251
file = os .path .join (
252
- backup_dir , 'backups/node' , backup_id_2 , 'database' , file_path )
252
+ backup_dir , 'backups' , 'node' ,
253
+ backup_id_2 , 'database' , file_path )
253
254
with open (file , "r+b" , 0 ) as f :
254
255
f .seek (42 )
255
256
f .write (b"blah" )
@@ -342,7 +343,7 @@ def test_validate_corrupted_intermediate_backups(self):
342
343
343
344
# Corrupt some file in FULL backup
344
345
file_full = os .path .join (
345
- backup_dir , 'backups/ node' ,
346
+ backup_dir , 'backups' , ' node' ,
346
347
backup_id_1 , 'database' , file_path_t_heap )
347
348
with open (file_full , "rb+" , 0 ) as f :
348
349
f .seek (84 )
@@ -352,7 +353,7 @@ def test_validate_corrupted_intermediate_backups(self):
352
353
353
354
# Corrupt some file in PAGE1 backup
354
355
file_page1 = os .path .join (
355
- backup_dir , 'backups/ node' ,
356
+ backup_dir , 'backups' , ' node' ,
356
357
backup_id_2 , 'database' , file_path_t_heap_1 )
357
358
with open (file_page1 , "rb+" , 0 ) as f :
358
359
f .seek (42 )
@@ -379,8 +380,7 @@ def test_validate_corrupted_intermediate_backups(self):
379
380
self .assertTrue (
380
381
'INFO: Validating backup {0}' .format (
381
382
backup_id_1 ) in e .message and
382
- 'WARNING: Invalid CRC of backup file "{0}"' .format (
383
- file_full ) in e .message and
383
+ 'WARNING: Invalid CRC of backup file' in e .message and
384
384
'WARNING: Backup {0} data files are corrupted' .format (
385
385
backup_id_1 ) in e .message ,
386
386
'\n Unexpected Error Message: {0}\n CMD: {1}' .format (
@@ -499,15 +499,15 @@ def test_validate_corrupted_intermediate_backups_1(self):
499
499
500
500
# Corrupt some file in PAGE2 and PAGE5 backups
501
501
file_page1 = os .path .join (
502
- backup_dir , 'backups/ node' , backup_id_3 , 'database' , file_page_2 )
502
+ backup_dir , 'backups' , ' node' , backup_id_3 , 'database' , file_page_2 )
503
503
with open (file_page1 , "rb+" , 0 ) as f :
504
504
f .seek (84 )
505
505
f .write (b"blah" )
506
506
f .flush ()
507
507
f .close
508
508
509
509
file_page4 = os .path .join (
510
- backup_dir , 'backups/ node' , backup_id_6 , 'database' , file_page_5 )
510
+ backup_dir , 'backups' , ' node' , backup_id_6 , 'database' , file_page_5 )
511
511
with open (file_page4 , "rb+" , 0 ) as f :
512
512
f .seek (42 )
513
513
f .write (b"blah" )
@@ -547,8 +547,7 @@ def test_validate_corrupted_intermediate_backups_1(self):
547
547
self .assertTrue (
548
548
'INFO: Validating backup {0}' .format (
549
549
backup_id_3 ) in e .message and
550
- 'WARNING: Invalid CRC of backup file "{0}"' .format (
551
- file_page1 ) in e .message and
550
+ 'WARNING: Invalid CRC of backup file' in e .message and
552
551
'WARNING: Backup {0} data files are corrupted' .format (
553
552
backup_id_3 ) in e .message ,
554
553
'\n Unexpected Error Message: {0}\n CMD: {1}' .format (
@@ -698,15 +697,17 @@ def test_validate_specific_target_corrupted_intermediate_backups(self):
698
697
699
698
# Corrupt some file in PAGE2 and PAGE5 backups
700
699
file_page1 = os .path .join (
701
- backup_dir , 'backups/node' , backup_id_3 , 'database' , file_page_2 )
700
+ backup_dir , 'backups' , 'node' ,
701
+ backup_id_3 , 'database' , file_page_2 )
702
702
with open (file_page1 , "rb+" , 0 ) as f :
703
703
f .seek (84 )
704
704
f .write (b"blah" )
705
705
f .flush ()
706
706
f .close
707
707
708
708
file_page4 = os .path .join (
709
- backup_dir , 'backups/node' , backup_id_6 , 'database' , file_page_5 )
709
+ backup_dir , 'backups' , 'node' ,
710
+ backup_id_6 , 'database' , file_page_5 )
710
711
with open (file_page4 , "rb+" , 0 ) as f :
711
712
f .seek (42 )
712
713
f .write (b"blah" )
@@ -747,8 +748,7 @@ def test_validate_specific_target_corrupted_intermediate_backups(self):
747
748
self .assertTrue (
748
749
'INFO: Validating backup {0}' .format (
749
750
backup_id_3 ) in e .message and
750
- 'WARNING: Invalid CRC of backup file "{0}"' .format (
751
- file_page1 ) in e .message and
751
+ 'WARNING: Invalid CRC of backup file' in e .message and
752
752
'WARNING: Backup {0} data files are corrupted' .format (
753
753
backup_id_3 ) in e .message ,
754
754
'\n Unexpected Error Message: {0}\n CMD: {1}' .format (
@@ -851,7 +851,7 @@ def test_validate_instance_with_corrupted_page(self):
851
851
852
852
# Corrupt some file in FULL backup
853
853
file_full = os .path .join (
854
- backup_dir , 'backups/ node' , backup_id_2 ,
854
+ backup_dir , 'backups' , ' node' , backup_id_2 ,
855
855
'database' , file_path_t_heap1 )
856
856
with open (file_full , "rb+" , 0 ) as f :
857
857
f .seek (84 )
@@ -906,8 +906,7 @@ def test_validate_instance_with_corrupted_page(self):
906
906
self .assertTrue (
907
907
'INFO: Validating backup {0}' .format (
908
908
backup_id_2 ) in e .message and
909
- 'WARNING: Invalid CRC of backup file "{0}"' .format (
910
- file_full ) in e .message and
909
+ 'WARNING: Invalid CRC of backup file' in e .message and
911
910
'WARNING: Backup {0} data files are corrupted' .format (
912
911
backup_id_2 ) in e .message ,
913
912
'\n Unexpected Error Message: {0}\n CMD: {1}' .format (
@@ -964,7 +963,9 @@ def test_validate_instance_with_corrupted_full_and_try_restore(self):
964
963
965
964
node .safe_psql (
966
965
"postgres" ,
967
- "create table t_heap as select i as id, md5(i::text) as text, md5(repeat(i::text,10))::tsvector as tsvector from generate_series(0,10000) i" )
966
+ "create table t_heap as select i as id, md5(i::text) as text, "
967
+ "md5(repeat(i::text,10))::tsvector as tsvector "
968
+ "from generate_series(0,10000) i" )
968
969
file_path_t_heap = node .safe_psql (
969
970
"postgres" ,
970
971
"select pg_relation_filepath('t_heap')" ).rstrip ()
@@ -973,14 +974,18 @@ def test_validate_instance_with_corrupted_full_and_try_restore(self):
973
974
974
975
node .safe_psql (
975
976
"postgres" ,
976
- "insert into t_heap select i as id, md5(i::text) as text, md5(repeat(i::text,10))::tsvector as tsvector from generate_series(0,10000) i" )
977
+ "insert into t_heap select i as id, md5(i::text) as text, "
978
+ "md5(repeat(i::text,10))::tsvector as tsvector "
979
+ "from generate_series(0,10000) i" )
977
980
# PAGE1
978
981
backup_id_2 = self .backup_node (backup_dir , 'node' , node , backup_type = 'page' )
979
982
980
983
# PAGE2
981
984
node .safe_psql (
982
985
"postgres" ,
983
- "insert into t_heap select i as id, md5(i::text) as text, md5(repeat(i::text,10))::tsvector as tsvector from generate_series(20000,30000) i" )
986
+ "insert into t_heap select i as id, md5(i::text) as text, "
987
+ "md5(repeat(i::text,10))::tsvector as tsvector "
988
+ "from generate_series(20000,30000) i" )
984
989
backup_id_3 = self .backup_node (backup_dir , 'node' , node , backup_type = 'page' )
985
990
986
991
# FULL1
@@ -989,11 +994,15 @@ def test_validate_instance_with_corrupted_full_and_try_restore(self):
989
994
# PAGE3
990
995
node .safe_psql (
991
996
"postgres" ,
992
- "insert into t_heap select i as id, md5(i::text) as text, md5(repeat(i::text,10))::tsvector as tsvector from generate_series(30000,40000) i" )
997
+ "insert into t_heap select i as id, "
998
+ "md5(i::text) as text, md5(repeat(i::text,10))::tsvector as tsvector "
999
+ "from generate_series(30000,40000) i" )
993
1000
backup_id_5 = self .backup_node (backup_dir , 'node' , node , backup_type = 'page' )
994
1001
995
1002
# Corrupt some file in FULL backup
996
- file_full = os .path .join (backup_dir , 'backups/node' , backup_id_1 , 'database' , file_path_t_heap )
1003
+ file_full = os .path .join (
1004
+ backup_dir , 'backups' , 'node' ,
1005
+ backup_id_1 , 'database' , file_path_t_heap )
997
1006
with open (file_full , "rb+" , 0 ) as f :
998
1007
f .seek (84 )
999
1008
f .write (b"blah" )
@@ -1009,7 +1018,7 @@ def test_validate_instance_with_corrupted_full_and_try_restore(self):
1009
1018
self .assertTrue (
1010
1019
'INFO: Validating backup {0}' .format (backup_id_1 ) in e .message
1011
1020
and "INFO: Validate backups of the instance 'node'" in e .message
1012
- and 'WARNING: Invalid CRC of backup file "{0}"' . format ( file_full ) in e .message
1021
+ and 'WARNING: Invalid CRC of backup file' in e .message
1013
1022
and 'WARNING: Backup {0} data files are corrupted' .format (backup_id_1 ) in e .message ,
1014
1023
'\n Unexpected Error Message: {0}\n CMD: {1}' .format (repr (e .message ), self .cmd ))
1015
1024
@@ -1050,7 +1059,10 @@ def test_validate_instance_with_corrupted_full(self):
1050
1059
1051
1060
node .safe_psql (
1052
1061
"postgres" ,
1053
- "create table t_heap as select i as id, md5(i::text) as text, md5(repeat(i::text,10))::tsvector as tsvector from generate_series(0,10000) i" )
1062
+ "create table t_heap as select i as id, "
1063
+ "md5(i::text) as text, md5(repeat(i::text,10))::tsvector as tsvector "
1064
+ "from generate_series(0,10000) i" )
1065
+
1054
1066
file_path_t_heap = node .safe_psql (
1055
1067
"postgres" ,
1056
1068
"select pg_relation_filepath('t_heap')" ).rstrip ()
@@ -1059,27 +1071,40 @@ def test_validate_instance_with_corrupted_full(self):
1059
1071
1060
1072
node .safe_psql (
1061
1073
"postgres" ,
1062
- "insert into t_heap select i as id, md5(i::text) as text, md5(repeat(i::text,10))::tsvector as tsvector from generate_series(0,10000) i" )
1074
+ "insert into t_heap select i as id, md5(i::text) as text, "
1075
+ "md5(repeat(i::text,10))::tsvector as tsvector "
1076
+ "from generate_series(0,10000) i" )
1077
+
1063
1078
# PAGE1
1064
- backup_id_2 = self .backup_node (backup_dir , 'node' , node , backup_type = 'page' )
1079
+ backup_id_2 = self .backup_node (
1080
+ backup_dir , 'node' , node , backup_type = 'page' )
1065
1081
1066
1082
# PAGE2
1067
1083
node .safe_psql (
1068
1084
"postgres" ,
1069
- "insert into t_heap select i as id, md5(i::text) as text, md5(repeat(i::text,10))::tsvector as tsvector from generate_series(20000,30000) i" )
1070
- backup_id_3 = self .backup_node (backup_dir , 'node' , node , backup_type = 'page' )
1085
+ "insert into t_heap select i as id, md5(i::text) as text, "
1086
+ "md5(repeat(i::text,10))::tsvector as tsvector "
1087
+ "from generate_series(20000,30000) i" )
1088
+
1089
+ backup_id_3 = self .backup_node (
1090
+ backup_dir , 'node' , node , backup_type = 'page' )
1071
1091
1072
1092
# FULL1
1073
- backup_id_4 = self .backup_node (backup_dir , 'node' , node )
1093
+ backup_id_4 = self .backup_node (
1094
+ backup_dir , 'node' , node )
1074
1095
1075
1096
# PAGE3
1076
1097
node .safe_psql (
1077
1098
"postgres" ,
1078
- "insert into t_heap select i as id, md5(i::text) as text, md5(repeat(i::text,10))::tsvector as tsvector from generate_series(30000,40000) i" )
1099
+ "insert into t_heap select i as id, "
1100
+ "md5(i::text) as text, md5(repeat(i::text,10))::tsvector as tsvector "
1101
+ "from generate_series(30000,40000) i" )
1079
1102
backup_id_5 = self .backup_node (backup_dir , 'node' , node , backup_type = 'page' )
1080
1103
1081
1104
# Corrupt some file in FULL backup
1082
- file_full = os .path .join (backup_dir , 'backups/node' , backup_id_1 , 'database' , file_path_t_heap )
1105
+ file_full = os .path .join (
1106
+ backup_dir , 'backups' , 'node' ,
1107
+ backup_id_1 , 'database' , file_path_t_heap )
1083
1108
with open (file_full , "rb+" , 0 ) as f :
1084
1109
f .seek (84 )
1085
1110
f .write (b"blah" )
@@ -1089,13 +1114,16 @@ def test_validate_instance_with_corrupted_full(self):
1089
1114
# Validate Instance
1090
1115
try :
1091
1116
self .validate_pb (backup_dir , 'node' )
1092
- self .assertEqual (1 , 0 , "Expecting Error because of data files corruption.\n Output: {0} \n CMD: {1}" .format (
1093
- repr (self .output ), self .cmd ))
1117
+ self .assertEqual (
1118
+ 1 , 0 ,
1119
+ "Expecting Error because of data files corruption.\n "
1120
+ "Output: {0} \n CMD: {1}" .format (
1121
+ repr (self .output ), self .cmd ))
1094
1122
except ProbackupException as e :
1095
1123
self .assertTrue (
1096
1124
'INFO: Validating backup {0}' .format (backup_id_1 ) in e .message
1097
1125
and "INFO: Validate backups of the instance 'node'" in e .message
1098
- and 'WARNING: Invalid CRC of backup file "{0}"' . format ( file_full ) in e .message
1126
+ and 'WARNING: Invalid CRC of backup file' in e .message
1099
1127
and 'WARNING: Backup {0} data files are corrupted' .format (backup_id_1 ) in e .message ,
1100
1128
'\n Unexpected Error Message: {0}\n CMD: {1}' .format (repr (e .message ), self .cmd ))
1101
1129
0 commit comments