Re: Synchronous replication patch built on SR
От | Boszormenyi Zoltan |
---|---|
Тема | Re: Synchronous replication patch built on SR |
Дата | |
Msg-id | 4BEE31C5.6020600@cybertec.at обсуждение исходный текст |
Ответ на | Re: Synchronous replication patch built on SR (Robert Haas <robertmhaas@gmail.com>) |
Ответы |
Re: Synchronous replication patch built on SR
(Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>)
|
Список | pgsql-hackers |
Robert Haas írta: > On Fri, May 14, 2010 at 9:33 AM, Boszormenyi Zoltan <zb@cybertec.at> wrote: > >> If min_sync_replication_clients == 0, then the replication is async. >> If min_sync_replication_clients == max_wal_senders then the >> replication is fully synchronous. >> If 0 < min_sync_replication_clients < max_wal_senders then >> the replication is partially synchronous, i.e. the master can wait >> only for say, 50% of the clients to report back before it's considered >> synchronous and the relevant transactions get released from the wait. >> > > That's an interesting design and in some ways pretty elegant, but it > rules out some things that people might easily want to do - for > example, synchronous replication to the other server in the same data > center that acts as a backup for the master; and asynchronous > replication to a reporting server located off-site. > No, it doesn't. :-) You didn't take into account the third knob usable in recovery.conf: synchronous_slave = on/off The off-site reporting server can be an asynchronous standby, while the on-site backup server can be synchronous. The only thing you need to take into account is that min_sync_replication_clients shouldn't ever exceed your actual number of synchronous standbys. The setup these three knobs provide is pretty flexible I think. > One of the things that I think we will probably need/want to change > eventually is the fact that the master has no real knowledge of who > the replication slaves are. The changes I made in my patch partly changes that, the server still doesn't know "who" the standbys are but there's a call that returns the number of connected _synchronous_ standbys. > That might be something we want to change > in order to be able to support more configurability. Inventing syntax > out of whole cloth and leaving semantics to the imagination of the > reader: > > CREATE REPLICATION SLAVE reporting_server (mode asynchronous, xid_feedback on); > CREATE REPLICATION SLAVE failover_server (mode synchronous, > xid_feedback off, break_synchrep_timeout 30); > > -- Bible has answers for everything. Proof: "But let your communication be, Yea, yea; Nay, nay: for whatsoever is more than these cometh of evil." (Matthew 5:37) - basics of digital technology. "May your kingdom come" - superficial description of plate tectonics ---------------------------------- Zoltán Böszörményi Cybertec Schönig & Schönig GmbH http://www.postgresql.at/
В списке pgsql-hackers по дате отправления: