Hello PostgreSQL Community!
Not so long ago I faced the problem
of database synchronization using pg_basebackup utility on linux SLES 12
machine using PostgreSQL 10.4:
pg_basebackup -h host01 -U dbuser -D
/var/PostgresDb -w
LOG: standby "pg_basebackup"
is now a synchronous standby with priority 1
pg_basebackup: could not receive data from WAL stream: server closed the
connection unexpectedly
This probably means the server terminated abnormally
before or while
processing the request.
pg_basebackup: child process exited with error 1
pg_basebackup: removing contents of data directory "/var/RtpPostgresDb"
PostgreSQL log of master server contain
the following error entry:
terminating walsender
process due to replication timeout
Currently my configuration is the following:
wal_sender_timeout
= 1s
wal_receiver_timeout =
1s
wal_receiver_status_interval
= 10s
I see that some people faced this situation:
https://www.postgresql.org/message-id/109968546.289.1460409481048.JavaMail.pbrunnen%40Station8.local
The suggestion was increasing wal_sender_timeout parameter.
On the one hand I understand that if
my database gets bigger it will require bigger value of wal_sender_timeout.
On the other hand I use wal_sender_timeout = 1s on purpose in order
to detect if network bad.
Could you please suggest an appropriate
configuration, sensible relations between configuration parameters or any
other approach of database synchronization which overcomes this issue?
Thank you in advance,
Andrei Yahorau