Re: Reliable WAL file shipping over unreliable network

From: scott ribe <scott_ribe(at)elevated-dev(dot)com>
To: Nagy László Zsolt <gandalf(at)shopzeus(dot)com>
Cc: pgsql-admin(at)lists(dot)postgresql(dot)org
Subject: Re: Reliable WAL file shipping over unreliable network
Date: 2018-02-28 18:12:03
Message-ID: 9BE48599-5417-42BF-A7D3-554590878841@elevated-dev.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

There seem to be 2 fundamental misunderstandings here:

1) That other processes cannot see data written to a file until it is flushed to disk; this is not true; while file data is still in file cache, it is visible to other processes.

2) That rsync writes the file on the destination directly; it does not; it writes into a temporary file and renames that file when it is complete.

> On Feb 28, 2018, at 10:53 AM, Nagy László Zsolt <gandalf(at)shopzeus(dot)com> wrote:
>
>
>>
>> Just use "-ac”; you want -c option to ensure no data corruption during the transfer. Do not delete the file; let Postgres manage that.
>>
>> Here is a snippet from I script I use for archiving. You also want to make your script returns failure or success correctly.
>>
>> # SSH Command and options
>> SSH_CMD="ssh -o ServerAliveInterval=20 $ARCH_SERVER"
>> STS=3
>>
>> OUTPUT=$(rsync -ac --rsync-path="mkdir -p $ARCH_DIR && rsync" $XLOGFILE $ARCH_SERVER:$ARCH_DIR/$WALFILE)
>> if [ $? == 0 ]; then
>> STS=0
>> fi
>>
>> exit $STS
>>

--
Scott Ribe
https://www.linkedin.com/in/scottribe/
(303) 722-0567

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Rui DeSousa 2018-02-28 18:15:48 Re: Reliable WAL file shipping over unreliable network
Previous Message Rui DeSousa 2018-02-28 18:11:54 Re: Reliable WAL file shipping over unreliable network