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
machinedie soon?
2. Protects all the transactions from the failure of the master and the network between the slave and master, so
longas 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
survivesthe 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
whereit 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?