Re: pgsql: Avoid archiving XLOG_RUNNING_XACTS on idle server
От | Andres Freund |
---|---|
Тема | Re: pgsql: Avoid archiving XLOG_RUNNING_XACTS on idle server |
Дата | |
Msg-id | 20160404064202.GE2431@awork2.anarazel.de обсуждение исходный текст |
Ответ на | Re: pgsql: Avoid archiving XLOG_RUNNING_XACTS on idle server (Simon Riggs <simon@2ndQuadrant.com>) |
Ответы |
Re: pgsql: Avoid archiving XLOG_RUNNING_XACTS on idle
server
|
Список | pgsql-committers |
On 2016-04-04 07:31:46 +0100, Simon Riggs wrote: > On 4 April 2016 at 07:24, Andres Freund <andres@anarazel.de> wrote: > > > On 2016-04-04 06:19:04 +0000, Simon Riggs wrote: > > > Avoid archiving XLOG_RUNNING_XACTS on idle server > > > > > > If archive_timeout > 0 we should avoid logging XLOG_RUNNING_XACTS if > > idle. > > > > > > Bug 13685 reported by Laurence Rowe, investigated in detail by Michael > > Paquier, > > > though this is not his proposed fix. > > > 20151016203031.3019.72930@wrigleys.postgresql.org > > > > > > Simple non-invasive patch to allow later backpatch to 9.4 and 9.5 > > > > Uh. This is wrong. > > > For one it breaks cleanup with logical decoding which > > does *NEED* to know that nothing is happening. Although only once, not > > repeatedly. > > > > If the patch did that, I agree it would be wrong. It doesn't, > deliberately. It doesn't? + if (running->xcnt == 0 && + nlocks == 0 && + XLogArchiveTimeout > 0 && + !last_snapshot_overflowed) + { + LWLockRelease(XidGenLock); + return InvalidXLogRecPtr; + } Overflowed snapshots aren't a problem for logical decoding. But we need to know that no old transactions are running occasionally. Andres
В списке pgsql-committers по дате отправления: