Re: BUG #9161: wal_writer_delay is limited to 10s

From: Andres Freund <andres(at)2ndquadrant(dot)com>
To: Jeff Janes <jeff(dot)janes(at)gmail(dot)com>
Cc: Clemens Eisserer <linuxhippy(at)gmail(dot)com>, Pg Bugs <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: BUG #9161: wal_writer_delay is limited to 10s
Date: 2014-02-17 21:53:29
Message-ID: 20140217215329.GH7161@awork2.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On 2014-02-17 13:48:34 -0800, Jeff Janes wrote:
> On Fri, Feb 14, 2014 at 2:50 PM, Andres Freund <andres(at)2ndquadrant(dot)com>wrote:
>
> > On 2014-02-14 23:03:44 +0100, Clemens Eisserer wrote:
> > > Hi Tom,
> > >
> > > Thanks for taking a look at my bug report.
> > >
> > > > But if you're generating WAL, it's going to get written anyway
> > > > whenever a transaction commits.
> > >
> > > As far as I understood, this is only the case with
> > > synchronous_commit=on, which is the reason why I turned synchrous
> > > commit off.
> >
> > The WAL writer will be woken up anyway if a transaction commits
> > (c.f. XLogSetAsyncXactLSN()).
> >

> That only happens if an 8 KB boundary has been crossed. Depending on how
> big the records are that he is inserting, you can fit a lot of them in 8
> KB. If the records are small, or the table us unlogged so only commit
> messages get logged, then you could go many multiples of 10s without
> triggering a wake up due to crossing an 8 KB boundary.

Unless I miss something we wake it up if *either* a 8kb boundary has
been crossed *or* if the async lsn hasn't been flushed yet.

Greetings,

Andres Freund

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

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Jeff Janes 2014-02-17 22:24:09 Re: BUG #9161: wal_writer_delay is limited to 10s
Previous Message Jeff Janes 2014-02-17 21:48:34 Re: BUG #9161: wal_writer_delay is limited to 10s