You've already forked pgbackrest
							
							
				mirror of
				https://github.com/pgbackrest/pgbackrest.git
				synced 2025-10-30 23:37:45 +02:00 
			
		
		
		
	Update integration tests in mock/all that use test points.
Test points will not be available in the C code so update these tests as best as possible without using them. This represents a loss of coverage for the Perl code (soon to be removed) which will be made up in the C code with unit tests.
This commit is contained in:
		| @@ -2674,199 +2674,28 @@ db-version="9.4" | ||||
| backrest-checksum="[CHECKSUM]" | ||||
|  | ||||
| incr backup - remove files - but won't affect manifest (db-master host) | ||||
| > [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --no-online --stanza=db backup --test --test-delay=1 --test-point=manifest-build=y | ||||
| > [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --no-online --stanza=db backup | ||||
| ------------------------------------------------------------------------------------------------------------------------------------ | ||||
| P00   INFO: backup command begin [BACKREST-VERSION]: --compress --compress-level=3 --config=[TEST_PATH]/db-master/pgbackrest.conf --db-timeout=45 --exclude=postgresql.auto.conf --exclude=pg_log/ --exclude=pg_log2 --exclude=apipe --lock-path=[TEST_PATH]/db-master/lock --log-level-console=detail --log-level-file=trace --log-level-stderr=off --log-path=[TEST_PATH]/db-master/log --log-subprocess --no-log-timestamp --no-online --pg1-path=[TEST_PATH]/db-master/db/base-2 --protocol-timeout=60 --repo1-path=[TEST_PATH]/db-master/repo --stanza=db --start-fast --test --test-delay=1 --test-point=manifest-build=y | ||||
| P00   INFO: backup command begin [BACKREST-VERSION]: --compress --compress-level=3 --config=[TEST_PATH]/db-master/pgbackrest.conf --db-timeout=45 --exclude=postgresql.auto.conf --exclude=pg_log/ --exclude=pg_log2 --exclude=apipe --lock-path=[TEST_PATH]/db-master/lock --log-level-console=detail --log-level-file=trace --log-level-stderr=off --log-path=[TEST_PATH]/db-master/log --log-subprocess --no-log-timestamp --no-online --pg1-path=[TEST_PATH]/db-master/db/base-2 --protocol-timeout=60 --repo1-path=[TEST_PATH]/db-master/repo --stanza=db --start-fast | ||||
| P00   WARN: option repo1-retention-full is not set, the repository may run out of space | ||||
|             HINT: to retain full backups indefinitely (without warning), set option 'repo1-retention-full' to the maximum. | ||||
| P00   INFO: last backup label = [BACKUP-DIFF-3], version = [VERSION-1] | ||||
| P00   WARN: incr backup cannot alter compress option to 'true', reset to value in [BACKUP-DIFF-3] | ||||
| P00   WARN: incr backup cannot alter 'checksum-page' option to 'false', reset to 'true' from [BACKUP-DIFF-3] | ||||
| P00   TEST:         PgBaCkReStTeSt-MANIFEST-BUILD-PgBaCkReStTeSt | ||||
| P00   INFO: incr backup size = 0B | ||||
| P00   INFO: new backup label = [BACKUP-INCR-5] | ||||
| P00   INFO: backup command end: completed successfully | ||||
| P00   INFO: expire command begin [BACKREST-VERSION]: --config=[TEST_PATH]/db-master/pgbackrest.conf --lock-path=[TEST_PATH]/db-master/lock --log-level-console=detail --log-level-file=trace --log-level-stderr=off --log-path=[TEST_PATH]/db-master/log --log-subprocess --no-log-timestamp --repo1-path=[TEST_PATH]/db-master/repo --stanza=db | ||||
| P00   INFO: option 'repo1-retention-archive' is not set - archive logs will not be expired | ||||
| P00   INFO: expire command end: completed successfully | ||||
|  | ||||
| + supplemental file: [TEST_PATH]/db-master/pgbackrest.conf | ||||
| ---------------------------------------------------------- | ||||
| [db] | ||||
| pg1-path=[TEST_PATH]/db-master/db/base-2 | ||||
|  | ||||
| [db:restore] | ||||
| tablespace-map=1=[TEST_PATH]/db-master/db/tablespace/ts1-2 | ||||
| tablespace-map=2=[TEST_PATH]/db-master/db/tablespace/ts2-2 | ||||
|  | ||||
| [global] | ||||
| compress=y | ||||
| compress-level=3 | ||||
| db-timeout=45 | ||||
| lock-path=[TEST_PATH]/db-master/lock | ||||
| log-level-console=detail | ||||
| log-level-file=trace | ||||
| log-level-stderr=off | ||||
| log-path=[TEST_PATH]/db-master/log | ||||
| log-subprocess=y | ||||
| log-timestamp=n | ||||
| protocol-timeout=60 | ||||
| repo1-path=[TEST_PATH]/db-master/repo | ||||
| spool-path=[TEST_PATH]/db-master/spool | ||||
|  | ||||
| [global:backup] | ||||
| archive-copy=y | ||||
| exclude=postgresql.auto.conf | ||||
| exclude=pg_log/ | ||||
| exclude=pg_log2 | ||||
| exclude=apipe | ||||
| start-fast=y | ||||
|  | ||||
| + supplemental file: [TEST_PATH]/db-master/repo/backup/db/[BACKUP-INCR-5]/backup.manifest | ||||
| ----------------------------------------------------------------------------------------- | ||||
| [backrest] | ||||
| backrest-format=5 | ||||
| backrest-version="[VERSION-1]" | ||||
|  | ||||
| [backup] | ||||
| backup-label="[BACKUP-INCR-5]" | ||||
| backup-prior="[BACKUP-DIFF-3]" | ||||
| backup-timestamp-copy-start=[TIMESTAMP] | ||||
| backup-timestamp-start=[TIMESTAMP] | ||||
| backup-timestamp-stop=[TIMESTAMP] | ||||
| backup-type="incr" | ||||
|  | ||||
| [backup:db] | ||||
| db-catalog-version=201409291 | ||||
| db-control-version=942 | ||||
| db-id=1 | ||||
| db-system-id=1000000000000000094 | ||||
| db-version="9.4" | ||||
|  | ||||
| [backup:option] | ||||
| option-archive-check=true | ||||
| option-archive-copy=true | ||||
| option-backup-standby=false | ||||
| option-buffer-size=4194304 | ||||
| option-checksum-page=true | ||||
| option-compress=false | ||||
| option-compress-level=3 | ||||
| option-compress-level-network=3 | ||||
| option-delta=false | ||||
| option-hardlink=false | ||||
| option-online=false | ||||
| option-process-max=1 | ||||
|  | ||||
| [backup:target] | ||||
| pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"} | ||||
| pg_tblspc/2={"path":"[TEST_PATH]/db-master/db/tablespace/ts2-2","tablespace-id":"2","tablespace-name":"ts2","type":"link"} | ||||
|  | ||||
| [target:file] | ||||
| pg_data/PG_VERSION={"checksum":"184473f470864e067ee3a22e64b47b0a1c356f29","master":true,"reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","master":true,"reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/1/12000={"checksum":"22c98d248ff548311eda88559e4a8405ed77c003","checksum-page":true,"reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/1/PG_VERSION={"checksum":"184473f470864e067ee3a22e64b47b0a1c356f29","mode":"0660","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","checksum-page":false,"reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/16384/PG_VERSION={"checksum":"184473f470864e067ee3a22e64b47b0a1c356f29","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/32768/33000={"checksum":"7a16d165e4775f7c92e8cdf60c0af57313f0bf90","checksum-page":true,"reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/32768/33000.32767={"checksum":"6e99b589e550e68e934fd235ccba59fe5b592a9e","checksum-page":true,"reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/32768/33001={"checksum":"6bf316f11d28c28914ea9be92c00de9bea6d9a6b","checksum-page":false,"checksum-page-error":[0,[3,5],7],"reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/32768/44000_init={"checksum":"7a16d165e4775f7c92e8cdf60c0af57313f0bf90","checksum-page":true,"reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/32768/PG_VERSION={"checksum":"184473f470864e067ee3a22e64b47b0a1c356f29","reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/changecontent.txt={"checksum":"a094d94583e209556d03c3c5da33131a065f1689","master":true,"reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/changetime.txt={"checksum":"88087292ed82e26f3eb824d0bffc05ccf7a30f8d","master":true,"reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} | ||||
| pg_data/global/pg_control={"checksum":"4c77c900f7af0d9ab13fa9982051a42e0b637f6c","master":true,"reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} | ||||
| pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","master":true,"reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} | ||||
| pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","master":true,"reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-2]} | ||||
| pg_data/special-!_.*'()&!@;:+,?={"master":true,"reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/zero_from_start={"master":true,"reference":"[BACKUP-FULL-2]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/zerosize.txt={"master":true,"reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-2]} | ||||
| pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","checksum-page":false,"reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","checksum-page":false,"reference":"[BACKUP-DIFF-3]","size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
|  | ||||
| [target:file:default] | ||||
| group="[GROUP-1]" | ||||
| master=false | ||||
| mode="0600" | ||||
| user="[USER-1]" | ||||
|  | ||||
| [target:link] | ||||
| pg_data/pg_tblspc/2={"destination":"[TEST_PATH]/db-master/db/tablespace/ts2-2"} | ||||
|  | ||||
| [target:link:default] | ||||
| group="[GROUP-1]" | ||||
| user="[USER-1]" | ||||
|  | ||||
| [target:path] | ||||
| pg_data={"mode":"0777"} | ||||
| pg_data/base={} | ||||
| pg_data/base/1={} | ||||
| pg_data/base/16384={} | ||||
| pg_data/base/32768={} | ||||
| pg_data/global={} | ||||
| pg_data/pg_clog={} | ||||
| pg_data/pg_dynshmem={} | ||||
| pg_data/pg_log={} | ||||
| pg_data/pg_notify={} | ||||
| pg_data/pg_replslot={} | ||||
| pg_data/pg_serial={} | ||||
| pg_data/pg_snapshots={} | ||||
| pg_data/pg_stat={} | ||||
| pg_data/pg_stat_tmp={} | ||||
| pg_data/pg_subtrans={} | ||||
| pg_data/pg_tblspc={} | ||||
| pg_tblspc={"mode":"0777"} | ||||
| pg_tblspc/2={} | ||||
| pg_tblspc/2/[TS_PATH-1]={} | ||||
| pg_tblspc/2/[TS_PATH-1]/32768={} | ||||
|  | ||||
| [target:path:default] | ||||
| group="[GROUP-1]" | ||||
| mode="0700" | ||||
| user="[USER-1]" | ||||
|  | ||||
| [backrest] | ||||
| backrest-checksum="[CHECKSUM]" | ||||
|  | ||||
| + supplemental file: [TEST_PATH]/db-master/repo/backup/db/backup.info | ||||
| --------------------------------------------------------------------- | ||||
| [backrest] | ||||
| backrest-format=5 | ||||
| backrest-version="[VERSION-1]" | ||||
|  | ||||
| [backup:current] | ||||
| [BACKUP-FULL-2]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"full","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-DIFF-2]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-FULL-2]","backup-reference":["[BACKUP-FULL-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"diff","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-DIFF-2]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-4]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-INCR-3]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-2]","[BACKUP-INCR-3]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-DIFF-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-FULL-2]","backup-reference":["[BACKUP-FULL-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"diff","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-5]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-DIFF-3]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-3]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
|  | ||||
| [db] | ||||
| db-catalog-version=201409291 | ||||
| db-control-version=942 | ||||
| db-id=1 | ||||
| db-system-id=1000000000000000094 | ||||
| db-version="9.4" | ||||
|  | ||||
| [db:history] | ||||
| 1={"db-catalog-version":201409291,"db-control-version":942,"db-system-id":1000000000000000094,"db-version":"9.4"} | ||||
|  | ||||
| [backrest] | ||||
| backrest-checksum="[CHECKSUM]" | ||||
| P00  ERROR: [055]: no files have changed since the last backup - this seems unlikely | ||||
| P00   INFO: backup command end: aborted with exception [055] | ||||
|  | ||||
| diff backup - remove files during backup (db-master host) | ||||
| > [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --no-online --process-max=1 --delta --type=diff --stanza=db backup --test --test-delay=1 --test-point=manifest-build=y | ||||
| > [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --no-online --process-max=1 --delta --type=diff --stanza=db backup | ||||
| ------------------------------------------------------------------------------------------------------------------------------------ | ||||
| P00   INFO: backup command begin [BACKREST-VERSION]: --compress --compress-level=3 --config=[TEST_PATH]/db-master/pgbackrest.conf --db-timeout=45 --delta --exclude=postgresql.auto.conf --exclude=pg_log/ --exclude=pg_log2 --exclude=apipe --lock-path=[TEST_PATH]/db-master/lock --log-level-console=detail --log-level-file=trace --log-level-stderr=off --log-path=[TEST_PATH]/db-master/log --log-subprocess --no-log-timestamp --no-online --pg1-path=[TEST_PATH]/db-master/db/base-2 --process-max=1 --protocol-timeout=60 --repo1-hardlink --repo1-path=[TEST_PATH]/db-master/repo --stanza=db --start-fast --test --test-delay=1 --test-point=manifest-build=y --type=diff | ||||
| P00   INFO: backup command begin [BACKREST-VERSION]: --compress --compress-level=3 --config=[TEST_PATH]/db-master/pgbackrest.conf --db-timeout=45 --delta --exclude=postgresql.auto.conf --exclude=pg_log/ --exclude=pg_log2 --exclude=apipe --lock-path=[TEST_PATH]/db-master/lock --log-level-console=detail --log-level-file=trace --log-level-stderr=off --log-path=[TEST_PATH]/db-master/log --log-subprocess --no-log-timestamp --no-online --pg1-path=[TEST_PATH]/db-master/db/base-2 --process-max=1 --protocol-timeout=60 --repo1-hardlink --repo1-path=[TEST_PATH]/db-master/repo --stanza=db --start-fast --type=diff | ||||
| P00   WARN: option repo1-retention-full is not set, the repository may run out of space | ||||
|             HINT: to retain full backups indefinitely (without warning), set option 'repo1-retention-full' to the maximum. | ||||
| P00   INFO: last backup label = [BACKUP-FULL-2], version = [VERSION-1] | ||||
| P00   WARN: diff backup cannot alter compress option to 'true', reset to value in [BACKUP-FULL-2] | ||||
| P00   WARN: diff backup cannot alter hardlink option to 'true', reset to value in [BACKUP-FULL-2] | ||||
| P00   WARN: aborted backup [BACKUP-INCR-5] cannot be resumed: new backup-type 'diff' does not match aborted backup-type 'incr' | ||||
| P00   WARN: diff backup cannot alter 'checksum-page' option to 'false', reset to 'true' from [BACKUP-FULL-2] | ||||
| P00   TEST:         PgBaCkReStTeSt-MANIFEST-BUILD-PgBaCkReStTeSt | ||||
| P01 DETAIL: match file from prior backup [TEST_PATH]/db-master/db/base-2/base/32768/33001 (64KB, 36%) checksum 6bf316f11d28c28914ea9be92c00de9bea6d9a6b | ||||
| P01 DETAIL: match file from prior backup [TEST_PATH]/db-master/db/base-2/base/32768/44000_init (32KB, 54%) checksum 7a16d165e4775f7c92e8cdf60c0af57313f0bf90 | ||||
| P01 DETAIL: match file from prior backup [TEST_PATH]/db-master/db/base-2/base/32768/33000.32767 (32KB, 72%) checksum 6e99b589e550e68e934fd235ccba59fe5b592a9e | ||||
| @@ -2877,7 +2706,6 @@ P01 DETAIL: match file from prior backup [TEST_PATH]/db-master/db/base-2/postgre | ||||
| P01   INFO: backup file [TEST_PATH]/db-master/db/base-2/badchecksum.txt (11B, 99%) checksum f927212cd08d11a42a666b2f04235398e9ceeb51 | ||||
| P01   INFO: backup file [TEST_PATH]/db-master/db/base-2/changecontent.txt (7B, 99%) checksum a094d94583e209556d03c3c5da33131a065f1689 | ||||
| P01 DETAIL: match file from prior backup [TEST_PATH]/db-master/db/base-2/pg_stat/global.stat (5B, 99%) checksum e350d5ce0153f3e22d5db21cf2a4eff00f3ee877 | ||||
| P00 DETAIL: skip file removed by database [TEST_PATH]/db-master/db/base-2/base/base2.txt | ||||
| P01 DETAIL: match file from prior backup [TEST_PATH]/db-master/db/base-2/changetime.txt (4B, 99%) checksum 88087292ed82e26f3eb824d0bffc05ccf7a30f8d | ||||
| P01 DETAIL: match file from prior backup [TEST_PATH]/db-master/db/base-2/base/32768/PG_VERSION (3B, 99%) checksum 184473f470864e067ee3a22e64b47b0a1c356f29 | ||||
| P01 DETAIL: match file from prior backup [TEST_PATH]/db-master/db/base-2/base/16384/PG_VERSION (3B, 99%) checksum 184473f470864e067ee3a22e64b47b0a1c356f29 | ||||
| @@ -3045,7 +2873,6 @@ backrest-version="[VERSION-1]" | ||||
| [BACKUP-INCR-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-DIFF-2]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-4]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-INCR-3]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-2]","[BACKUP-INCR-3]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-DIFF-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-FULL-2]","backup-reference":["[BACKUP-FULL-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"diff","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-5]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-DIFF-3]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-3]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-DIFF-4]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-FULL-2]","backup-reference":["[BACKUP-FULL-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"diff","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
|  | ||||
| [db] | ||||
| @@ -3245,7 +3072,6 @@ backrest-version="[VERSION-1]" | ||||
| [BACKUP-INCR-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-DIFF-2]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-4]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-INCR-3]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-2]","[BACKUP-INCR-3]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-DIFF-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-FULL-2]","backup-reference":["[BACKUP-FULL-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"diff","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-5]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-DIFF-3]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-3]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-DIFF-4]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-FULL-2]","backup-reference":["[BACKUP-FULL-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"diff","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-FULL-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"full","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":false,"option-compress":true,"option-hardlink":true,"option-online":false} | ||||
|  | ||||
| @@ -3266,9 +3092,8 @@ expire full=1 (db-master host) | ||||
| > [CONTAINER-EXEC] db-master [BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf --repo1-retention-full=1  --stanza=db expire | ||||
| ------------------------------------------------------------------------------------------------------------------------------------ | ||||
| P00   INFO: expire command begin [BACKREST-VERSION]: --config=[TEST_PATH]/db-master/pgbackrest.conf --lock-path=[TEST_PATH]/db-master/lock --log-level-console=detail --log-level-file=trace --log-level-stderr=off --log-path=[TEST_PATH]/db-master/log --log-subprocess --no-log-timestamp --repo1-path=[TEST_PATH]/db-master/repo --repo1-retention-full=1 --stanza=db | ||||
| P00   INFO: expire full backup set: [BACKUP-FULL-2], [BACKUP-DIFF-2], [BACKUP-INCR-3], [BACKUP-INCR-4], [BACKUP-DIFF-3], [BACKUP-INCR-5], [BACKUP-DIFF-4] | ||||
| P00   INFO: expire full backup set: [BACKUP-FULL-2], [BACKUP-DIFF-2], [BACKUP-INCR-3], [BACKUP-INCR-4], [BACKUP-DIFF-3], [BACKUP-DIFF-4] | ||||
| P00   INFO: remove expired backup [BACKUP-DIFF-4] | ||||
| P00   INFO: remove expired backup [BACKUP-INCR-5] | ||||
| P00   INFO: remove expired backup [BACKUP-DIFF-3] | ||||
| P00   INFO: remove expired backup [BACKUP-INCR-4] | ||||
| P00   INFO: remove expired backup [BACKUP-INCR-3] | ||||
| @@ -3707,7 +3532,6 @@ restore_command = '[BACKREST-BIN] --config=[TEST_PATH]/db-master/pgbackrest.conf | ||||
| [BACKUP-INCR-3].manifest.gz | ||||
| [BACKUP-INCR-4].manifest.gz | ||||
| [BACKUP-DIFF-3].manifest.gz | ||||
| [BACKUP-INCR-5].manifest.gz | ||||
| [BACKUP-DIFF-4].manifest.gz | ||||
| [BACKUP-FULL-3].manifest.gz | ||||
| [BACKUP-DIFF-5].manifest.gz | ||||
|   | ||||
| @@ -2032,226 +2032,23 @@ db-version="9.4" | ||||
| backrest-checksum="[CHECKSUM]" | ||||
|  | ||||
| incr backup - remove files - but won't affect manifest (backup host) | ||||
| > [CONTAINER-EXEC] backup [BACKREST-BIN] --config=[TEST_PATH]/backup/pgbackrest.conf --no-online --stanza=db backup --test --test-delay=1 --test-point=manifest-build=y | ||||
| > [CONTAINER-EXEC] backup [BACKREST-BIN] --config=[TEST_PATH]/backup/pgbackrest.conf --no-online --stanza=db backup | ||||
| ------------------------------------------------------------------------------------------------------------------------------------ | ||||
| P00   WARN: option repo1-retention-full is not set, the repository may run out of space | ||||
|             HINT: to retain full backups indefinitely (without warning), set option 'repo1-retention-full' to the maximum. | ||||
| P00   WARN: incr backup cannot alter compress option to 'true', reset to value in [BACKUP-DIFF-3] | ||||
| P00   WARN: incr backup cannot alter 'checksum-page' option to 'false', reset to 'true' from [BACKUP-DIFF-3] | ||||
| P00   TEST:         PgBaCkReStTeSt-MANIFEST-BUILD-PgBaCkReStTeSt | ||||
|  | ||||
| + supplemental file: [TEST_PATH]/db-master/pgbackrest.conf | ||||
| ---------------------------------------------------------- | ||||
| [db] | ||||
| pg1-path=[TEST_PATH]/db-master/db/base-2 | ||||
|  | ||||
| [db:restore] | ||||
| tablespace-map=1=[TEST_PATH]/db-master/db/tablespace/ts1-2 | ||||
| tablespace-map=2=[TEST_PATH]/db-master/db/tablespace/ts2-2 | ||||
|  | ||||
| [global] | ||||
| compress=n | ||||
| compress-level=3 | ||||
| compress-level-network=1 | ||||
| db-timeout=45 | ||||
| lock-path=[TEST_PATH]/db-master/lock | ||||
| log-level-console=warn | ||||
| log-level-file=trace | ||||
| log-level-stderr=off | ||||
| log-path=[TEST_PATH]/db-master/log | ||||
| log-subprocess=y | ||||
| log-timestamp=n | ||||
| process-max=2 | ||||
| protocol-timeout=60 | ||||
| repo1-host=backup | ||||
| repo1-host-cmd=[BACKREST-BIN] | ||||
| repo1-host-config=[TEST_PATH]/backup/pgbackrest.conf | ||||
| repo1-host-user=[USER-1] | ||||
| spool-path=[TEST_PATH]/db-master/spool | ||||
|  | ||||
| + supplemental file: [TEST_PATH]/backup/pgbackrest.conf | ||||
| ------------------------------------------------------- | ||||
| [db] | ||||
| pg1-host=db-master | ||||
| pg1-host-cmd=[BACKREST-BIN] | ||||
| pg1-host-config=[TEST_PATH]/db-master/pgbackrest.conf | ||||
| pg1-host-user=[USER-1] | ||||
| pg1-path=[TEST_PATH]/db-master/db/base-2 | ||||
|  | ||||
| [global] | ||||
| compress=y | ||||
| compress-level=3 | ||||
| compress-level-network=1 | ||||
| db-timeout=45 | ||||
| lock-path=[TEST_PATH]/backup/lock | ||||
| log-level-console=warn | ||||
| log-level-file=trace | ||||
| log-level-stderr=off | ||||
| log-path=[TEST_PATH]/backup/log | ||||
| log-subprocess=y | ||||
| log-timestamp=n | ||||
| process-max=2 | ||||
| protocol-timeout=60 | ||||
| repo1-cipher-pass=x | ||||
| repo1-cipher-type=aes-256-cbc | ||||
| repo1-path=/ | ||||
| repo1-s3-bucket=pgbackrest-dev | ||||
| repo1-s3-endpoint=s3.amazonaws.com | ||||
| repo1-s3-key=accessKey1 | ||||
| repo1-s3-key-secret=verySecretKey1 | ||||
| repo1-s3-region=us-east-1 | ||||
| repo1-s3-verify-ssl=n | ||||
| repo1-type=s3 | ||||
|  | ||||
| [global:backup] | ||||
| archive-copy=y | ||||
| exclude=postgresql.auto.conf | ||||
| exclude=pg_log/ | ||||
| exclude=pg_log2 | ||||
| exclude=apipe | ||||
| start-fast=y | ||||
|  | ||||
| + supplemental file: /backup/db/[BACKUP-INCR-5]/backup.manifest | ||||
| --------------------------------------------------------------- | ||||
| [backrest] | ||||
| backrest-format=5 | ||||
| backrest-version="[VERSION-1]" | ||||
|  | ||||
| [backup] | ||||
| backup-label="[BACKUP-INCR-5]" | ||||
| backup-prior="[BACKUP-DIFF-3]" | ||||
| backup-timestamp-copy-start=[TIMESTAMP] | ||||
| backup-timestamp-start=[TIMESTAMP] | ||||
| backup-timestamp-stop=[TIMESTAMP] | ||||
| backup-type="incr" | ||||
|  | ||||
| [backup:db] | ||||
| db-catalog-version=201409291 | ||||
| db-control-version=942 | ||||
| db-id=1 | ||||
| db-system-id=1000000000000000094 | ||||
| db-version="9.4" | ||||
|  | ||||
| [backup:option] | ||||
| option-archive-check=true | ||||
| option-archive-copy=true | ||||
| option-backup-standby=false | ||||
| option-buffer-size=4194304 | ||||
| option-checksum-page=true | ||||
| option-compress=false | ||||
| option-compress-level=3 | ||||
| option-compress-level-network=1 | ||||
| option-delta=false | ||||
| option-hardlink=false | ||||
| option-online=false | ||||
| option-process-max=2 | ||||
|  | ||||
| [backup:target] | ||||
| pg_data={"path":"[TEST_PATH]/db-master/db/base-2","type":"path"} | ||||
| pg_tblspc/2={"path":"[TEST_PATH]/db-master/db/tablespace/ts2-2","tablespace-id":"2","tablespace-name":"ts2","type":"link"} | ||||
|  | ||||
| [cipher] | ||||
| cipher-pass=[CIPHER-PASS-3] | ||||
|  | ||||
| [target:file] | ||||
| pg_data/PG_VERSION={"checksum":"184473f470864e067ee3a22e64b47b0a1c356f29","master":true,"reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/badchecksum.txt={"checksum":"f927212cd08d11a42a666b2f04235398e9ceeb51","master":true,"reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/1/12000={"checksum":"22c98d248ff548311eda88559e4a8405ed77c003","checksum-page":true,"reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/1/PG_VERSION={"checksum":"184473f470864e067ee3a22e64b47b0a1c356f29","mode":"0660","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/16384/17000={"checksum":"9a53d532e27785e681766c98516a5e93f096a501","checksum-page":false,"reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/16384/PG_VERSION={"checksum":"184473f470864e067ee3a22e64b47b0a1c356f29","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/32768/33000={"checksum":"7a16d165e4775f7c92e8cdf60c0af57313f0bf90","checksum-page":true,"reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/32768/33000.32767={"checksum":"6e99b589e550e68e934fd235ccba59fe5b592a9e","checksum-page":true,"reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/32768/33001={"checksum":"6bf316f11d28c28914ea9be92c00de9bea6d9a6b","checksum-page":false,"checksum-page-error":[0,[3,5],7],"reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/32768/PG_VERSION={"checksum":"184473f470864e067ee3a22e64b47b0a1c356f29","reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/base/base2.txt={"checksum":"09b5e31766be1dba1ec27de82f975c1b6eea2a92","reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/changecontent.txt={"checksum":"a094d94583e209556d03c3c5da33131a065f1689","master":true,"reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/changesize.txt={"checksum":"3905d5be2ec8d67f41435dab5e0dcda3ae47455d","master":true,"reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/changetime.txt={"checksum":"88087292ed82e26f3eb824d0bffc05ccf7a30f8d","master":true,"reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} | ||||
| pg_data/global/pg_control={"checksum":"4c77c900f7af0d9ab13fa9982051a42e0b637f6c","master":true,"reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} | ||||
| pg_data/pg_stat/global.stat={"checksum":"e350d5ce0153f3e22d5db21cf2a4eff00f3ee877","master":true,"reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} | ||||
| pg_data/postgresql.conf={"checksum":"6721d92c9fcdf4248acff1f9a1377127d9064807","master":true,"reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} | ||||
| pg_data/special-!_.*'()&!@;:+,?={"master":true,"reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/zero_from_start={"master":true,"reference":"[BACKUP-FULL-2]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_data/zerosize.txt={"master":true,"reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-2]} | ||||
| pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt={"checksum":"dc7f76e43c46101b47acc55ae4d593a9e6983578","checksum-page":false,"reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
| pg_tblspc/2/[TS_PATH-1]/32768/tablespace2b.txt={"checksum":"e324463005236d83e6e54795dbddd20a74533bf3","checksum-page":false,"reference":"[BACKUP-DIFF-3]","repo-size":[SIZE],"size":[SIZE],"timestamp":[TIMESTAMP-1]} | ||||
|  | ||||
| [target:file:default] | ||||
| group="[GROUP-1]" | ||||
| master=false | ||||
| mode="0600" | ||||
| user="[USER-1]" | ||||
|  | ||||
| [target:link] | ||||
| pg_data/pg_tblspc/2={"destination":"[TEST_PATH]/db-master/db/tablespace/ts2-2"} | ||||
|  | ||||
| [target:link:default] | ||||
| group="[GROUP-1]" | ||||
| user="[USER-1]" | ||||
|  | ||||
| [target:path] | ||||
| pg_data={} | ||||
| pg_data/base={} | ||||
| pg_data/base/1={} | ||||
| pg_data/base/16384={} | ||||
| pg_data/base/32768={} | ||||
| pg_data/global={} | ||||
| pg_data/pg_clog={} | ||||
| pg_data/pg_stat={} | ||||
| pg_data/pg_tblspc={} | ||||
| pg_tblspc={} | ||||
| pg_tblspc/2={} | ||||
| pg_tblspc/2/[TS_PATH-1]={} | ||||
| pg_tblspc/2/[TS_PATH-1]/32768={} | ||||
|  | ||||
| [target:path:default] | ||||
| group="[GROUP-1]" | ||||
| mode="0700" | ||||
| user="[USER-1]" | ||||
|  | ||||
| [backrest] | ||||
| backrest-checksum="[CHECKSUM]" | ||||
|  | ||||
| + supplemental file: /backup/db/backup.info | ||||
| ------------------------------------------- | ||||
| [backrest] | ||||
| backrest-format=5 | ||||
| backrest-version="[VERSION-1]" | ||||
|  | ||||
| [backup:current] | ||||
| [BACKUP-FULL-2]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"full","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-DIFF-2]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-FULL-2]","backup-reference":["[BACKUP-FULL-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"diff","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-DIFF-2]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-4]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-INCR-3]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-2]","[BACKUP-INCR-3]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-DIFF-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-FULL-2]","backup-reference":["[BACKUP-FULL-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"diff","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-5]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-DIFF-3]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-3]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
|  | ||||
| [cipher] | ||||
| cipher-pass=[CIPHER-PASS-1] | ||||
|  | ||||
| [db] | ||||
| db-catalog-version=201409291 | ||||
| db-control-version=942 | ||||
| db-id=1 | ||||
| db-system-id=1000000000000000094 | ||||
| db-version="9.4" | ||||
|  | ||||
| [db:history] | ||||
| 1={"db-catalog-version":201409291,"db-control-version":942,"db-system-id":1000000000000000094,"db-version":"9.4"} | ||||
|  | ||||
| [backrest] | ||||
| backrest-checksum="[CHECKSUM]" | ||||
| P00  ERROR: [055]: no files have changed since the last backup - this seems unlikely | ||||
|  | ||||
| diff backup - remove files during backup (backup host) | ||||
| > [CONTAINER-EXEC] backup [BACKREST-BIN] --config=[TEST_PATH]/backup/pgbackrest.conf --no-online --process-max=1 --type=diff --stanza=db backup --test --test-delay=1 --test-point=manifest-build=y | ||||
| > [CONTAINER-EXEC] backup [BACKREST-BIN] --config=[TEST_PATH]/backup/pgbackrest.conf --no-online --process-max=1 --type=diff --stanza=db backup | ||||
| ------------------------------------------------------------------------------------------------------------------------------------ | ||||
| P00   WARN: option repo1-retention-full is not set, the repository may run out of space | ||||
|             HINT: to retain full backups indefinitely (without warning), set option 'repo1-retention-full' to the maximum. | ||||
| P00   WARN: diff backup cannot alter compress option to 'true', reset to value in [BACKUP-FULL-2] | ||||
| P00   WARN: aborted backup [BACKUP-INCR-5] cannot be resumed: new backup-type 'diff' does not match aborted backup-type 'incr' | ||||
| P00   WARN: diff backup cannot alter 'checksum-page' option to 'false', reset to 'true' from [BACKUP-FULL-2] | ||||
| P00   WARN: file pg_data/changetime.txt timestamp in the past or size changed but timestamp did not, enabling delta checksum | ||||
| P00   TEST:         PgBaCkReStTeSt-MANIFEST-BUILD-PgBaCkReStTeSt | ||||
| P00   WARN: page misalignment in file db-master:[TEST_PATH]/db-master/db/base-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2c.txt: file size 12 is not divisible by page size 8192 | ||||
| P00   WARN: page misalignment in file db-master:[TEST_PATH]/db-master/db/base-2/pg_tblspc/2/[TS_PATH-1]/32768/tablespace2.txt: file size 7 is not divisible by page size 8192 | ||||
|  | ||||
| @@ -2438,7 +2235,6 @@ backrest-version="[VERSION-1]" | ||||
| [BACKUP-INCR-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-DIFF-2]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-4]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-INCR-3]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-2]","[BACKUP-INCR-3]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-DIFF-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-FULL-2]","backup-reference":["[BACKUP-FULL-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"diff","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-5]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-DIFF-3]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-3]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-DIFF-4]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-FULL-2]","backup-reference":["[BACKUP-FULL-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"diff","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
|  | ||||
| [cipher] | ||||
| @@ -2646,7 +2442,6 @@ backrest-version="[VERSION-1]" | ||||
| [BACKUP-INCR-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-DIFF-2]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-4]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-INCR-3]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-2]","[BACKUP-INCR-3]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-DIFF-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-FULL-2]","backup-reference":["[BACKUP-FULL-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"diff","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-INCR-5]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-DIFF-3]","backup-reference":["[BACKUP-FULL-2]","[BACKUP-DIFF-3]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"incr","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-DIFF-4]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-prior":"[BACKUP-FULL-2]","backup-reference":["[BACKUP-FULL-2]"],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"diff","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":true,"option-compress":false,"option-hardlink":false,"option-online":false} | ||||
| [BACKUP-FULL-3]={"backrest-format":5,"backrest-version":"[VERSION-1]","backup-archive-start":null,"backup-archive-stop":null,"backup-info-repo-size":[SIZE],"backup-info-repo-size-delta":[DELTA],"backup-info-size":[SIZE],"backup-info-size-delta":[DELTA],"backup-timestamp-start":[TIMESTAMP],"backup-timestamp-stop":[TIMESTAMP],"backup-type":"full","db-id":1,"option-archive-check":true,"option-archive-copy":true,"option-backup-standby":false,"option-checksum-page":false,"option-compress":true,"option-hardlink":false,"option-online":false} | ||||
|  | ||||
|   | ||||
| @@ -1111,9 +1111,7 @@ sub run | ||||
|  | ||||
|         # Incr Backup | ||||
|         # | ||||
|         # Remove a file from the db after the manifest has been built but before files are copied.  The file will not be shown | ||||
|         # as removed in the log because it had not changed since the last backup so it will only be referenced.  This test also | ||||
|         # checks that everything works when there are no jobs to run. | ||||
|         # Remove a file from the db and check that we get an error because there are no jobs to run. | ||||
|         #--------------------------------------------------------------------------------------------------------------------------- | ||||
|         $strType = CFGOPTVAL_BACKUP_TYPE_INCR; | ||||
|         $oHostDbMaster->manifestReference(\%oManifest, $strBackup); | ||||
| @@ -1121,30 +1119,21 @@ sub run | ||||
|         # Enable compression to ensure a warning is raised | ||||
|         $oHostBackup->configUpdate({&CFGDEF_SECTION_GLOBAL => {cfgOptionName(CFGOPT_COMPRESS) => 'y'}}); | ||||
|  | ||||
|         my $oBackupExecute = $oHostBackup->backupBegin( | ||||
|         $oHostDbMaster->manifestFileRemove(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/16384/17000'); | ||||
|  | ||||
|         my $oBackupExecute = $oHostBackup->backup( | ||||
|             $strType, 'remove files - but won\'t affect manifest', | ||||
|             {oExpectedManifest => \%oManifest, strTest => TEST_MANIFEST_BUILD, fTestDelay => 1}); | ||||
|  | ||||
|         $oHostDbMaster->dbFileRemove(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/16384/17000'); | ||||
|  | ||||
|         $strBackup = $oHostBackup->backupEnd($strType, $oBackupExecute, {oExpectedManifest => \%oManifest}); | ||||
|             {oExpectedManifest => \%oManifest, iExpectedExitStatus => ERROR_FILE_MISSING}); | ||||
|  | ||||
|         # Diff Backup | ||||
|         # | ||||
|         # Remove base2.txt and changed tablespace2c.txt during the backup.  The removed file should be logged and the changed | ||||
|         # file should have the new, larger size logged and in the manifest. | ||||
|         # Remove files and change tablespace2c.txt during the backup.  The changed file should have the new, larger size logged | ||||
|         # in the manifest. | ||||
|         #--------------------------------------------------------------------------------------------------------------------------- | ||||
|         $oHostDbMaster->manifestReference(\%oManifest, $strFullBackup, true); | ||||
|  | ||||
|         $strType = CFGOPTVAL_BACKUP_TYPE_DIFF; | ||||
|  | ||||
|         $oHostDbMaster->manifestFileRemove(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/16384/17000'); | ||||
|  | ||||
|         $oHostDbMaster->manifestFileRemove(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', '32768/tablespace2b.txt', true); | ||||
|         $oHostDbMaster->manifestFileCreate( | ||||
|             \%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', '32768/tablespace2c.txt', 'TBLSPC2C', | ||||
|             'ad7df329ab97a1e7d35f1ff0351c079319121836', $lTime, undef, undef, false); | ||||
|  | ||||
|         # Enable hardlinks (except for s3) to ensure a warning is raised | ||||
|         if (!$bS3) | ||||
|         { | ||||
| @@ -1153,18 +1142,17 @@ sub run | ||||
|  | ||||
|         $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = 1; | ||||
|  | ||||
|         $oBackupExecute = $oHostBackup->backupBegin( | ||||
|             $strType, 'remove files during backup', | ||||
|             {oExpectedManifest => \%oManifest, strTest => TEST_MANIFEST_BUILD, fTestDelay => 1, | ||||
|                 strOptionalParam => '--' . cfgOptionName(CFGOPT_PROCESS_MAX) . '=1' . ($bDeltaBackup ? ' --delta' : '')}); | ||||
|         $oHostDbMaster->manifestFileRemove(\%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', '32768/tablespace2b.txt', true); | ||||
|         $oHostDbMaster->manifestFileRemove(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/base2.txt', true); | ||||
|  | ||||
|         $oHostDbMaster->manifestFileCreate( | ||||
|             \%oManifest, MANIFEST_TARGET_PGTBLSPC . '/2', '32768/tablespace2c.txt', 'TBLSPCBIGGER', | ||||
|             'dfcb8679956b734706cf87259d50c88f83e80e66', $lTime, undef, undef, false); | ||||
|  | ||||
|         $oHostDbMaster->manifestFileRemove(\%oManifest, MANIFEST_TARGET_PGDATA, 'base/base2.txt', true); | ||||
|  | ||||
|         $strBackup = $oHostBackup->backupEnd($strType, $oBackupExecute, {oExpectedManifest => \%oManifest}); | ||||
|         $oBackupExecute = $oHostBackup->backup( | ||||
|             $strType, 'remove files during backup', | ||||
|             {oExpectedManifest => \%oManifest, | ||||
|                 strOptionalParam => '--' . cfgOptionName(CFGOPT_PROCESS_MAX) . '=1' . ($bDeltaBackup ? ' --delta' : '')}); | ||||
|  | ||||
|         $oManifest{&MANIFEST_SECTION_BACKUP_OPTION}{&MANIFEST_KEY_PROCESS_MAX} = $bS3 ? 2 : 1; | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user