mirror of
https://github.com/postgrespro/pg_probackup.git
synced 2026-06-21 01:34:15 +02:00
Merge branch 'master' into release_2_4
This commit is contained in:
+1
-1
@@ -92,7 +92,7 @@ extern const char *PROGRAM_EMAIL;
|
||||
#define OUT_BUF_SIZE (512 * 1024)
|
||||
|
||||
/* retry attempts */
|
||||
#define PAGE_READ_ATTEMPTS 100
|
||||
#define PAGE_READ_ATTEMPTS 300
|
||||
|
||||
/* max size of note, that can be added to backup */
|
||||
#define MAX_NOTE_SIZE 1024
|
||||
|
||||
+1
-1
@@ -976,7 +976,7 @@ class ArchiveTest(ProbackupTest, unittest.TestCase):
|
||||
self.backup_node(backup_dir, 'master', replica)
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, nodes=[master, replica])
|
||||
|
||||
# @unittest.expectedFailure
|
||||
# @unittest.skip("skip")
|
||||
|
||||
+5
-5
@@ -1070,7 +1070,7 @@ class BackupTest(ProbackupTest, unittest.TestCase):
|
||||
self.compare_pgdata(pgdata, pgdata_restored)
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, nodes=[node])
|
||||
|
||||
# @unittest.skip("skip")
|
||||
def test_tablespace_handling_1(self):
|
||||
@@ -1603,7 +1603,7 @@ class BackupTest(ProbackupTest, unittest.TestCase):
|
||||
options=['--stream', '--slot=slot_1', '--temp-slot'])
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, [node])
|
||||
|
||||
# @unittest.skip("skip")
|
||||
def test_backup_concurrent_drop_table(self):
|
||||
@@ -1648,7 +1648,7 @@ class BackupTest(ProbackupTest, unittest.TestCase):
|
||||
self.assertEqual(show_backup['status'], "OK")
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, nodes=[node])
|
||||
|
||||
# @unittest.skip("skip")
|
||||
def test_pg_11_adjusted_wal_segment_size(self):
|
||||
@@ -1932,7 +1932,7 @@ class BackupTest(ProbackupTest, unittest.TestCase):
|
||||
os.chmod(full_path, 700)
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, [node])
|
||||
|
||||
# @unittest.skip("skip")
|
||||
def test_basic_missing_dir_permissions(self):
|
||||
@@ -1975,7 +1975,7 @@ class BackupTest(ProbackupTest, unittest.TestCase):
|
||||
os.chmod(full_path, 700)
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, [node])
|
||||
|
||||
# @unittest.skip("skip")
|
||||
def test_backup_with_least_privileges_role(self):
|
||||
|
||||
+1
-1
@@ -348,7 +348,7 @@ class CheckdbTest(ProbackupTest, unittest.TestCase):
|
||||
log_file_content)
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, [node])
|
||||
|
||||
# @unittest.skip("skip")
|
||||
def test_checkdb_block_validation_sanity(self):
|
||||
|
||||
@@ -115,10 +115,9 @@ class CompressionTest(ProbackupTest, unittest.TestCase):
|
||||
|
||||
delta_result_new = node.execute("postgres", "SELECT * FROM t_heap")
|
||||
self.assertEqual(delta_result, delta_result_new)
|
||||
node.cleanup()
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, [node])
|
||||
|
||||
def test_compression_archive_zlib(self):
|
||||
"""
|
||||
|
||||
+8
-15
@@ -45,39 +45,32 @@ class DeltaTest(ProbackupTest, unittest.TestCase):
|
||||
"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,1024) i;"
|
||||
)
|
||||
"from generate_series(0,1024) i;")
|
||||
|
||||
node.safe_psql(
|
||||
"postgres",
|
||||
"vacuum t_heap"
|
||||
)
|
||||
"vacuum t_heap")
|
||||
|
||||
self.backup_node(backup_dir, 'node', node, options=['--stream'])
|
||||
|
||||
node.safe_psql(
|
||||
"postgres",
|
||||
"delete from t_heap where ctid >= '(11,0)'"
|
||||
)
|
||||
"delete from t_heap where ctid >= '(11,0)'")
|
||||
|
||||
node.safe_psql(
|
||||
"postgres",
|
||||
"vacuum t_heap"
|
||||
)
|
||||
"vacuum t_heap")
|
||||
|
||||
self.backup_node(
|
||||
backup_dir, 'node', node, backup_type='delta'
|
||||
)
|
||||
backup_dir, 'node', node, backup_type='delta')
|
||||
|
||||
self.backup_node(
|
||||
backup_dir, 'node', node, backup_type='delta'
|
||||
)
|
||||
backup_dir, 'node', node, backup_type='delta')
|
||||
|
||||
pgdata = self.pgdata_content(node.data_dir)
|
||||
|
||||
self.restore_node(
|
||||
backup_dir, 'node', node_restored
|
||||
)
|
||||
backup_dir, 'node', node_restored)
|
||||
|
||||
# Physical comparison
|
||||
pgdata_restored = self.pgdata_content(node_restored.data_dir)
|
||||
@@ -87,7 +80,7 @@ class DeltaTest(ProbackupTest, unittest.TestCase):
|
||||
node_restored.slow_start()
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, [node, node_restored])
|
||||
|
||||
# @unittest.skip("skip")
|
||||
def test_delta_vacuum_truncate_1(self):
|
||||
|
||||
@@ -1448,13 +1448,16 @@ class ProbackupTest(object):
|
||||
def get_bin_path(self, binary):
|
||||
return testgres.get_bin_path(binary)
|
||||
|
||||
def del_test_dir(self, module_name, fname):
|
||||
def del_test_dir(self, module_name, fname, nodes=[]):
|
||||
""" Del testdir and optimistically try to del module dir"""
|
||||
try:
|
||||
testgres.clean_all()
|
||||
except:
|
||||
pass
|
||||
|
||||
for node in nodes:
|
||||
node.stop()
|
||||
|
||||
shutil.rmtree(
|
||||
os.path.join(
|
||||
self.tmp_path,
|
||||
|
||||
+1
-2
@@ -100,8 +100,7 @@ class MergeTest(ProbackupTest, unittest.TestCase):
|
||||
self.assertEqual(count1, count2)
|
||||
|
||||
# Clean after yourself
|
||||
node.cleanup()
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, [node])
|
||||
|
||||
def test_merge_compressed_backups(self):
|
||||
"""
|
||||
|
||||
+1
-1
@@ -100,7 +100,7 @@ class PageTest(ProbackupTest, unittest.TestCase):
|
||||
self.assertEqual(result1, result2)
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, [node, node_restored])
|
||||
|
||||
# @unittest.skip("skip")
|
||||
def test_page_vacuum_truncate_1(self):
|
||||
|
||||
+1
-1
@@ -340,7 +340,7 @@ class ReplicaTest(ProbackupTest, unittest.TestCase):
|
||||
options=['--archive-timeout=30s', '--stream'])
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, [master, replica])
|
||||
|
||||
# @unittest.skip("skip")
|
||||
def test_take_backup_from_delayed_replica(self):
|
||||
|
||||
+3
-3
@@ -1009,7 +1009,7 @@ class RetentionTest(ProbackupTest, unittest.TestCase):
|
||||
'FULL')
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, [node])
|
||||
|
||||
# @unittest.skip("skip")
|
||||
def test_basic_window_merge_multiple_descendants_1(self):
|
||||
@@ -1276,7 +1276,7 @@ class RetentionTest(ProbackupTest, unittest.TestCase):
|
||||
'--delete-expired', '--log-level-console=log'])
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, [node])
|
||||
|
||||
# @unittest.skip("skip")
|
||||
def test_window_chains(self):
|
||||
@@ -2534,4 +2534,4 @@ class RetentionTest(ProbackupTest, unittest.TestCase):
|
||||
|
||||
self.validate_pb(backup_dir, 'node')
|
||||
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, [node])
|
||||
|
||||
+1
-1
@@ -298,7 +298,7 @@ class ValidateTest(ProbackupTest, unittest.TestCase):
|
||||
'Backup STATUS should be "ORPHAN"')
|
||||
|
||||
# Clean after yourself
|
||||
self.del_test_dir(module_name, fname)
|
||||
self.del_test_dir(module_name, fname, [node])
|
||||
|
||||
# @unittest.skip("skip")
|
||||
def test_validate_corrupted_intermediate_backups(self):
|
||||
|
||||
Reference in New Issue
Block a user