Skip site navigation (1) Skip section navigation (2)

Re: Extra XLOG in Checkpoint for StandbySnapshot

From: Andres Freund <andres(at)anarazel(dot)de>
To: Amit Kapila <amit(dot)kapila(at)huawei(dot)com>
Cc: 'Simon Riggs' <simon(at)2ndQuadrant(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Extra XLOG in Checkpoint for StandbySnapshot
Date: 2013-01-07 13:44:47
Message-ID: 20130107134446.GC5301@awork2.anarazel.de (view raw or flat)
Thread:
Lists: pgsql-hackers
On 2013-01-07 19:03:35 +0530, Amit Kapila wrote:
> On Monday, January 07, 2013 6:30 PM Simon Riggs wrote:
> > On 7 January 2013 12:39, Amit Kapila <amit(dot)kapila(at)huawei(dot)com> wrote:
> >
> > > So We can modify to change this in function LogStandbySnapshot as
> > below:
> > >                 running = GetRunningTransactionData();
> > >                 if (running->xcnt > 0)
> > >                         LogCurrentRunningXacts(running);
> > >
> > > So this check will make sure that if there is no operation happening
> > i.e. no
> > > new running transaction, then no need to log running transaction
> > snapshot
> > > and hence further checkpoint operations will be skipped.
> > >
> > > Let me know if I am missing something?
> >
> > It's not the same test. The fact that nothing is running at that
> > moment is not the same thing as saying nothing at all has run since
> > last checkpoint.
>
> But isn't the functionality of LogStandbySnapshot() is to log "all running
> xids" and "all current
> AccessExclusiveLocks". For RunningTransactionLocks, WAL is avoided in
> similar way.

The information that no transactions are currently running allows you to
build a recovery snapshot, without that information the standby won't
start answering queries. Now that doesn't matter if all standbys already
have built a snapshot, but the primary cannot know that.
Having to issue a checkpoint while ensuring transactions are running
just to get a standby up doesn't seem like a good idea to me :)

Greetings,

Andres Freund


In response to

Responses

pgsql-hackers by date

Next:From: Simon RiggsDate: 2013-01-07 13:48:06
Subject: Re: Improve compression speeds in pg_lzcompress.c
Previous:From: Simon RiggsDate: 2013-01-07 13:44:41
Subject: Re: Extra XLOG in Checkpoint for StandbySnapshot

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group