2016-06-02 11:10:24 -04:00
{
"co6" : {
"all" : {
"user-guide" : [
{
"key" : {
2016-07-02 10:22:52 -04:00
"image" : "backrest/co6-db-9.4-doc-pre",
2016-06-02 11:10:24 -04:00
"mount" : "/backrest:/backrest",
"name" : "db-master",
"os" : "co6",
"user" : "vagrant"
},
"type" : "host",
"value" : {
"ip" : "172.17.0.2"
}
},
{
"key" : {
"cmd" : [
2016-07-02 10:22:52 -04:00
"sudo yum install perl perl-Time-HiRes perl-parent perl-JSON \\",
2016-06-02 11:10:24 -04:00
" perl-Digest-SHA perl-DBD-Pg"
],
2016-07-02 10:22:52 -04:00
"cmd-extra" : "-y",
2016-06-02 11:10:24 -04:00
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
2016-07-02 10:22:52 -04:00
"sudo rm -f /usr/bin/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm -f /usr/bin/pg_backrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm -rf /usr/lib/perl5/BackRest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm -rf /usr/share/perl5/BackRest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm -rf /usr/lib/perl5/pgBackRest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm -rf /usr/share/perl5/pgBackRest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo cp -r ~/pgbackrest-release-1.03/lib/pgBackRest \\",
2016-06-02 11:10:24 -04:00
" /usr/share/perl5"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo find /usr/share/perl5/pgBackRest -type f -exec chmod 644 {} +"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo find /usr/share/perl5/pgBackRest -type d -exec chmod 755 {} +"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
2016-07-02 10:22:52 -04:00
"sudo cp ~/pgbackrest-release-1.03/bin/pgbackrest /usr/bin/pgbackrest"
2016-06-02 11:10:24 -04:00
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo chmod 755 /usr/bin/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo mkdir -m 770 /var/log/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo chown postgres:postgres /var/log/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"pgBackRest 1.03 - General help",
2016-06-02 11:10:24 -04:00
"",
"Usage:",
" pgbackrest [options] [command]",
"",
"Commands:",
" archive-get Get a WAL segment from the archive.",
" archive-push Push a WAL segment to the archive.",
" backup Backup a database cluster.",
2016-07-02 10:22:52 -04:00
" check Check the configuration.",
2016-06-02 11:10:24 -04:00
" expire Expire backups that exceed retention.",
" help Get help.",
" info Retrieve information about backups.",
" restore Restore a database cluster.",
" start Allow pgBackRest processes to run.",
" stop Stop pgBackRest processes from running.",
" version Get version.",
"",
"Use 'pgbackrest help [command]' for more information."
]
}
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 initdb"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"Initializing database: [ OK ]\r"
]
}
},
{
"key" : {
"file" : "/var/lib/pgsql/9.4/data/postgresql.conf",
"host" : "db-master",
"option" : {
"listen_addresses" : {
"value" : "'*'"
}
}
},
"type" : "cfg-postgresql",
"value" : {
"config" : [
"listen_addresses = '*'"
]
}
},
{
"key" : {
"file" : "/var/lib/pgsql/9.4/data/postgresql.conf",
"host" : "db-master",
"option" : {
"log_line_prefix" : {
"value" : "''"
}
}
},
"type" : "cfg-postgresql",
"value" : {
"config" : [
"listen_addresses = '*'",
"log_line_prefix = ''"
]
}
},
{
"key" : {
"file" : "/var/lib/pgsql/9.4/data/postgresql.conf",
"host" : "db-master",
"option" : {
"log_filename" : {
"value" : "'postgresql.log'"
}
}
},
"type" : "cfg-postgresql",
"value" : {
"config" : [
"listen_addresses = '*'",
"log_filename = 'postgresql.log'",
"log_line_prefix = ''"
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"demo" : {
"db-path" : {
"value" : "/var/lib/pgsql/9.4/data"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/pgsql/9.4/data"
]
}
},
{
"key" : {
"cmd" : [
"sudo mkdir /var/lib/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo chmod 750 /var/lib/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo chown postgres:postgres /var/lib/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"global" : {
"repo-path" : {
"value" : "/var/lib/pgbackrest"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/pgsql/9.4/data",
"",
"[global]",
"repo-path=/var/lib/pgbackrest"
]
}
},
{
"key" : {
"file" : "/var/lib/pgsql/9.4/data/postgresql.conf",
"host" : "db-master",
"option" : {
"archive_command" : {
"value" : "'pgbackrest --stanza=demo archive-push %p'"
},
"archive_mode" : {
"value" : "on"
},
"max_wal_senders" : {
"value" : "3"
},
"wal_level" : {
"value" : "hot_standby"
}
}
},
"type" : "cfg-postgresql",
"value" : {
"config" : [
"archive_command = 'pgbackrest --stanza=demo archive-push %p'",
"archive_mode = on",
"listen_addresses = '*'",
"log_filename = 'postgresql.log'",
"log_line_prefix = ''",
"max_wal_senders = 3",
"wal_level = hot_standby"
]
}
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 restart"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
2016-07-02 10:22:52 -04:00
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info check"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
" successfully stored in the archive at "
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: check start: --db-path=/var/lib/pgsql/9.4/data --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo",
" INFO: switch xlog 000000010000000000000001",
" INFO: WAL segment 000000010000000000000001 successfully stored in the archive at '/var/lib/pgbackrest/archive/demo/9.4-1/0000000100000000/000000010000000000000001-639c88163e930a877d3d351165a2d727b07314a2.gz'",
" INFO: check stop"
]
}
},
2016-06-02 11:10:24 -04:00
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"no prior backup exists|full backup size"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: backup start: --db-path=/var/lib/pgsql/9.4/data --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo",
" WARN: no prior backup exists, incr backup has been changed to full",
2016-07-02 10:22:52 -04:00
" INFO: execute exclusive pg_start_backup() with label \"pgBackRest backup started at 2016-07-02 14:05:46\": backup begins after the next regular checkpoint completes",
" INFO: archive start: 0/2000028",
2016-06-02 11:10:24 -04:00
" [filtered 764 lines of output]",
" INFO: backup file /var/lib/pgsql/9.4/data/base/1/11886 (0B, 100%)",
2016-07-02 10:22:52 -04:00
" INFO: backup file /var/lib/pgsql/9.4/data/global/pg_control (8KB) checksum 1da72f9c0e7e34472a913270ec82a058f7efe5a2",
2016-06-02 11:10:24 -04:00
" INFO: full backup size = 19.3MB",
" INFO: execute exclusive pg_stop_backup() and wait for all WAL segments to archive",
2016-07-02 10:22:52 -04:00
" INFO: archive stop: 0/20000F0",
2016-06-02 11:10:24 -04:00
" [filtered 4 lines of output]"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres ls -1 /var/lib/pgbackrest/backup/demo | tail -4 | head -1"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"20160702-140551F"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=diff \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"diff backup size"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" [filtered 5 lines of output]",
2016-07-02 10:22:52 -04:00
" INFO: backup file /var/lib/pgsql/9.4/data/backup_label (236B, 100%) checksum 21a9fa678c4cc0c7712d0702f4e0863b125d0f90",
" INFO: backup file /var/lib/pgsql/9.4/data/global/pg_control (8KB) checksum bfa9a82e3b53481d1c815144be2b9584851b4a89",
2016-06-02 11:10:24 -04:00
" INFO: diff backup size = 8.7KB",
" INFO: execute exclusive pg_stop_backup() and wait for all WAL segments to archive",
2016-07-02 10:22:52 -04:00
" INFO: archive stop: 0/30000F0",
2016-06-02 11:10:24 -04:00
" [filtered 4 lines of output]"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest info"
],
"highlight" : {
"filter" : false,
"filter-context" : 2,
"list" : [
"(full|incr|diff) backup"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"stanza: demo",
" status: ok",
"",
2016-07-02 10:22:52 -04:00
" full backup: 20160702-140551F",
" start / stop timestamp: 2016-07-02 14:05:46 / 2016-07-02 14:05:51",
2016-06-02 11:10:24 -04:00
" database size: 19.3MB, backup size: 19.3MB",
" repository size: 2.2MB, repository backup size: 2.2MB",
"",
2016-07-02 10:22:52 -04:00
" diff backup: 20160702-140551F_20160702-140554D",
" start / stop timestamp: 2016-07-02 14:05:51 / 2016-07-02 14:05:54",
2016-06-02 11:10:24 -04:00
" database size: 19.3MB, backup size: 8.7KB",
2016-07-02 10:22:52 -04:00
" repository size: 2.2MB, repository backup size: 666B",
" backup reference list: 20160702-140551F"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres rm /var/lib/pgsql/9.4/data/global/pg_control"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm -f /var/lib/pgsql/9.4/pgstartup.log"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 start"
],
"err-expect" : "1",
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo cat /var/lib/pgsql/9.4/pgstartup.log"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"could not find the database system"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"postmaster: could not find the database system",
"Expected to find it in the directory \"/var/lib/pgsql/9.4/data\",",
"but could not open file \"/var/lib/pgsql/9.4/data/global/pg_control\": No such file or directory"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres find /var/lib/pgsql/9.4/data -mindepth 1 -delete"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo restore"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"backup begins after the next regular checkpoint completes"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: backup start: --db-path=/var/lib/pgsql/9.4/data --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo --type=incr",
2016-07-02 10:22:52 -04:00
" INFO: last backup label = 20160702-140551F_20160702-140554D, version = 1.03",
" INFO: execute exclusive pg_start_backup() with label \"pgBackRest backup started at 2016-07-02 14:06:05\": backup begins after the next regular checkpoint completes",
" INFO: archive start: 0/5000028",
" INFO: backup file /var/lib/pgsql/9.4/data/base/12140/pg_internal.init (115.2KB, 71%) checksum 9d13b0ccc9d705317731ec8a5abfc1d60c0c8185",
2016-06-02 11:10:24 -04:00
" [filtered 17 lines of output]"
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"global" : {
"start-fast" : {
"value" : "y"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/pgsql/9.4/data",
"",
"[global]",
"repo-path=/var/lib/pgbackrest",
"start-fast=y"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"backup begins after the requested immediate checkpoint completes"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: backup start: --db-path=/var/lib/pgsql/9.4/data --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo --start-fast --type=incr",
2016-07-02 10:22:52 -04:00
" INFO: last backup label = 20160702-140551F_20160702-140608I, version = 1.03",
" INFO: execute exclusive pg_start_backup() with label \"pgBackRest backup started at 2016-07-02 14:06:09\": backup begins after the requested immediate checkpoint completes",
" INFO: archive start: 0/6000028",
" INFO: backup file /var/lib/pgsql/9.4/data/backup_label (236B, 100%) checksum ccf13d6b6cf3a97ee2b6dcbad256af4e8be4a280",
" [filtered 8 lines of output]"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo chmod 550 /var/lib/pgbackrest/temp"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr \\",
" --log-level-console=info backup"
],
"err-expect" : "122",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"ERROR:"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" [filtered 2 lines of output]",
2016-07-02 10:22:52 -04:00
" INFO: execute exclusive pg_start_backup() with label \"pgBackRest backup started at 2016-07-02 14:06:12\": backup begins after the requested immediate checkpoint completes",
" INFO: archive start: 0/7000028",
2016-06-02 11:10:24 -04:00
" ERROR: [122]: unable to create /var/lib/pgbackrest/temp/demo.tmp: Permission denied",
" INFO: backup stop"
]
}
},
{
"key" : {
"cmd" : [
"sudo chmod 750 /var/lib/pgbackrest/temp"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr \\",
" --log-level-console=info backup"
],
"err-expect" : "132",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"ERROR:"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: backup start: --db-path=/var/lib/pgsql/9.4/data --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo --start-fast --type=incr",
2016-07-02 10:22:52 -04:00
" INFO: last backup label = 20160702-140551F_20160702-140612I, version = 1.03",
" INFO: execute exclusive pg_start_backup() with label \"pgBackRest backup started at 2016-07-02 14:06:14\": backup begins after the requested immediate checkpoint completes",
2016-06-02 11:10:24 -04:00
" ERROR: [132]: ERROR: a backup is already in progress",
" HINT: Run pg_stop_backup() and try again.:",
2016-07-02 10:22:52 -04:00
" select to_char(current_timestamp, 'YYYY-MM-DD HH24:MI:SS.US TZ'), lsn::text from pg_start_backup('pgBackRest backup started at 2016-07-02 14:06:14', true) as lsn"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"global" : {
"stop-auto" : {
"value" : "y"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/pgsql/9.4/data",
"",
"[global]",
"repo-path=/var/lib/pgbackrest",
"start-fast=y",
"stop-auto=y"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"cluster is already in backup mode|backup begins after the requested immediate checkpoint completes"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: backup start: --db-path=/var/lib/pgsql/9.4/data --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo --start-fast --stop-auto --type=incr",
2016-07-02 10:22:52 -04:00
" INFO: last backup label = 20160702-140551F_20160702-140612I, version = 1.03",
2016-06-02 11:10:24 -04:00
" WARN: the cluster is already in backup mode but no backup process is running. pg_stop_backup() will be called so a new backup can be started.",
" INFO: execute exclusive pg_stop_backup() and wait for all WAL segments to archive",
2016-07-02 10:22:52 -04:00
" INFO: execute exclusive pg_start_backup() with label \"pgBackRest backup started at 2016-07-02 14:06:15\": backup begins after the requested immediate checkpoint completes",
" INFO: archive start: 0/9000028",
" INFO: backup file /var/lib/pgsql/9.4/data/pg_log/postgresql.log (1.7KB, 88%) checksum 3c1ac9413775a68ab7ec3c1bb11f89bd4a84d298",
2016-06-02 11:10:24 -04:00
" [filtered 9 lines of output]"
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"global" : {
"retention-full" : {
"value" : "2"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/pgsql/9.4/data",
"",
"[global]",
"repo-path=/var/lib/pgbackrest",
"retention-full=2",
"start-fast=y",
"stop-auto=y"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=full \\",
" --log-level-console=detail backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
2016-07-02 10:22:52 -04:00
"archive retention on backup 20160702-140551F|remove archive"
2016-06-02 11:10:24 -04:00
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" [filtered 773 lines of output]",
" INFO: backup stop",
" INFO: expire start: --log-level-console=detail --repo-path=/var/lib/pgbackrest --retention-full=2 --stanza=demo",
2016-07-02 10:22:52 -04:00
"DETAIL: archive retention on backup 20160702-140551F, start = 000000010000000000000002",
2016-06-02 11:10:24 -04:00
"DETAIL: remove archive: start = 000000010000000000000001, stop = 000000010000000000000001",
" INFO: expire stop"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres ls -1 /var/lib/pgbackrest/backup/demo | tail -4 | head -1"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"20160702-140626F"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=full \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
2016-07-02 10:22:52 -04:00
"expire full backup set\\: 20160702-140551F|archive retention on backup 20160702-140626F|remove archive"
2016-06-02 11:10:24 -04:00
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" [filtered 773 lines of output]",
" INFO: backup stop",
" INFO: expire start: --log-level-console=info --repo-path=/var/lib/pgbackrest --retention-full=2 --stanza=demo",
2016-07-02 10:22:52 -04:00
" INFO: expire full backup set: 20160702-140551F, 20160702-140551F_20160702-140554D, 20160702-140551F_20160702-140608I, 20160702-140551F_20160702-140612I, 20160702-140551F_20160702-140620I",
" INFO: remove expired backup 20160702-140551F_20160702-140620I",
" INFO: remove expired backup 20160702-140551F_20160702-140612I",
2016-06-02 11:10:24 -04:00
" [filtered 3 lines of output]"
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"global" : {
"retention-diff" : {
"value" : "1"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/pgsql/9.4/data",
"",
"[global]",
"repo-path=/var/lib/pgbackrest",
"retention-diff=1",
"retention-full=2",
"start-fast=y",
"stop-auto=y"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=diff backup"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres ls -1 /var/lib/pgbackrest/backup/demo | tail -4 | head -1"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"20160702-140631F_20160702-140635D"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr backup"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=diff \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
2016-07-02 10:22:52 -04:00
"expire diff backup set: 20160702-140631F_20160702-140635D"
2016-06-02 11:10:24 -04:00
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" [filtered 11 lines of output]",
" INFO: backup stop",
" INFO: expire start: --log-level-console=info --repo-path=/var/lib/pgbackrest --retention-diff=1 --retention-full=2 --stanza=demo",
2016-07-02 10:22:52 -04:00
" INFO: expire diff backup set: 20160702-140631F_20160702-140635D, 20160702-140631F_20160702-140638I",
" INFO: remove expired backup 20160702-140631F_20160702-140638I",
" INFO: remove expired backup 20160702-140631F_20160702-140635D"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
" --log-level-console=detail restore"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"demo\\/PG_VERSION - exists and matches backup|check\\/clean db path|restore global\\/pg_control"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
" [filtered 784 lines of output]",
2016-06-02 11:10:24 -04:00
"DETAIL: restore file /var/lib/pgsql/9.4/data/base/1/11886 - exists and is zero size (0B, 100%)",
" INFO: wrote /var/lib/pgsql/9.4/data/recovery.conf",
" INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started)",
2016-07-02 10:22:52 -04:00
" INFO: restore file /var/lib/pgsql/9.4/data/global/pg_control (8KB) checksum 304d2b31f695a998630c266b0e50614eeb42c80d",
2016-06-02 11:10:24 -04:00
" INFO: restore stop"
]
}
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"create database test1;\""
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"CREATE DATABASE"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"create database test2;\""
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"CREATE DATABASE"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr backup"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"create table test1_table (id int); \\",
" insert into test1_table (id) values (1);\" test1"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"INSERT 0 1"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"create table test2_table (id int); \\",
" insert into test2_table (id) values (2);\" test2"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"INSERT 0 1"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres du -sh /var/lib/pgsql/9.4/data/base/16384"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"6.4M\t/var/lib/pgsql/9.4/data/base/16384"
]
}
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
" --db-include=test2 restore"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select * from test2_table;\" test2"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" id ",
"----",
" 2",
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select * from test1_table;\" test1"
],
"err-expect" : "2",
"highlight" : {
"filter" : false,
"filter-context" : 2,
"list" : [
"relation mapping file.*contains invalid data"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"psql: FATAL: relation mapping file \"base/16384/pg_filenode.map\" contains invalid data"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres du -sh /var/lib/pgsql/9.4/data/base/16384"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"152K\t/var/lib/pgsql/9.4/data/base/16384"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"drop database test1;\""
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"DROP DATABASE"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select oid, datname from pg_database order by oid;\""
],
"highlight" : {
"filter" : false,
"filter-context" : 2,
"list" : [
"test2"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" oid | datname ",
"-------+-----------",
" 1 | template1",
" 12135 | template0",
" 12140 | postgres",
" 16385 | test2",
"(4 rows)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=diff backup"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"begin; \\",
" create table important_table (message text); \\",
" insert into important_table values ('Important Data'); \\",
" commit; \\",
" select * from important_table;\""
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" message ",
"----------------",
" Important Data",
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -Atc \"select current_timestamp\""
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"2016-07-02 14:07:04.532083+00"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"begin; \\",
" drop table important_table; \\",
" commit; \\",
" select * from important_table;\""
],
"err-expect" : "1",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"does not exist"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"ERROR: relation \"important_table\" does not exist",
"LINE 1: ...le important_table; commit; select * from important_...",
" ^"
]
}
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
2016-07-02 10:22:52 -04:00
" --type=time \"--target=2016-07-02 14:07:04.532083+00\" restore"
2016-06-02 11:10:24 -04:00
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm /var/lib/pgsql/9.4/data/pg_log/postgresql.log"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/lib/pgsql/9.4/data/recovery.conf"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"recovery_target_time"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"restore_command = '/usr/bin/pgbackrest --stanza=demo archive-get %f \"%p\"'",
2016-07-02 10:22:52 -04:00
"recovery_target_time = '2016-07-02 14:07:04.532083+00'"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select * from important_table\""
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" message ",
"----------------",
" Important Data",
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/lib/pgsql/9.4/data/pg_log/postgresql.log"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"recovery stopping before|last completed transaction|starting point-in-time recovery"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"LOG: database system was interrupted; last known up at 2016-07-02 14:07:00 UTC",
2016-06-02 11:10:24 -04:00
"LOG: creating missing WAL directory \"pg_xlog/archive_status\"",
2016-07-02 10:22:52 -04:00
"LOG: starting point-in-time recovery to 2016-07-02 14:07:04.532083+00",
2016-06-02 11:10:24 -04:00
"LOG: restored log file \"00000004.history\" from archive",
"LOG: restored log file \"000000040000000000000014\" from archive",
2016-07-02 10:22:52 -04:00
"LOG: redo starts at 0/14000028",
"LOG: consistent recovery state reached at 0/140000F0",
"LOG: restored log file \"000000040000000000000015\" from archive",
"LOG: recovery stopping before commit of transaction 689, time 2016-07-02 14:07:04.652717+00",
"LOG: redo done at 0/150157F0",
"LOG: last completed transaction was at log time 2016-07-02 14:07:04.430932+00",
2016-06-02 11:10:24 -04:00
"LOG: selected new timeline ID: 5",
"LOG: restored log file \"00000004.history\" from archive",
2016-07-02 10:22:52 -04:00
" [filtered 4 lines of output]"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"begin; \\",
" drop table important_table; \\",
" commit; \\",
" select * from important_table;\""
],
"err-expect" : "1",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"does not exist"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"ERROR: relation \"important_table\" does not exist",
"LINE 1: ...le important_table; commit; select * from important_...",
" ^"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres ls -1 /var/lib/pgbackrest/backup/demo | tail -4 | head -1"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"20160702-140631F_20160702-140704D"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr backup"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
2016-07-02 10:22:52 -04:00
" --type=time \"--target=2016-07-02 14:07:04.532083+00\" restore"
2016-06-02 11:10:24 -04:00
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm /var/lib/pgsql/9.4/data/pg_log/postgresql.log"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select * from important_table\""
],
"err-expect" : "1",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"does not exist"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"ERROR: relation \"important_table\" does not exist",
"LINE 1: select * from important_table",
" ^"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/lib/pgsql/9.4/data/pg_log/postgresql.log"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
2016-07-02 10:22:52 -04:00
"starting point-in-time recovery|consistent recovery state reached"
2016-06-02 11:10:24 -04:00
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"LOG: database system was interrupted; last known up at 2016-07-02 14:07:11 UTC",
2016-06-02 11:10:24 -04:00
"LOG: creating missing WAL directory \"pg_xlog/archive_status\"",
2016-07-02 10:22:52 -04:00
"LOG: starting point-in-time recovery to 2016-07-02 14:07:04.532083+00",
2016-06-02 11:10:24 -04:00
"LOG: restored log file \"00000005.history\" from archive",
2016-07-02 10:22:52 -04:00
"LOG: restored log file \"000000050000000000000016\" from archive",
"LOG: redo starts at 0/16000028",
"LOG: consistent recovery state reached at 0/160000F0",
"LOG: redo done at 0/160000F0",
"LOG: restored log file \"000000050000000000000016\" from archive",
" [filtered 7 lines of output]"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest info"
],
"highlight" : {
"filter" : false,
"filter-context" : 2,
"list" : [
2016-07-02 10:22:52 -04:00
"20160702-140631F_20160702-140704D"
2016-06-02 11:10:24 -04:00
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"stanza: demo",
" status: ok",
"",
2016-07-02 10:22:52 -04:00
" full backup: 20160702-140626F",
" start / stop timestamp: 2016-07-02 14:06:21 / 2016-07-02 14:06:26",
2016-06-02 11:10:24 -04:00
" database size: 19.3MB, backup size: 19.3MB",
" repository size: 2.2MB, repository backup size: 2.2MB",
"",
2016-07-02 10:22:52 -04:00
" full backup: 20160702-140631F",
" start / stop timestamp: 2016-07-02 14:06:26 / 2016-07-02 14:06:31",
2016-06-02 11:10:24 -04:00
" database size: 19.3MB, backup size: 19.3MB",
" repository size: 2.2MB, repository backup size: 2.2MB",
"",
2016-07-02 10:22:52 -04:00
" diff backup: 20160702-140631F_20160702-140704D",
" start / stop timestamp: 2016-07-02 14:07:00 / 2016-07-02 14:07:04",
2016-06-02 11:10:24 -04:00
" database size: 25.7MB, backup size: 6.5MB",
" repository size: 3MB, repository backup size: 790.3KB",
2016-07-02 10:22:52 -04:00
" backup reference list: 20160702-140631F",
2016-06-02 11:10:24 -04:00
"",
2016-07-02 10:22:52 -04:00
" incr backup: 20160702-140631F_20160702-140714I",
" start / stop timestamp: 2016-07-02 14:07:11 / 2016-07-02 14:07:14",
2016-06-02 11:10:24 -04:00
" database size: 25.6MB, backup size: 1.9MB",
" repository size: 3MB, repository backup size: 215KB",
2016-07-02 10:22:52 -04:00
" backup reference list: 20160702-140631F, 20160702-140631F_20160702-140704D"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
2016-07-02 10:22:52 -04:00
" --type=time \"--target=2016-07-02 14:07:04.532083+00\" \\",
" --set=20160702-140631F_20160702-140704D restore"
2016-06-02 11:10:24 -04:00
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm /var/lib/pgsql/9.4/data/pg_log/postgresql.log"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select * from important_table\""
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" message ",
"----------------",
" Important Data",
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/lib/pgsql/9.4/data/pg_log/postgresql.log"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"recovery stopping before|last completed transaction|starting point-in-time recovery"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"LOG: database system was interrupted; last known up at 2016-07-02 14:07:00 UTC",
2016-06-02 11:10:24 -04:00
"LOG: creating missing WAL directory \"pg_xlog/archive_status\"",
2016-07-02 10:22:52 -04:00
"LOG: starting point-in-time recovery to 2016-07-02 14:07:04.532083+00",
2016-06-02 11:10:24 -04:00
"LOG: restored log file \"00000004.history\" from archive",
"LOG: restored log file \"000000040000000000000014\" from archive",
2016-07-02 10:22:52 -04:00
"LOG: redo starts at 0/14000028",
"LOG: consistent recovery state reached at 0/140000F0",
"LOG: restored log file \"000000040000000000000015\" from archive",
"LOG: recovery stopping before commit of transaction 689, time 2016-07-02 14:07:04.652717+00",
"LOG: redo done at 0/150157F0",
"LOG: last completed transaction was at log time 2016-07-02 14:07:04.430932+00",
2016-06-02 11:10:24 -04:00
"LOG: restored log file \"00000005.history\" from archive",
"LOG: restored log file \"00000006.history\" from archive",
2016-07-02 10:22:52 -04:00
" [filtered 6 lines of output]"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
2016-07-02 10:22:52 -04:00
"image" : "backrest/co6-backup-doc-pre",
2016-06-02 11:10:24 -04:00
"mount" : "/backrest:/backrest",
"name" : "backup",
"os" : "co6",
"user" : "vagrant"
},
"type" : "host",
"value" : {
"ip" : "172.17.0.3"
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "backup",
"option" : {
"global" : {
"repo-path" : {
"value" : "/var/lib/pgbackrest"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[global]",
"repo-path=/var/lib/pgbackrest"
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "backup",
"option" : {
"demo" : {
"db-host" : {
"value" : "db-master"
},
"db-path" : {
"value" : "/var/lib/pgsql/9.4/data"
}
},
"global" : {
"start-fast" : {
"value" : "y"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-host=db-master",
"db-path=/var/lib/pgsql/9.4/data",
"",
"[global]",
"repo-path=/var/lib/pgbackrest",
"start-fast=y"
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"demo" : {
"db-path" : {
"value" : "/var/lib/pgsql/9.4/data"
}
},
"global" : {
"backup-host" : {
"value" : "backup"
},
"repo-path" : {
"value" : "/var/lib/pgbackrest"
}
}
},
"reset" : true
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/pgsql/9.4/data",
"",
"[global]",
"backup-host=backup",
"repo-path=/var/lib/pgbackrest"
]
}
},
{
"key" : {
"cmd" : [
"sudo find /var/lib/pgbackrest -delete"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
2016-07-02 10:22:52 -04:00
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo check"
],
"host" : "db-master",
"output" : true
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u backrest pgbackrest --stanza=demo check"
],
"host" : "backup",
"output" : true
},
"type" : "exe"
},
2016-06-02 11:10:24 -04:00
{
"key" : {
"cmd" : [
"sudo -u backrest pgbackrest --stanza=demo backup"
],
"host" : "backup",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" WARN: no prior backup exists, incr backup has been changed to full"
]
}
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta restore"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u backrest pgbackrest --stanza=demo backup"
],
"host" : "backup",
"output" : false
},
"type" : "exe"
},
2016-07-02 10:22:52 -04:00
{
"key" : {
"cmd" : [
"sudo mkdir -m 750 /var/spool/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo chown postgres:postgres /var/spool/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"global" : {
"archive-async" : {
"value" : "y"
},
"spool-path" : {
"value" : "/var/spool/pgbackrest"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/pgsql/9.4/data",
"",
"[global]",
"archive-async=y",
"backup-host=backup",
"repo-path=/var/lib/pgbackrest",
"spool-path=/var/spool/pgbackrest"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info check"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"WAL segment"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: check start: --backup-host=backup --db-path=/var/lib/pgsql/9.4/data --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo",
" INFO: switch xlog 00000008000000000000001A",
" INFO: WAL segment 00000008000000000000001A successfully stored in the archive at '/var/lib/pgbackrest/archive/demo/9.4-1/0000000800000000/00000008000000000000001A-5d765e867addb541a2470397e5942b45e86ddd89.gz'",
" INFO: check stop"
]
}
},
2016-06-02 11:10:24 -04:00
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo backup"
],
"err-expect" : "137",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"stop file exists for all stanzas"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" ERROR: [137]: stop file exists for all stanzas"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest stop"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" WARN: stop file already exists for all stanzas"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo backup"
],
"err-expect" : "137",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"stop file exists for stanza demo"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" ERROR: [137]: stop file exists for stanza demo"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
2016-07-02 10:22:52 -04:00
"image" : "backrest/co6-db-9.4-doc-pre",
2016-06-02 11:10:24 -04:00
"mount" : "/backrest:/backrest",
"name" : "db-standby",
"os" : "co6",
"user" : "vagrant"
},
"type" : "host",
"value" : {
"ip" : "172.17.0.4"
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-standby",
"option" : {
"demo" : {
"db-path" : {
"value" : "/var/lib/pgsql/9.4/data"
},
"recovery-option" : {
"value" : "standby_mode=on"
}
},
"global" : {
"backup-host" : {
"value" : "backup"
},
"repo-path" : {
"value" : "/var/lib/pgbackrest"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/pgsql/9.4/data",
"recovery-option=standby_mode=on",
"",
"[global]",
"backup-host=backup",
"repo-path=/var/lib/pgbackrest"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta restore"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/lib/pgsql/9.4/data/recovery.conf"
],
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"standby_mode = 'on'",
"restore_command = '/usr/bin/pgbackrest --stanza=demo archive-get %f \"%p\"'"
]
}
},
{
"key" : {
"file" : "/var/lib/pgsql/9.4/data/postgresql.conf",
"host" : "db-standby",
"option" : {
"hot_standby" : {
"value" : "on"
}
}
},
"type" : "cfg-postgresql",
"value" : {
"config" : [
"hot_standby = on"
]
}
},
{
"key" : {
"cmd" : [
"sudo rm /var/lib/pgsql/9.4/data/pg_log/postgresql.log"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 start"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/lib/pgsql/9.4/data/pg_log/postgresql.log"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"entering standby mode|database system is ready to accept read only connections"
]
},
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"LOG: database system was interrupted; last known up at 2016-07-02 14:07:47 UTC",
2016-06-02 11:10:24 -04:00
"LOG: creating missing WAL directory \"pg_xlog/archive_status\"",
"LOG: entering standby mode",
"LOG: restored log file \"00000008.history\" from archive",
2016-07-02 10:22:52 -04:00
"LOG: restored log file \"000000080000000000000019\" from archive",
"LOG: redo starts at 0/19000028",
"LOG: consistent recovery state reached at 0/190000F0",
"LOG: database system is ready to accept read only connections",
"LOG: restored log file \"00000008000000000000001A\" from archive"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \" \\",
" begin; \\",
" create table replicated_table (message text); \\",
" insert into replicated_table values ('Important Data'); \\",
" commit; \\",
" select * from replicated_table\";"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" message ",
"----------------",
" Important Data",
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select * from replicated_table;\""
],
"err-expect" : "1",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"does not exist"
]
},
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"ERROR: relation \"replicated_table\" does not exist",
"LINE 1: select * from replicated_table;",
" ^"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select *, current_timestamp from pg_switch_xlog()\";"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" pg_switch_xlog | now ",
"----------------+-------------------------------",
2016-07-02 10:22:52 -04:00
" 0/1B017918 | 2016-07-02 14:08:07.115894+00",
2016-06-02 11:10:24 -04:00
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \" \\",
" select *, current_timestamp from replicated_table\""
],
"highlight" : {
"filter" : false,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" message | now ",
"----------------+-------------------------------",
2016-07-02 10:22:52 -04:00
" Important Data | 2016-07-02 14:08:09.727298+00",
2016-06-02 11:10:24 -04:00
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \" \\",
" create user replicator password 'jw8s0F4' replication\";"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"CREATE ROLE"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres sh -c 'echo \\",
" \"host replication replicator 172.17.0.4/32 md5\" \\",
" >> /var/lib/pgsql/9.4/data/pg_hba.conf'"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 reload"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-standby",
"option" : {
"demo" : {
"recovery-option" : {
"value" : "primary_conninfo=host=172.17.0.2 port=5432 user=replicator"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/pgsql/9.4/data",
"recovery-option=standby_mode=on",
"recovery-option=primary_conninfo=host=172.17.0.2 port=5432 user=replicator",
"",
"[global]",
"backup-host=backup",
"repo-path=/var/lib/pgbackrest"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres sh -c 'echo \\",
" \"172.17.0.2:*:replication:replicator:jw8s0F4\" \\",
" >> /home/postgres/.pgpass'"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres chmod 600 /home/postgres/.pgpass"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 stop"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta restore"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/lib/pgsql/9.4/data/recovery.conf"
],
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"primary_conninfo = 'host=172.17.0.2 port=5432 user=replicator'",
"standby_mode = 'on'",
"restore_command = '/usr/bin/pgbackrest --stanza=demo archive-get %f \"%p\"'"
]
}
},
{
"key" : {
"file" : "/var/lib/pgsql/9.4/data/postgresql.conf",
"host" : "db-standby",
"option" : {
"hot_standby" : {
"value" : "on"
}
}
},
"type" : "cfg-postgresql",
"value" : {
"config" : [
"hot_standby = on"
]
}
},
{
"key" : {
"cmd" : [
"sudo rm /var/lib/pgsql/9.4/data/pg_log/postgresql.log"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo service postgresql-9.4 start"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/lib/pgsql/9.4/data/pg_log/postgresql.log"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"started streaming WAL from primary"
]
},
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
" [filtered 8 lines of output]",
"LOG: restored log file \"00000008000000000000001A\" from archive",
"LOG: restored log file \"00000008000000000000001B\" from archive",
"LOG: started streaming WAL from primary at 0/1C000000 on timeline 8"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \" \\",
" begin; \\",
" create table stream_table (message text); \\",
" insert into stream_table values ('Important Data'); \\",
" commit; \\",
" select *, current_timestamp from stream_table\";"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" message | now ",
"----------------+-------------------------------",
2016-07-02 10:22:52 -04:00
" Important Data | 2016-07-02 14:08:17.652084+00",
2016-06-02 11:10:24 -04:00
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \" \\",
" select *, current_timestamp from stream_table\""
],
"highlight" : {
"filter" : false,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" message | now ",
"----------------+-------------------------------",
2016-07-02 10:22:52 -04:00
" Important Data | 2016-07-02 14:08:17.846782+00",
2016-06-02 11:10:24 -04:00
"(1 row)"
]
}
}
]
}
},
"default" : {
"all" : {
"user-guide" : [
{
"key" : {
2016-07-02 10:22:52 -04:00
"image" : "backrest/u14-db-9.4-doc-pre",
2016-06-02 11:10:24 -04:00
"mount" : "/backrest:/backrest",
"name" : "db-master",
"os" : "u14",
"user" : "vagrant"
},
"type" : "host",
"value" : {
"ip" : "172.17.0.2"
}
},
{
"key" : {
"cmd" : [
2016-07-02 10:22:52 -04:00
"sudo apt-get install libdbd-pg-perl"
2016-06-02 11:10:24 -04:00
],
2016-07-02 10:22:52 -04:00
"cmd-extra" : "-y",
2016-06-02 11:10:24 -04:00
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
2016-07-02 10:22:52 -04:00
"sudo rm -f /usr/bin/pgbackrest"
2016-06-02 11:10:24 -04:00
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
2016-07-02 10:22:52 -04:00
"sudo rm -f /usr/bin/pg_backrest"
2016-06-02 11:10:24 -04:00
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
2016-07-02 10:22:52 -04:00
"sudo rm -rf /usr/lib/perl5/BackRest"
2016-06-02 11:10:24 -04:00
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
2016-07-02 10:22:52 -04:00
"sudo rm -rf /usr/share/perl5/BackRest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm -rf /usr/lib/perl5/pgBackRest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm -rf /usr/share/perl5/pgBackRest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo cp -r ~/pgbackrest-release-1.03/lib/pgBackRest \\",
" /usr/share/perl5"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo find /usr/share/perl5/pgBackRest -type f -exec chmod 644 {} +"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo find /usr/share/perl5/pgBackRest -type d -exec chmod 755 {} +"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo cp ~/pgbackrest-release-1.03/bin/pgbackrest /usr/bin/pgbackrest"
2016-06-02 11:10:24 -04:00
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo chmod 755 /usr/bin/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo mkdir -m 770 /var/log/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo chown postgres:postgres /var/log/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"pgBackRest 1.03 - General help",
2016-06-02 11:10:24 -04:00
"",
"Usage:",
" pgbackrest [options] [command]",
"",
"Commands:",
" archive-get Get a WAL segment from the archive.",
" archive-push Push a WAL segment to the archive.",
" backup Backup a database cluster.",
2016-07-02 10:22:52 -04:00
" check Check the configuration.",
2016-06-02 11:10:24 -04:00
" expire Expire backups that exceed retention.",
" help Get help.",
" info Retrieve information about backups.",
" restore Restore a database cluster.",
" start Allow pgBackRest processes to run.",
" stop Stop pgBackRest processes from running.",
" version Get version.",
"",
"Use 'pgbackrest help [command]' for more information."
]
}
},
{
"key" : {
"cmd" : [
"sudo pg_createcluster 9.4 demo"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"Creating new cluster 9.4/demo ...",
" config /etc/postgresql/9.4/demo",
" data /var/lib/postgresql/9.4/demo",
" locale C",
" socket /var/run/postgresql",
" port 5432"
]
}
},
{
"key" : {
"file" : "/etc/postgresql/9.4/demo/postgresql.conf",
"host" : "db-master",
"option" : {
"listen_addresses" : {
"value" : "'*'"
}
}
},
"type" : "cfg-postgresql",
"value" : {
"config" : [
"listen_addresses = '*'"
]
}
},
{
"key" : {
"file" : "/etc/postgresql/9.4/demo/postgresql.conf",
"host" : "db-master",
"option" : {
"log_line_prefix" : {
"value" : "''"
}
}
},
"type" : "cfg-postgresql",
"value" : {
"config" : [
"listen_addresses = '*'",
"log_line_prefix = ''"
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"demo" : {
"db-path" : {
"value" : "/var/lib/postgresql/9.4/demo"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/postgresql/9.4/demo"
]
}
},
{
"key" : {
"cmd" : [
"sudo mkdir /var/lib/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo chmod 750 /var/lib/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo chown postgres:postgres /var/lib/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"global" : {
"repo-path" : {
"value" : "/var/lib/pgbackrest"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/postgresql/9.4/demo",
"",
"[global]",
"repo-path=/var/lib/pgbackrest"
]
}
},
{
"key" : {
"file" : "/etc/postgresql/9.4/demo/postgresql.conf",
"host" : "db-master",
"option" : {
"archive_command" : {
"value" : "'pgbackrest --stanza=demo archive-push %p'"
},
"archive_mode" : {
"value" : "on"
},
"max_wal_senders" : {
"value" : "3"
},
"wal_level" : {
"value" : "hot_standby"
}
}
},
"type" : "cfg-postgresql",
"value" : {
"config" : [
"archive_command = 'pgbackrest --stanza=demo archive-push %p'",
"archive_mode = on",
"listen_addresses = '*'",
"log_line_prefix = ''",
"max_wal_senders = 3",
"wal_level = hot_standby"
]
}
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo restart"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
2016-07-02 10:22:52 -04:00
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info check"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
" successfully stored in the archive at "
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: check start: --db-path=/var/lib/postgresql/9.4/demo --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo",
" INFO: switch xlog 000000010000000000000001",
" INFO: WAL segment 000000010000000000000001 successfully stored in the archive at '/var/lib/pgbackrest/archive/demo/9.4-1/0000000100000000/000000010000000000000001-45c1331c9cd2fae667f2a85e9dddd5673ef8e5b0.gz'",
" INFO: check stop"
]
}
},
2016-06-02 11:10:24 -04:00
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"no prior backup exists|full backup size"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: backup start: --db-path=/var/lib/postgresql/9.4/demo --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo",
" WARN: no prior backup exists, incr backup has been changed to full",
2016-07-02 10:22:52 -04:00
" INFO: execute exclusive pg_start_backup() with label \"pgBackRest backup started at 2016-07-02 14:08:40\": backup begins after the next regular checkpoint completes",
" INFO: archive start: 0/2000028",
2016-06-02 11:10:24 -04:00
" [filtered 759 lines of output]",
" INFO: backup file /var/lib/postgresql/9.4/demo/base/1/11885 (0B, 100%)",
2016-07-02 10:22:52 -04:00
" INFO: backup file /var/lib/postgresql/9.4/demo/global/pg_control (8KB) checksum 79ea8211b81a7d657767f3ed12fb384c915462b0",
2016-06-02 11:10:24 -04:00
" INFO: full backup size = 19.3MB",
" INFO: execute exclusive pg_stop_backup() and wait for all WAL segments to archive",
2016-07-02 10:22:52 -04:00
" INFO: archive stop: 0/20000F0",
2016-06-02 11:10:24 -04:00
" [filtered 4 lines of output]"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres ls -1 /var/lib/pgbackrest/backup/demo | tail -4 | head -1"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"20160702-140845F"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=diff \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"diff backup size"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" [filtered 4 lines of output]",
2016-07-02 10:22:52 -04:00
" INFO: backup file /var/lib/postgresql/9.4/demo/backup_label (236B, 100%) checksum 5a3c99e525cd0ecd3ce99f028cd7ea84d78ff613",
" INFO: backup file /var/lib/postgresql/9.4/demo/global/pg_control (8KB) checksum 5413b0dab8460b2ba833de8b6cde194416d41901",
2016-06-02 11:10:24 -04:00
" INFO: diff backup size = 8.2KB",
" INFO: execute exclusive pg_stop_backup() and wait for all WAL segments to archive",
2016-07-02 10:22:52 -04:00
" INFO: archive stop: 0/30000F0",
2016-06-02 11:10:24 -04:00
" [filtered 4 lines of output]"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest info"
],
"highlight" : {
"filter" : false,
"filter-context" : 2,
"list" : [
"(full|incr|diff) backup"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"stanza: demo",
" status: ok",
"",
2016-07-02 10:22:52 -04:00
" full backup: 20160702-140845F",
" start / stop timestamp: 2016-07-02 14:08:40 / 2016-07-02 14:08:45",
2016-06-02 11:10:24 -04:00
" database size: 19.3MB, backup size: 19.3MB",
" repository size: 2.2MB, repository backup size: 2.2MB",
"",
2016-07-02 10:22:52 -04:00
" diff backup: 20160702-140845F_20160702-140848D",
" start / stop timestamp: 2016-07-02 14:08:45 / 2016-07-02 14:08:48",
2016-06-02 11:10:24 -04:00
" database size: 19.3MB, backup size: 8.2KB",
2016-07-02 10:22:52 -04:00
" repository size: 2.2MB, repository backup size: 345B",
" backup reference list: 20160702-140845F"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres rm /var/lib/postgresql/9.4/demo/global/pg_control"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo start"
],
"err-expect" : "1",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"could not find the database system"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"The PostgreSQL server failed to start. Please check the log output:",
"postgres: could not find the database system",
"Expected to find it in the directory \"/var/lib/postgresql/9.4/demo\",",
"but could not open file \"/var/lib/postgresql/9.4/demo/global/pg_control\": No such file or directory"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres find /var/lib/postgresql/9.4/demo -mindepth 1 -delete"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo restore"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"backup begins after the next regular checkpoint completes"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: backup start: --db-path=/var/lib/postgresql/9.4/demo --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo --type=incr",
2016-07-02 10:22:52 -04:00
" INFO: last backup label = 20160702-140845F_20160702-140848D, version = 1.03",
" INFO: execute exclusive pg_start_backup() with label \"pgBackRest backup started at 2016-07-02 14:08:58\": backup begins after the next regular checkpoint completes",
" INFO: archive start: 0/5000028",
" INFO: backup file /var/lib/postgresql/9.4/demo/base/12139/pg_internal.init (115.2KB, 71%) checksum b997e54b258af88b244f2dca258a02e7d668b72a",
2016-06-02 11:10:24 -04:00
" [filtered 15 lines of output]"
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"global" : {
"start-fast" : {
"value" : "y"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/postgresql/9.4/demo",
"",
"[global]",
"repo-path=/var/lib/pgbackrest",
"start-fast=y"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"backup begins after the requested immediate checkpoint completes"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: backup start: --db-path=/var/lib/postgresql/9.4/demo --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo --start-fast --type=incr",
2016-07-02 10:22:52 -04:00
" INFO: last backup label = 20160702-140845F_20160702-140901I, version = 1.03",
" INFO: execute exclusive pg_start_backup() with label \"pgBackRest backup started at 2016-07-02 14:09:02\": backup begins after the requested immediate checkpoint completes",
" INFO: archive start: 0/6000028",
" INFO: backup file /var/lib/postgresql/9.4/demo/backup_label (236B, 100%) checksum a8e281488bedaf3321a2d0e527110e5896c19a24",
2016-06-02 11:10:24 -04:00
" [filtered 8 lines of output]"
]
}
},
{
"key" : {
"cmd" : [
"sudo chmod 550 /var/lib/pgbackrest/temp"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr \\",
" --log-level-console=info backup"
],
"err-expect" : "122",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"ERROR:"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" [filtered 2 lines of output]",
2016-07-02 10:22:52 -04:00
" INFO: execute exclusive pg_start_backup() with label \"pgBackRest backup started at 2016-07-02 14:09:05\": backup begins after the requested immediate checkpoint completes",
" INFO: archive start: 0/7000028",
2016-06-02 11:10:24 -04:00
" ERROR: [122]: unable to create /var/lib/pgbackrest/temp/demo.tmp: Permission denied",
" INFO: backup stop"
]
}
},
{
"key" : {
"cmd" : [
"sudo chmod 750 /var/lib/pgbackrest/temp"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr \\",
" --log-level-console=info backup"
],
"err-expect" : "132",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"ERROR:"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: backup start: --db-path=/var/lib/postgresql/9.4/demo --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo --start-fast --type=incr",
2016-07-02 10:22:52 -04:00
" INFO: last backup label = 20160702-140845F_20160702-140905I, version = 1.03",
" INFO: execute exclusive pg_start_backup() with label \"pgBackRest backup started at 2016-07-02 14:09:07\": backup begins after the requested immediate checkpoint completes",
2016-06-02 11:10:24 -04:00
" ERROR: [132]: ERROR: a backup is already in progress",
" HINT: Run pg_stop_backup() and try again.:",
2016-07-02 10:22:52 -04:00
" select to_char(current_timestamp, 'YYYY-MM-DD HH24:MI:SS.US TZ'), lsn::text from pg_start_backup('pgBackRest backup started at 2016-07-02 14:09:07', true) as lsn"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"global" : {
"stop-auto" : {
"value" : "y"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/postgresql/9.4/demo",
"",
"[global]",
"repo-path=/var/lib/pgbackrest",
"start-fast=y",
"stop-auto=y"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"cluster is already in backup mode|backup begins after the requested immediate checkpoint completes"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: backup start: --db-path=/var/lib/postgresql/9.4/demo --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo --start-fast --stop-auto --type=incr",
2016-07-02 10:22:52 -04:00
" INFO: last backup label = 20160702-140845F_20160702-140905I, version = 1.03",
2016-06-02 11:10:24 -04:00
" WARN: the cluster is already in backup mode but no backup process is running. pg_stop_backup() will be called so a new backup can be started.",
" INFO: execute exclusive pg_stop_backup() and wait for all WAL segments to archive",
2016-07-02 10:22:52 -04:00
" INFO: execute exclusive pg_start_backup() with label \"pgBackRest backup started at 2016-07-02 14:09:08\": backup begins after the requested immediate checkpoint completes",
" INFO: archive start: 0/9000028",
" INFO: backup file /var/lib/postgresql/9.4/demo/backup_label (236B, 100%) checksum 528109da415f9fc9109bc7ac6c51f1364b3188e6",
2016-06-02 11:10:24 -04:00
" [filtered 8 lines of output]"
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"global" : {
"retention-full" : {
"value" : "2"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/postgresql/9.4/demo",
"",
"[global]",
"repo-path=/var/lib/pgbackrest",
"retention-full=2",
"start-fast=y",
"stop-auto=y"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=full \\",
" --log-level-console=detail backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
2016-07-02 10:22:52 -04:00
"archive retention on backup 20160702-140845F|remove archive"
2016-06-02 11:10:24 -04:00
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" [filtered 768 lines of output]",
" INFO: backup stop",
" INFO: expire start: --log-level-console=detail --repo-path=/var/lib/pgbackrest --retention-full=2 --stanza=demo",
2016-07-02 10:22:52 -04:00
"DETAIL: archive retention on backup 20160702-140845F, start = 000000010000000000000002",
2016-06-02 11:10:24 -04:00
"DETAIL: remove archive: start = 000000010000000000000001, stop = 000000010000000000000001",
" INFO: expire stop"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres ls -1 /var/lib/pgbackrest/backup/demo | tail -4 | head -1"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"20160702-140918F"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=full \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
2016-07-02 10:22:52 -04:00
"expire full backup set\\: 20160702-140845F|archive retention on backup 20160702-140918F|remove archive"
2016-06-02 11:10:24 -04:00
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" [filtered 768 lines of output]",
" INFO: backup stop",
" INFO: expire start: --log-level-console=info --repo-path=/var/lib/pgbackrest --retention-full=2 --stanza=demo",
2016-07-02 10:22:52 -04:00
" INFO: expire full backup set: 20160702-140845F, 20160702-140845F_20160702-140848D, 20160702-140845F_20160702-140901I, 20160702-140845F_20160702-140905I, 20160702-140845F_20160702-140912I",
" INFO: remove expired backup 20160702-140845F_20160702-140912I",
" INFO: remove expired backup 20160702-140845F_20160702-140905I",
2016-06-02 11:10:24 -04:00
" [filtered 3 lines of output]"
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"global" : {
"retention-diff" : {
"value" : "1"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/postgresql/9.4/demo",
"",
"[global]",
"repo-path=/var/lib/pgbackrest",
"retention-diff=1",
"retention-full=2",
"start-fast=y",
"stop-auto=y"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=diff backup"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres ls -1 /var/lib/pgbackrest/backup/demo | tail -4 | head -1"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"20160702-140923F_20160702-140927D"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr backup"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=diff \\",
" --log-level-console=info backup"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
2016-07-02 10:22:52 -04:00
"expire diff backup set: 20160702-140923F_20160702-140927D"
2016-06-02 11:10:24 -04:00
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" [filtered 10 lines of output]",
" INFO: backup stop",
" INFO: expire start: --log-level-console=info --repo-path=/var/lib/pgbackrest --retention-diff=1 --retention-full=2 --stanza=demo",
2016-07-02 10:22:52 -04:00
" INFO: expire diff backup set: 20160702-140923F_20160702-140927D, 20160702-140923F_20160702-140930I",
" INFO: remove expired backup 20160702-140923F_20160702-140930I",
" INFO: remove expired backup 20160702-140923F_20160702-140927D"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
" --log-level-console=detail restore"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"demo\\/PG_VERSION - exists and matches backup|check\\/clean db path|restore global\\/pg_control"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
" [filtered 691 lines of output]",
2016-06-02 11:10:24 -04:00
"DETAIL: restore file /var/lib/postgresql/9.4/demo/base/12134/PG_VERSION - exists and matches backup (4B, 99%) checksum 8dbabb96e032b8d9f1993c0e4b9141e71ade01a1",
"DETAIL: restore file /var/lib/postgresql/9.4/demo/base/1/PG_VERSION - exists and matches backup (4B, 99%) checksum 8dbabb96e032b8d9f1993c0e4b9141e71ade01a1",
"DETAIL: restore file /var/lib/postgresql/9.4/demo/PG_VERSION - exists and matches backup (4B, 100%) checksum 8dbabb96e032b8d9f1993c0e4b9141e71ade01a1",
"DETAIL: restore file /var/lib/postgresql/9.4/demo/global/12086 - exists and is zero size (0B, 100%)",
"DETAIL: restore file /var/lib/postgresql/9.4/demo/global/12038 - exists and is zero size (0B, 100%)",
" [filtered 83 lines of output]",
"DETAIL: restore file /var/lib/postgresql/9.4/demo/base/1/11885 - exists and is zero size (0B, 100%)",
" INFO: wrote /var/lib/postgresql/9.4/demo/recovery.conf",
" INFO: restore global/pg_control (copied last to ensure aborted restores cannot be started)",
2016-07-02 10:22:52 -04:00
" INFO: restore file /var/lib/postgresql/9.4/demo/global/pg_control (8KB) checksum 504a37019cf088b5b12c7b13ca862601f49ef168",
2016-06-02 11:10:24 -04:00
" INFO: restore stop"
]
}
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"create database test1;\""
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"CREATE DATABASE"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"create database test2;\""
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"CREATE DATABASE"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr backup"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"create table test1_table (id int); \\",
" insert into test1_table (id) values (1);\" test1"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"INSERT 0 1"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"create table test2_table (id int); \\",
" insert into test2_table (id) values (2);\" test2"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"INSERT 0 1"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres du -sh /var/lib/postgresql/9.4/demo/base/16384"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"6.4M\t/var/lib/postgresql/9.4/demo/base/16384"
]
}
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
" --db-include=test2 restore"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select * from test2_table;\" test2"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" id ",
"----",
" 2",
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select * from test1_table;\" test1"
],
"err-expect" : "2",
"highlight" : {
"filter" : false,
"filter-context" : 2,
"list" : [
"relation mapping file.*contains invalid data"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"psql: FATAL: relation mapping file \"base/16384/pg_filenode.map\" contains invalid data"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres du -sh /var/lib/postgresql/9.4/demo/base/16384"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"152K\t/var/lib/postgresql/9.4/demo/base/16384"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"drop database test1;\""
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"DROP DATABASE"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select oid, datname from pg_database order by oid;\""
],
"highlight" : {
"filter" : false,
"filter-context" : 2,
"list" : [
"test2"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" oid | datname ",
"-------+-----------",
" 1 | template1",
" 12134 | template0",
" 12139 | postgres",
" 16385 | test2",
"(4 rows)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=diff backup"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"begin; \\",
" create table important_table (message text); \\",
" insert into important_table values ('Important Data'); \\",
" commit; \\",
" select * from important_table;\""
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" message ",
"----------------",
" Important Data",
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -Atc \"select current_timestamp\""
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"2016-07-02 14:09:58.282805+00"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"begin; \\",
" drop table important_table; \\",
" commit; \\",
" select * from important_table;\""
],
"err-expect" : "1",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"does not exist"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"ERROR: relation \"important_table\" does not exist",
"LINE 1: ...le important_table; commit; select * from important_...",
" ^"
]
}
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
2016-07-02 10:22:52 -04:00
" --type=time \"--target=2016-07-02 14:09:58.282805+00\" restore"
2016-06-02 11:10:24 -04:00
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm /var/log/postgresql/postgresql-9.4-demo.log"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/lib/postgresql/9.4/demo/recovery.conf"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"recovery_target_time"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"restore_command = '/usr/bin/pgbackrest --stanza=demo archive-get %f \"%p\"'",
2016-07-02 10:22:52 -04:00
"recovery_target_time = '2016-07-02 14:09:58.282805+00'"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select * from important_table\""
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" message ",
"----------------",
" Important Data",
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/log/postgresql/postgresql-9.4-demo.log"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"recovery stopping before|last completed transaction|starting point-in-time recovery"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"LOG: database system was interrupted; last known up at 2016-07-02 14:09:54 UTC",
2016-06-02 11:10:24 -04:00
"LOG: creating missing WAL directory \"pg_xlog/archive_status\"",
2016-07-02 10:22:52 -04:00
"LOG: starting point-in-time recovery to 2016-07-02 14:09:58.282805+00",
2016-06-02 11:10:24 -04:00
"LOG: restored log file \"00000004.history\" from archive",
2016-07-02 10:22:52 -04:00
"LOG: restored log file \"000000040000000000000014\" from archive",
" [filtered 2 lines of output]",
"LOG: incomplete startup packet",
2016-06-02 11:10:24 -04:00
"LOG: restored log file \"000000040000000000000015\" from archive",
2016-07-02 10:22:52 -04:00
"LOG: recovery stopping before commit of transaction 689, time 2016-07-02 14:09:58.443347+00",
2016-06-02 11:10:24 -04:00
"LOG: redo done at 0/150157F0",
2016-07-02 10:22:52 -04:00
"LOG: last completed transaction was at log time 2016-07-02 14:09:58.144318+00",
2016-06-02 11:10:24 -04:00
"LOG: selected new timeline ID: 5",
2016-07-02 10:22:52 -04:00
"LOG: restored log file \"00000004.history\" from archive",
2016-06-02 11:10:24 -04:00
" [filtered 4 lines of output]"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"begin; \\",
" drop table important_table; \\",
" commit; \\",
" select * from important_table;\""
],
"err-expect" : "1",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"does not exist"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"ERROR: relation \"important_table\" does not exist",
"LINE 1: ...le important_table; commit; select * from important_...",
" ^"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres ls -1 /var/lib/pgbackrest/backup/demo | tail -4 | head -1"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"20160702-140923F_20160702-140957D"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --type=incr backup"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
2016-07-02 10:22:52 -04:00
" --type=time \"--target=2016-07-02 14:09:58.282805+00\" restore"
2016-06-02 11:10:24 -04:00
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm /var/log/postgresql/postgresql-9.4-demo.log"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select * from important_table\""
],
"err-expect" : "1",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"does not exist"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"ERROR: relation \"important_table\" does not exist",
"LINE 1: select * from important_table",
" ^"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/log/postgresql/postgresql-9.4-demo.log"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
2016-07-02 10:22:52 -04:00
"starting point-in-time recovery|consistent recovery state reached"
2016-06-02 11:10:24 -04:00
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"LOG: database system was interrupted; last known up at 2016-07-02 14:10:06 UTC",
2016-06-02 11:10:24 -04:00
"LOG: creating missing WAL directory \"pg_xlog/archive_status\"",
2016-07-02 10:22:52 -04:00
"LOG: starting point-in-time recovery to 2016-07-02 14:09:58.282805+00",
"FATAL: the database system is starting up",
"FATAL: the database system is starting up",
2016-06-02 11:10:24 -04:00
"LOG: restored log file \"00000005.history\" from archive",
2016-07-02 10:22:52 -04:00
"LOG: restored log file \"000000050000000000000016\" from archive",
"LOG: redo starts at 0/16000028",
"LOG: consistent recovery state reached at 0/160000F0",
2016-06-02 11:10:24 -04:00
"LOG: incomplete startup packet",
2016-07-02 10:22:52 -04:00
"LOG: redo done at 0/160000F0",
" [filtered 9 lines of output]"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest info"
],
"highlight" : {
"filter" : false,
"filter-context" : 2,
"list" : [
2016-07-02 10:22:52 -04:00
"20160702-140923F_20160702-140957D"
2016-06-02 11:10:24 -04:00
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"stanza: demo",
" status: ok",
"",
2016-07-02 10:22:52 -04:00
" full backup: 20160702-140918F",
" start / stop timestamp: 2016-07-02 14:09:13 / 2016-07-02 14:09:18",
2016-06-02 11:10:24 -04:00
" database size: 19.3MB, backup size: 19.3MB",
" repository size: 2.2MB, repository backup size: 2.2MB",
"",
2016-07-02 10:22:52 -04:00
" full backup: 20160702-140923F",
" start / stop timestamp: 2016-07-02 14:09:18 / 2016-07-02 14:09:23",
2016-06-02 11:10:24 -04:00
" database size: 19.3MB, backup size: 19.3MB",
" repository size: 2.2MB, repository backup size: 2.2MB",
"",
2016-07-02 10:22:52 -04:00
" diff backup: 20160702-140923F_20160702-140957D",
" start / stop timestamp: 2016-07-02 14:09:54 / 2016-07-02 14:09:57",
2016-06-02 11:10:24 -04:00
" database size: 25.7MB, backup size: 6.5MB",
" repository size: 3MB, repository backup size: 788.8KB",
2016-07-02 10:22:52 -04:00
" backup reference list: 20160702-140923F",
2016-06-02 11:10:24 -04:00
"",
2016-07-02 10:22:52 -04:00
" incr backup: 20160702-140923F_20160702-141008I",
" start / stop timestamp: 2016-07-02 14:10:05 / 2016-07-02 14:10:08",
2016-06-02 11:10:24 -04:00
" database size: 25.6MB, backup size: 1.9MB",
" repository size: 2.9MB, repository backup size: 214.4KB",
2016-07-02 10:22:52 -04:00
" backup reference list: 20160702-140923F, 20160702-140923F_20160702-140957D"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta \\",
2016-07-02 10:22:52 -04:00
" --type=time \"--target=2016-07-02 14:09:58.282805+00\" \\",
" --set=20160702-140923F_20160702-140957D restore"
2016-06-02 11:10:24 -04:00
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo rm /var/log/postgresql/postgresql-9.4-demo.log"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select * from important_table\""
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" message ",
"----------------",
" Important Data",
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/log/postgresql/postgresql-9.4-demo.log"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"recovery stopping before|last completed transaction|starting point-in-time recovery"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"LOG: database system was interrupted; last known up at 2016-07-02 14:09:54 UTC",
2016-06-02 11:10:24 -04:00
"LOG: creating missing WAL directory \"pg_xlog/archive_status\"",
2016-07-02 10:22:52 -04:00
"LOG: starting point-in-time recovery to 2016-07-02 14:09:58.282805+00",
2016-06-02 11:10:24 -04:00
"LOG: restored log file \"00000004.history\" from archive",
2016-07-02 10:22:52 -04:00
"LOG: restored log file \"000000040000000000000014\" from archive",
" [filtered 2 lines of output]",
2016-06-02 11:10:24 -04:00
"LOG: incomplete startup packet",
"LOG: restored log file \"000000040000000000000015\" from archive",
2016-07-02 10:22:52 -04:00
"LOG: recovery stopping before commit of transaction 689, time 2016-07-02 14:09:58.443347+00",
2016-06-02 11:10:24 -04:00
"LOG: redo done at 0/150157F0",
2016-07-02 10:22:52 -04:00
"LOG: last completed transaction was at log time 2016-07-02 14:09:58.144318+00",
2016-06-02 11:10:24 -04:00
"LOG: restored log file \"00000005.history\" from archive",
2016-07-02 10:22:52 -04:00
"LOG: restored log file \"00000006.history\" from archive",
" [filtered 8 lines of output]"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
2016-07-02 10:22:52 -04:00
"image" : "backrest/u14-backup-doc-pre",
2016-06-02 11:10:24 -04:00
"mount" : "/backrest:/backrest",
"name" : "backup",
"os" : "u14",
"user" : "vagrant"
},
"type" : "host",
"value" : {
"ip" : "172.17.0.3"
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "backup",
"option" : {
"global" : {
"repo-path" : {
"value" : "/var/lib/pgbackrest"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[global]",
"repo-path=/var/lib/pgbackrest"
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "backup",
"option" : {
"demo" : {
"db-host" : {
"value" : "db-master"
},
"db-path" : {
"value" : "/var/lib/postgresql/9.4/demo"
}
},
"global" : {
"start-fast" : {
"value" : "y"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-host=db-master",
"db-path=/var/lib/postgresql/9.4/demo",
"",
"[global]",
"repo-path=/var/lib/pgbackrest",
"start-fast=y"
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"demo" : {
"db-path" : {
"value" : "/var/lib/postgresql/9.4/demo"
}
},
"global" : {
"backup-host" : {
"value" : "backup"
},
"repo-path" : {
"value" : "/var/lib/pgbackrest"
}
}
},
"reset" : true
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/postgresql/9.4/demo",
"",
"[global]",
"backup-host=backup",
"repo-path=/var/lib/pgbackrest"
]
}
},
{
"key" : {
"cmd" : [
"sudo find /var/lib/pgbackrest -delete"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
2016-07-02 10:22:52 -04:00
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo check"
],
"host" : "db-master",
"output" : true
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u backrest pgbackrest --stanza=demo check"
],
"host" : "backup",
"output" : true
},
"type" : "exe"
},
2016-06-02 11:10:24 -04:00
{
"key" : {
"cmd" : [
"sudo -u backrest pgbackrest --stanza=demo backup"
],
"host" : "backup",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" WARN: no prior backup exists, incr backup has been changed to full"
]
}
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta restore"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u backrest pgbackrest --stanza=demo backup"
],
"host" : "backup",
"output" : false
},
"type" : "exe"
},
2016-07-02 10:22:52 -04:00
{
"key" : {
"cmd" : [
"sudo mkdir -m 750 /var/spool/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo chown postgres:postgres /var/spool/pgbackrest"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-master",
"option" : {
"global" : {
"archive-async" : {
"value" : "y"
},
"spool-path" : {
"value" : "/var/spool/pgbackrest"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/postgresql/9.4/demo",
"",
"[global]",
"archive-async=y",
"backup-host=backup",
"repo-path=/var/lib/pgbackrest",
"spool-path=/var/spool/pgbackrest"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --log-level-console=info check"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"WAL segment"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" INFO: check start: --backup-host=backup --db-path=/var/lib/postgresql/9.4/demo --log-level-console=info --repo-path=/var/lib/pgbackrest --stanza=demo",
" INFO: switch xlog 00000008000000000000001B",
" INFO: WAL segment 00000008000000000000001B successfully stored in the archive at '/var/lib/pgbackrest/archive/demo/9.4-1/0000000800000000/00000008000000000000001B-614847b479ea313bedefded949a02cb4fea4b473.gz'",
" INFO: check stop"
]
}
},
2016-06-02 11:10:24 -04:00
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo backup"
],
"err-expect" : "137",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"stop file exists for all stanzas"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" ERROR: [137]: stop file exists for all stanzas"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest stop"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" WARN: stop file already exists for all stanzas"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo stop"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo backup"
],
"err-expect" : "137",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"stop file exists for stanza demo"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" ERROR: [137]: stop file exists for stanza demo"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo start"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
2016-07-02 10:22:52 -04:00
"image" : "backrest/u14-db-9.4-doc-pre",
2016-06-02 11:10:24 -04:00
"mount" : "/backrest:/backrest",
"name" : "db-standby",
"os" : "u14",
"user" : "vagrant"
},
"type" : "host",
"value" : {
"ip" : "172.17.0.4"
}
},
{
"key" : {
"file" : "/etc/postgresql/9.4/demo/postgresql.conf",
"host" : "db-standby",
"option" : {
"log_filename" : {
"value" : "'postgresql.log'"
},
"log_line_prefix" : {
"value" : "''"
}
}
},
"type" : "cfg-postgresql",
"value" : {
"config" : [
"log_filename = 'postgresql.log'",
"log_line_prefix = ''"
]
}
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-standby",
"option" : {
"demo" : {
"db-path" : {
"value" : "/var/lib/postgresql/9.4/demo"
},
"recovery-option" : {
"value" : "standby_mode=on"
}
},
"global" : {
"backup-host" : {
"value" : "backup"
},
"repo-path" : {
"value" : "/var/lib/pgbackrest"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/postgresql/9.4/demo",
"recovery-option=standby_mode=on",
"",
"[global]",
"backup-host=backup",
"repo-path=/var/lib/pgbackrest"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta restore"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/lib/postgresql/9.4/demo/recovery.conf"
],
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"standby_mode = 'on'",
"restore_command = '/usr/bin/pgbackrest --stanza=demo archive-get %f \"%p\"'"
]
}
},
{
"key" : {
"file" : "/etc/postgresql/9.4/demo/postgresql.conf",
"host" : "db-standby",
"option" : {
"hot_standby" : {
"value" : "on"
}
}
},
"type" : "cfg-postgresql",
"value" : {
"config" : [
"hot_standby = on",
"log_filename = 'postgresql.log'",
"log_line_prefix = ''"
]
}
},
{
"key" : {
"cmd" : [
"sudo rm /var/log/postgresql/postgresql-9.4-demo.log"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo start"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/log/postgresql/postgresql-9.4-demo.log"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"entering standby mode|database system is ready to accept read only connections"
]
},
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
"LOG: database system was interrupted; last known up at 2016-07-02 14:10:42 UTC",
2016-06-02 11:10:24 -04:00
"LOG: creating missing WAL directory \"pg_xlog/archive_status\"",
"LOG: entering standby mode",
"LOG: restored log file \"00000008.history\" from archive",
2016-07-02 10:22:52 -04:00
"LOG: incomplete startup packet",
"LOG: restored log file \"00000008000000000000001A\" from archive",
"LOG: redo starts at 0/1A000028",
"LOG: consistent recovery state reached at 0/1A0000F0",
"LOG: database system is ready to accept read only connections",
"LOG: restored log file \"00000008000000000000001B\" from archive"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \" \\",
" begin; \\",
" create table replicated_table (message text); \\",
" insert into replicated_table values ('Important Data'); \\",
" commit; \\",
" select * from replicated_table\";"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" message ",
"----------------",
" Important Data",
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select * from replicated_table;\""
],
"err-expect" : "1",
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"does not exist"
]
},
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"ERROR: relation \"replicated_table\" does not exist",
"LINE 1: select * from replicated_table;",
" ^"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \"select *, current_timestamp from pg_switch_xlog()\";"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" pg_switch_xlog | now ",
"----------------+-------------------------------",
2016-07-02 10:22:52 -04:00
" 0/1C017918 | 2016-07-02 14:11:03.220459+00",
2016-06-02 11:10:24 -04:00
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \" \\",
" select *, current_timestamp from replicated_table\""
],
"highlight" : {
"filter" : false,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
2016-07-02 10:22:52 -04:00
" message | now ",
"----------------+-------------------------------",
" Important Data | 2016-07-02 14:11:06.363685+00",
2016-06-02 11:10:24 -04:00
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \" \\",
" create user replicator password 'jw8s0F4' replication\";"
],
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"CREATE ROLE"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres sh -c 'echo \\",
" \"host replication replicator 172.17.0.4/32 md5\" \\",
" >> /etc/postgresql/9.4/demo/pg_hba.conf'"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo reload"
],
"host" : "db-master",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"file" : "/etc/pgbackrest.conf",
"host" : "db-standby",
"option" : {
"demo" : {
"recovery-option" : {
"value" : "primary_conninfo=host=172.17.0.2 port=5432 user=replicator"
}
}
}
},
"type" : "cfg-pgbackrest",
"value" : {
"config" : [
"[demo]",
"db-path=/var/lib/postgresql/9.4/demo",
"recovery-option=standby_mode=on",
"recovery-option=primary_conninfo=host=172.17.0.2 port=5432 user=replicator",
"",
"[global]",
"backup-host=backup",
"repo-path=/var/lib/pgbackrest"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres sh -c 'echo \\",
" \"172.17.0.2:*:replication:replicator:jw8s0F4\" \\",
" >> /home/postgres/.pgpass'"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres chmod 600 /home/postgres/.pgpass"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo stop"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres pgbackrest --stanza=demo --delta restore"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/lib/postgresql/9.4/demo/recovery.conf"
],
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
"primary_conninfo = 'host=172.17.0.2 port=5432 user=replicator'",
"standby_mode = 'on'",
"restore_command = '/usr/bin/pgbackrest --stanza=demo archive-get %f \"%p\"'"
]
}
},
{
"key" : {
"cmd" : [
"sudo rm /var/log/postgresql/postgresql-9.4-demo.log"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo pg_ctlcluster 9.4 demo start"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres sleep 1"
],
"host" : "db-standby",
"output" : false
},
"type" : "exe"
},
{
"key" : {
"cmd" : [
"sudo -u postgres cat /var/log/postgresql/postgresql-9.4-demo.log"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"started streaming WAL from primary"
]
},
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" [filtered 9 lines of output]",
2016-07-02 10:22:52 -04:00
"LOG: restored log file \"00000008000000000000001B\" from archive",
"LOG: restored log file \"00000008000000000000001C\" from archive",
"LOG: started streaming WAL from primary at 0/1D000000 on timeline 8"
2016-06-02 11:10:24 -04:00
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \" \\",
" begin; \\",
" create table stream_table (message text); \\",
" insert into stream_table values ('Important Data'); \\",
" commit; \\",
" select *, current_timestamp from stream_table\";"
],
"highlight" : {
"filter" : true,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-master",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" message | now ",
"----------------+-------------------------------",
2016-07-02 10:22:52 -04:00
" Important Data | 2016-07-02 14:11:13.523097+00",
2016-06-02 11:10:24 -04:00
"(1 row)"
]
}
},
{
"key" : {
"cmd" : [
"sudo -u postgres psql -c \" \\",
" select *, current_timestamp from stream_table\""
],
"highlight" : {
"filter" : false,
"filter-context" : 2,
"list" : [
"Important Data"
]
},
"host" : "db-standby",
"output" : true
},
"type" : "exe",
"value" : {
"output" : [
" message | now ",
"----------------+-------------------------------",
2016-07-02 10:22:52 -04:00
" Important Data | 2016-07-02 14:11:13.769359+00",
2016-06-02 11:10:24 -04:00
"(1 row)"
]
}
}
]
}
}
}