Reporting the commit LSN at commit time

Поиск
Список
Период
Сортировка
От Craig Ringer
Тема Reporting the commit LSN at commit time
Дата
Msg-id 53E2D346.9030806@2ndquadrant.com
обсуждение исходный текст
Ответы Re: Reporting the commit LSN at commit time  (Ants Aasma <ants@cybertec.at>)
Re: Reporting the commit LSN at commit time  (Robert Haas <robertmhaas@gmail.com>)
Re: Reporting the commit LSN at commit time  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Hi all

To support transparent client-side failover in BDR, it's necessary to
know what the LSN of a node was at the time a transaction committed and
keep track of that in the client/proxy.

I'm thinking about adding a new message type in the protocol that gets
sent immediately before CommandComplete, containing the LSN of the
commit. Clients would need to enable the sending of this message with a
GUC that they set when they connect, so it doesn't confuse clients that
aren't expecting it or aware of it.

Is this something you can see being useful for other non-BDR purposes?
Are there any obvious issues with this?


Clients can always follow up with a second query to get the xlog
position, after commit, but that's potentially slow and has a race that
might cause a client to wait longer than it has to after fail-over to a
different node. That's why having the server report it automatically
seems useful.

-- Craig Ringer                   http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training & Services



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Peter Geoghegan
Дата:
Сообщение: Re: B-Tree support function number 3 (strxfrm() optimization)
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: Partitioning performance: cache stringToNode() of pg_constraint.ccbin