Re: 2-phase commit
От | Tom Lane |
---|---|
Тема | Re: 2-phase commit |
Дата | |
Msg-id | 25072.1064599536@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: 2-phase commit (Bruce Momjian <pgman@candle.pha.pa.us>) |
Ответы |
Re: 2-phase commit
Re: 2-phase commit Re: 2-phase commit Re: 2-phase commit Re: 2-phase commit |
Список | pgsql-hackers |
Bruce Momjian <pgman@candle.pha.pa.us> writes: > Tom Lane wrote: >> You're not considering the possibility of a transient communication >> failure. > Can't the master re-send the request after a timeout? Not "it can", but "it has to". The master *must* keep hold of that request forever (or until the slave responds, or until we reconfigure the system not to consider that slave valid anymore). Similarly, the slave cannot forget the maybe-committed transaction on pain of not being a valid slave anymore. You can make this work, but the resource costs are steep. For instance, in Postgres, you don't get to truncate the WAL log, for what could be a really really long time --- more disk space than you wanted to spend on WAL anyway. The locks held by the maybe-committed transaction are another potentially unpleasant problem; you can't release them, no matter what else they are blocking. regards, tom lane
В списке pgsql-hackers по дате отправления: