1
0
mirror of https://github.com/postgrespro/pg_probackup.git synced 2024-11-30 09:47:53 +02:00
pg_probackup/tests
2023-10-27 19:50:03 +02:00
..
expected PBCKP-604: Allow partial incremental restore only with a flag --destroy-all-other-dbs 2023-05-26 19:36:05 +03:00
helpers PBCKP-91: delete "\r" in windows command output. 2023-04-18 21:25:30 +03:00
__init__.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
archive_test.py [PBCKP-423] and backport cleanup_ptrack for test_archive_push_sanity 2023-01-12 00:04:47 +03:00
auth_test.py PBCKP-91 fix grammar in probackup's log messages 2023-03-27 21:47:17 +03:00
backup_test.py fix tests for Pg16 and EE16 2023-10-27 19:50:03 +02:00
catchup_test.py PBCKP-732 ignore PGDATA setting in catchup mode as we use --source-pgdata instead 2023-09-21 11:08:24 +00:00
cfs_backup_test.py [PBCKP-287] simplify and fix cfs chaining 2023-01-12 17:30:54 +03:00
cfs_catchup_test.py more usages for table_checksum 2022-12-06 01:59:14 +03:00
cfs_restore_test.py Fix tests test_restore_from_fullbackup_to_new_location and test_restore_from_fullbackup_to_new_location_5_jobs 2022-12-15 13:37:15 +03:00
cfs_validate_backup_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
checkdb_test.py PBCKP-91 fix grammar in probackup's log messages 2023-03-27 21:47:17 +03:00
compatibility_test.py compatibility tests: skip if PGPROBACKUPBIN_OLD is not set 2023-03-07 18:23:48 +03:00
compression_test.py PBCKP-91 fix grammar in probackup's log messages 2023-03-27 21:47:17 +03:00
config_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
CVE_2018_1058_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
delete_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
delta_test.py more usages for table_checksum 2022-12-06 01:59:14 +03:00
exclude_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
external_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
false_positive_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
incr_restore_test.py PBCKP-604: Allow partial incremental restore only with a flag --destroy-all-other-dbs 2023-05-26 19:36:05 +03:00
init_test.py PBCKP-91 fix grammar in probackup's log messages 2023-03-27 21:47:17 +03:00
locking_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
logging_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
merge_test.py PBCKP-553 fix a typo in merge preconditions check 2023-03-06 13:34:53 +03:00
option_test.py PBCKP-91 fix grammar in probackup's log messages 2023-03-27 21:47:17 +03:00
page_test.py more usages for table_checksum 2022-12-06 01:59:14 +03:00
pgpro560_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
pgpro589_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
pgpro2068_test.py get rid of plpython usage 2022-12-04 05:33:52 +03:00
ptrack_test.py more usages for table_checksum 2022-12-06 01:59:14 +03:00
Readme.md [PBCKP-220] removed FULL tests, PGPROBACKUP=ON and other flags added on CI 2022-07-04 06:04:17 +03:00
remote_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
replica_test.py more usages for table_checksum 2022-12-06 01:59:14 +03:00
restore_test.py PBCKP-91 fix grammar in probackup's log messages 2023-03-27 21:47:17 +03:00
retention_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
set_backup_test.py PBCKP-91 fix grammar in probackup's log messages 2023-03-27 21:47:17 +03:00
show_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
time_consuming_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
time_stamp_test.py PBCKP-306 add '_test' to test files 2022-11-25 12:57:43 +03:00
validate_test.py Merge branch 'REL_2_5-PBCKP-360' into REL_2_5 2022-11-29 20:17:46 +03:00

****see wiki

Note: For now these tests work on Linux and "kinda" work on Windows
Note: tests require python3 to work properly.
Windows Note: For tablespaces tests to work on Windows, you should explicitly(!) grant current user full access to tmp_dirs
Check physical correctness of restored instances:
 Apply this patch to disable HINT BITS: https://gist.github.com/gsmol/2bb34fd3ba31984369a72cc1c27a36b6
 export PG_PROBACKUP_PARANOIA=ON

Check archive compression:
 export ARCHIVE_COMPRESSION=ON

Enable compatibility tests:
 export PGPROBACKUPBIN_OLD=/path/to/previous_version_pg_probackup_binary

Specify path to pg_probackup binary file. By default tests use <Path to Git repository>/pg_probackup/
 export PGPROBACKUPBIN=<path to pg_probackup>

Remote backup depends on key authentication to local machine via ssh as current user.
 export PGPROBACKUP_SSH_REMOTE=ON

Run tests that are relied on advanced debugging features. For this mode, pg_probackup should be compiled without optimizations. For example:
CFLAGS="-O0" ./configure --prefix=/path/to/prefix --enable-debug --enable-cassert --enable-depend --enable-tap-tests --enable-nls

 export PGPROBACKUP_GDB=ON

Run suit of basic simple tests:
 export PG_PROBACKUP_TEST_BASIC=ON

Run ptrack tests:
 export PG_PROBACKUP_PTRACK=ON

Run long (time consuming) tests:
 export PG_PROBACKUP_LONG=ON

Usage:
 sudo echo 0 > /proc/sys/kernel/yama/ptrace_scope
 pip install testgres
 export PG_CONFIG=/path/to/pg_config
 python -m unittest [-v] tests[.specific_module][.class.test]

Troubleshooting FAQ

Python tests failure

1. Could not open extension "..."

testgres.exceptions.QueryException ERROR:  could not open extension control file "<postgres_build_dir>/share/extension/amcheck.control": No such file or directory

Solution:

You have no <postgres_src_root>/contrib/... extension installed, please do

cd <postgres_src_root>
make install-world