On 01/08/2014 11:49 PM, Tom Lane wrote:
> "Joshua D. Drake" <jd@commandprompt.com> writes:
>> On 01/08/2014 01:55 PM, Tom Lane wrote:
>>> Sync mode is about providing a guarantee that the data exists on more than
>>> one server *before* we tell the client it's committed. If you don't need
>>> that guarantee, you shouldn't be using sync mode. If you do need it,
>>> it's not clear to me why you'd suddenly not need it the moment the going
>>> actually gets tough.
>> As I understand it what is being suggested is that if a subscriber or
>> target goes down, then the master will just sit there and wait. When I
>> read that, I read that the master will no longer process write
>> transactions. If I am wrong in that understanding then cool. If I am not
>> then that is a serious problem with a production scenario. There is an
>> expectation that a master will continue to function if the target is
>> down, synchronous or not.
> Then you don't understand the point of sync mode, and you shouldn't be
> using it. The point is *exactly* to refuse to commit transactions unless
> we can guarantee the data's been replicated.
For single host scenario this would be similar to asking for
a mode which turns fsync=off in case of disk failure :)
Cheers
--
Hannu Krosing
PostgreSQL Consultant
Performance, Scalability and High Availability
2ndQuadrant Nordic OÜ