Re: [COMMITTERS] pgsql: Ensure that top level aborts call XLogSetAsyncCommit().

Поиск
Список
Период
Сортировка
От Fujii Masao
Тема Re: [COMMITTERS] pgsql: Ensure that top level aborts call XLogSetAsyncCommit().
Дата
Msg-id AANLkTinm_kG0o-pU3uttQbRLokW0hpOiNG0arLP_5H2k@mail.gmail.com
обсуждение исходный текст
Ответы Re: [COMMITTERS] pgsql: Ensure that top level aborts call XLogSetAsyncCommit().  (Simon Riggs <simon@2ndQuadrant.com>)
Список pgsql-hackers
On Thu, May 13, 2010 at 8:39 PM, Simon Riggs <sriggs@postgresql.org> wrote:
> Log Message:
> -----------
> Ensure that top level aborts call XLogSetAsyncCommit(). Not doing
> so simply leads to data waiting in wal_buffers which then causes
> later commits to potentially do emergency writes and for all forms
> of replication to be potentially delayed without need or benefit.
> Issue pointed out exactly by Fujii Masao, following bug report
> by Robert Haas on a separate though related topic.
>
> Modified Files:
> --------------
>    pgsql/src/backend/access/transam:
>        xact.c (r1.290 -> r1.291)
>        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/transam/xact.c?r1=1.290&r2=1.291)

This commit changed XLogSetAsyncCommitLSN() so that it's called
for abort case. So we need to change the comment of the function
as follows:

diff --git a/src/backend/access/transam/xlog.c
b/src/backend/access/transam/xlog.c
index c886571..ae10108 100644
--- a/src/backend/access/transam/xlog.c
+++ b/src/backend/access/transam/xlog.c
@@ -1860,7 +1860,7 @@ XLogWrite(XLogwrtRqst WriteRqst, bool flexible,
bool xlog_switch)
/* * Record the LSN for an asynchronous transaction commit.
- * (This should not be called for aborts, nor for synchronous commits.)
+ * (This should not be called for synchronous commits.) */voidXLogSetAsyncCommitLSN(XLogRecPtr asyncCommitLSN)


Regards,

--
Fujii Masao
NIPPON TELEGRAPH AND TELEPHONE CORPORATION
NTT Open Source Software Center


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

Предыдущее
От: Heikki Linnakangas
Дата:
Сообщение: Re: [COMMITTERS] pgsql: In walsender, don't sleep if there's outstanding WAL waiting to
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: [COMMITTERS] pgsql: Ensure that top level aborts call XLogSetAsyncCommit().