From fd4ad9d2cb95e27f7a0f5ef627e9aab97d895f10 Mon Sep 17 00:00:00 2001 From: Grigory Smolkin Date: Sat, 20 Apr 2019 03:44:51 +0300 Subject: [PATCH] tests: fixes for remote backup and PG11 --- tests/archive.py | 2 +- tests/backup_test.py | 36 ++++++++++++++++++++++++------------ tests/delta.py | 44 ++++++++++++++++++++++++++++++-------------- tests/ptrack.py | 2 +- 4 files changed, 56 insertions(+), 28 deletions(-) diff --git a/tests/archive.py b/tests/archive.py index 685e6986..a79034f4 100644 --- a/tests/archive.py +++ b/tests/archive.py @@ -424,7 +424,7 @@ class ArchiveTest(ProbackupTest, unittest.TestCase): pg_options={ 'archive_timeout': '10s', 'checkpoint_timeout': '30s', - 'max_wal_size': '16MB'}) + 'max_wal_size': '32MB'}) self.init_pb(backup_dir) # ADD INSTANCE 'MASTER' diff --git a/tests/backup_test.py b/tests/backup_test.py index ff8e1c3e..be962ca0 100644 --- a/tests/backup_test.py +++ b/tests/backup_test.py @@ -394,18 +394,30 @@ class BackupTest(ProbackupTest, unittest.TestCase): " Output: {0} \n CMD: {1}".format( repr(self.output), self.cmd)) except ProbackupException as e: - self.assertTrue( - "WARNING: File" in e.message and - "blknum" in e.message and - "have wrong checksum" in e.message and - "try to fetch via SQL" in e.message and - "WARNING: page verification failed, " - "calculated checksum" in e.message and - "ERROR: query failed: " - "ERROR: invalid page in block" in e.message and - "query was: SELECT pg_catalog.pg_ptrack_get_block_2" in e.message, - "\n Unexpected Error Message: {0}\n CMD: {1}".format( - repr(e.message), self.cmd)) + if self.remote: + self.assertTrue( + "WARNING: File" in e.message and + "try to fetch via SQL" in e.message and + "WARNING: page verification failed, " + "calculated checksum" in e.message and + "ERROR: query failed: " + "ERROR: invalid page in block" in e.message and + "query was: SELECT pg_catalog.pg_ptrack_get_block_2" in e.message, + "\n Unexpected Error Message: {0}\n CMD: {1}".format( + repr(e.message), self.cmd)) + else: + self.assertTrue( + "WARNING: File" in e.message and + "blknum" in e.message and + "have wrong checksum" in e.message and + "try to fetch via SQL" in e.message and + "WARNING: page verification failed, " + "calculated checksum" in e.message and + "ERROR: query failed: " + "ERROR: invalid page in block" in e.message and + "query was: SELECT pg_catalog.pg_ptrack_get_block_2" in e.message, + "\n Unexpected Error Message: {0}\n CMD: {1}".format( + repr(e.message), self.cmd)) self.assertTrue( self.show_pb(backup_dir, 'node')[1]['status'] == 'ERROR', diff --git a/tests/delta.py b/tests/delta.py index cd72d0dc..a7777360 100644 --- a/tests/delta.py +++ b/tests/delta.py @@ -1216,18 +1216,30 @@ class DeltaTest(ProbackupTest, unittest.TestCase): " Output: {0} \n CMD: {1}".format( repr(self.output), self.cmd)) except ProbackupException as e: - self.assertTrue( - "WARNING: File" in e.message and - "blknum" in e.message and - "have wrong checksum" in e.message and - "try to fetch via SQL" in e.message and - "WARNING: page verification failed, " - "calculated checksum" in e.message and - "ERROR: query failed: " - "ERROR: invalid page in block" in e.message and - "query was: SELECT pg_catalog.pg_ptrack_get_block" in e.message, - "\n Unexpected Error Message: {0}\n CMD: {1}".format( - repr(e.message), self.cmd)) + if self.remote: + self.assertTrue( + "WARNING: File" in e.message and + "try to fetch via SQL" in e.message and + "WARNING: page verification failed, " + "calculated checksum" in e.message and + "ERROR: query failed: " + "ERROR: invalid page in block" in e.message and + "query was: SELECT pg_catalog.pg_ptrack_get_block" in e.message, + "\n Unexpected Error Message: {0}\n CMD: {1}".format( + repr(e.message), self.cmd)) + else: + self.assertTrue( + "WARNING: File" in e.message and + "blknum" in e.message and + "have wrong checksum" in e.message and + "try to fetch via SQL" in e.message and + "WARNING: page verification failed, " + "calculated checksum" in e.message and + "ERROR: query failed: " + "ERROR: invalid page in block" in e.message and + "query was: SELECT pg_catalog.pg_ptrack_get_block" in e.message, + "\n Unexpected Error Message: {0}\n CMD: {1}".format( + repr(e.message), self.cmd)) self.assertTrue( self.show_pb(backup_dir, 'node')[1]['status'] == 'ERROR', @@ -1345,9 +1357,13 @@ class DeltaTest(ProbackupTest, unittest.TestCase): "Expecting Error because we are backing up an instance from the past" "\n Output: {0} \n CMD: {1}".format( repr(self.output), self.cmd)) - except QueryException as e: + except ProbackupException as e: self.assertTrue( - 'Insert error message' in e.message, + 'ERROR: Current START LSN ' in e.message and + 'is lower than START LSN ' in e.message and + 'of previous backup ' in e.message and + 'It may indicate that we are trying ' + 'to backup PostgreSQL instance from the past' in e.message, '\n Unexpected Error Message: {0}\n CMD: {1}'.format( repr(e.message), self.cmd)) diff --git a/tests/ptrack.py b/tests/ptrack.py index e192b907..075df9bb 100644 --- a/tests/ptrack.py +++ b/tests/ptrack.py @@ -2563,7 +2563,7 @@ class PtrackTest(ProbackupTest, unittest.TestCase): initdb_params=['--data-checksums'], pg_options={ 'ptrack_enable': 'on', - 'max_wal_size': '16MB', + 'max_wal_size': '32MB', 'archive_timeout': '10s', 'checkpoint_timeout': '30s'})