diff --git a/src/backup.c b/src/backup.c index 1d58d9f2..0dd681fa 100644 --- a/src/backup.c +++ b/src/backup.c @@ -538,8 +538,8 @@ do_backup_instance(void) } /* - * It`s illegal to take PTRACK backup if LSN from ptrack_control() is not equal to - * stort_backup LSN of previous backup + * It`s illegal to take PTRACK backup if LSN from ptrack_control() is not + * equal to stop_lsn of previous backup. */ if (current.backup_mode == BACKUP_MODE_DIFF_PTRACK) { @@ -1193,7 +1193,8 @@ pg_ptrack_support(void) /* Now we support only ptrack versions upper than 1.5 */ if (strcmp(PQgetvalue(res_db, 0, 0), "1.5") != 0 && - strcmp(PQgetvalue(res_db, 0, 0), "1.6") != 0) + strcmp(PQgetvalue(res_db, 0, 0), "1.6") != 0 && + strcmp(PQgetvalue(res_db, 0, 0), "1.7") != 0) { elog(WARNING, "Update your ptrack to the version 1.5 or upper. Current version is %s", PQgetvalue(res_db, 0, 0)); PQclear(res_db); @@ -1283,7 +1284,9 @@ pg_ptrack_clear(void) tblspcOid = atoi(PQgetvalue(res_db, i, 2)); tmp_conn = pgut_connect(dbname); - res = pgut_execute(tmp_conn, "SELECT pg_catalog.pg_ptrack_clear()", 0, NULL); + res = pgut_execute(tmp_conn, "SELECT pg_catalog.pg_ptrack_clear()", + 0, NULL); + PQclear(res); sprintf(params[0], "%i", dbOid); sprintf(params[1], "%i", tblspcOid); @@ -1512,7 +1515,8 @@ wait_wal_lsn(XLogRecPtr lsn, bool is_start_lsn, bool wait_prev_segment) if (wait_prev_segment) elog(LOG, "Looking for segment: %s", wal_segment); else - elog(LOG, "Looking for LSN: %X/%X in segment: %s", (uint32) (lsn >> 32), (uint32) lsn, wal_segment); + elog(LOG, "Looking for LSN: %X/%X in segment: %s", + (uint32) (lsn >> 32), (uint32) lsn, wal_segment); #ifdef HAVE_LIBZ snprintf(gz_wal_segment_path, sizeof(gz_wal_segment_path), "%s.gz", @@ -2648,7 +2652,8 @@ get_last_ptrack_lsn(void) uint32 lsn_lo; XLogRecPtr lsn; - res = pgut_execute(backup_conn, "select pg_catalog.pg_ptrack_control_lsn()", 0, NULL); + res = pgut_execute(backup_conn, "select pg_catalog.pg_ptrack_control_lsn()", + 0, NULL); /* Extract timeline and LSN from results of pg_start_backup() */ XLogDataFromLSN(PQgetvalue(res, 0, 0), &lsn_hi, &lsn_lo); diff --git a/tests/__init__.py b/tests/__init__.py index f7268469..3593f657 100644 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -21,7 +21,6 @@ def load_tests(loader, tests, pattern): # suite.addTests(loader.loadTestsFromModule(cfs_validate_backup)) # suite.addTests(loader.loadTestsFromModule(logging)) suite.addTests(loader.loadTestsFromModule(compression)) - suite.addTests(loader.loadTestsFromModule(compatibility)) suite.addTests(loader.loadTestsFromModule(delete_test)) suite.addTests(loader.loadTestsFromModule(delta)) suite.addTests(loader.loadTestsFromModule(exclude)) @@ -62,8 +61,6 @@ def load_tests(loader, tests, pattern): # logging: # https://jira.postgrespro.ru/browse/PGPRO-584 # https://jira.postgrespro.ru/secure/attachment/20420/20420_doc_logging.md -# ptrack: -# ptrack backup on replica should work correctly # archive: # immediate recovery and full recovery # backward compatibility: diff --git a/tests/backup_test.py b/tests/backup_test.py index 1fa74643..b21aab9b 100644 --- a/tests/backup_test.py +++ b/tests/backup_test.py @@ -520,3 +520,6 @@ class BackupTest(ProbackupTest, unittest.TestCase): if self.paranoia: pgdata_restored = self.pgdata_content(node.data_dir) self.compare_pgdata(pgdata, pgdata_restored) + + # Clean after yourself + self.del_test_dir(module_name, fname)