Robert Haas wrote:
We can make the reply to a commit message when any of the following
events have occurred
1. We sent the message to standby
2. We received the message on standby
3. We wrote the WAL to the WAL file
4. We fsync'd the WAL file
5. We CRC checked the WAL commit record
6. We applied the WAL commit record
Perhaps it'd be useful if the failure modes these are trying to
protect against were described too.
If I understand right.
1. Protects all the transactions from the failure of the
master; so long as neither the network nor the slave
machine die soon?
2. Protects all the transactions from the failure of the
master and the network between the slave and master,
so long as the slave doesn't die soon?
3. Same as #2?
4. Protects against the failure of the master, the network,
and parts of the slave; so long as the slave's disk
survives the failure?
5. Protects against all of the above, and bit-errors in the
memories of the slave machine (except the slave's disk
controller?)? Or are we reading-back the CRC from the
slave's disk and comparing to the CRC computed on the
master where it might protect from even more?
6. Same as 4?
If this is right, #2, #3, #4, and #6 feel similar except
that they're protecting against failures of different (but
still all incomplete) subsets of the hardware on the slave, right?
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers