Re: XLogFlush invoked about twice as many times after 9.2 group commit enhancement

From: Amit Langote <amitlangote09(at)gmail(dot)com>
To: Peter Geoghegan <pg(at)heroku(dot)com>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Peter Geoghegan <peter(dot)geoghegan86(at)gmail(dot)com>
Subject: Re: XLogFlush invoked about twice as many times after 9.2 group commit enhancement
Date: 2013-05-08 02:52:04
Message-ID: CA+HiwqGSXYyXRx7mrkAOY5zx4L2tN=+wEwfHXoz7ffdc495aVA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> Why is that surprising? Most of those XLogFlush() calls will recheck
> the flushed-up-to point, and realize that another backend assumed the
> role of group commit leader, and flushed their WAL for them, so aside
> from the wait, the call to XLogFlush is cheap for that individual
> backend. It's being invoked twice as many times because backends *can*
> invoke it twice as many times.

After going through it again, I think, I am getting convinced it is
not surprising. Since, backends are now able to return quickly from
XLogFlush(), on an average, they should also be able to proceed to
next transactions faster and hence cause XLogFlush() to be invoked
more often. So, any rise in number of XLogFlush() calls should roughly
be accounted for by increased throughput. Am I right in interpreting
it this way?

--

Amit Langote

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Alvaro Herrera 2013-05-08 03:18:33 Re: Make targets of doc links used by phpPgAdmin static
Previous Message Tom Lane 2013-05-08 02:01:10 Re: local_preload_libraries logspam