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

Re: Bug in autovacuum.c?

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Bug in autovacuum.c?
Date: 2011-04-01 21:48:16
Message-ID: 201104012148.p31LmGP17089@momjian.us (view raw or flat)
Thread:
Lists: pgsql-hackers
Alvaro Herrera wrote:
> Excerpts from Bruce Momjian's message of vie abr 01 16:50:29 -0300 2011:
> 
> > To do the right thing every computation that passes over the xid
> > wraparound bounary should subtract FirstNormalTransactionId, not just
> > those that fall in the boundry.  That would prevent the value from going
> > backward and still allow the mapping you liked;  it isn't worth it, but
> > that is the right answer.
> 
> This code is only concerned calculating an immediate the wrap horizon
> for the autovacuuming run that's about to take place.  If it's wrong in
> one or three counts doesn't mean much.  Consider what would happen if
> load was high and it would have taken 100 extra milliseconds to get to
> that bit: ReadNewTransactionId would have returned a value 3
> transactions later.  Furthermore, before this value is even used at all
> for vacuuming, there has to be a whole lot of inter-process signalling,
> a fork, and a new backend startup.
> 
> I think this should be left alone.  As you said, it isn't worth it.

Agreed it is not worth it but I think we should at least C comment
something.   I think at a minimum we should set it to
FirstNormalTransactionId.

I am not so concerned about this case but about other cases where we are
computing xid distances across the invalid range.

-- 
  Bruce Momjian  <bruce(at)momjian(dot)us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + It's impossible for everything to be true. +

Attachment: /pgpatches/autovacuum.diff
Description: text/x-diff (1.1 KB)

In response to

Responses

pgsql-hackers by date

Next:From: Bruce MomjianDate: 2011-04-01 21:52:49
Subject: Re: Bug in autovacuum.c?
Previous:From: Kevin GrittnerDate: 2011-04-01 21:17:03
Subject: Re: trivial patch: show SIREAD pids in pg_locks

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