I'm
trying to get WAL file copying working across two systems. It seems
pretty straightforward to handle this in the "archive_command" of the
primary, in which I am able to copy the files easily to a staging area
for the backup system.
On the backup system, I have the recovery.conf pointing to my script, but I have a few questions on how that program should behave, and whether I'd be much wiser to just use pg_standby instead of my own script. 1) I do not want to give the backup PG a file unless it's a "complete" file. I don't want to give it one that is currently in the middle of being transferred from the primary to the backup system (or a backup copy that failed in the middle). Most of my files are 16777216 bytes, so I initially checked that size. But I found that there are files with a name like '0000000100000002000000DC.00000020.backup' that is only 272 bytes. Will that file also need to be given to PG recovery, and if so, how are most determining if a small file is complete or just a partial from the copy? 2) On the recovery side, the %p and %f values are giving me %p of 'pg_xlog/RECOVERYXLOG' and %f of '0000000100000003000000B1'. Can I confirm that this means my recover program should find a file named '0000000100000003000000B1' in my backup system's WAL archive and copy it to the file named 'pg_xlog/RECOVERYXLOG', or should I put it into 'pg_xlog/0000000100000003000000B1'? 3) On the backup PG, is it correct that I have to remove backup_label, postmaster.pid and pg_xlog if they are part of the or TAR backup from the primary's PGDATA area? Thanks, David |