Re: [HACKERS] WAL logging freezing - Mailing list pgsql-patches

From Simon Riggs
Subject Re: [HACKERS] WAL logging freezing
Date
Msg-id 1162256320.11568.467.camel@silverbirch.site
Whole thread Raw
In response to Re: [HACKERS] WAL logging freezing  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: [HACKERS] WAL logging freezing
List pgsql-patches
On Mon, 2006-10-30 at 19:18 -0500, Tom Lane wrote:
> "Simon Riggs" <simon@2ndquadrant.com> writes:
> > I don't agree: If the truncation points are at 1 million, 2 million etc,
> > then if we advance the relvacuumxid from 1.2 million to 1.5 million,
> > then crash, the hints bits for that last vacuum are lost. Sounds bad,
> > but we have not truncated clog, so there is no danger.
>
> You're still wrong though.

Frequently, I'd say :-)

>  Suppose that VACUUM moves a particular rel's
> relvacuumxid from 1.9 to 2.1 million, but because this rel is not
> currently the oldest vacuumxid, it doesn't truncate clog.  Then we crash
> and lose hint bits, but not the relvacuumxid change.  Then VACUUM
> vacuums some other rel and advances its relvacuumxid from 1.9 to 2.1
> million --- but this time that *was* the globally oldest value, and now
> we think we can truncate clog at 2 million.  But the first rel might
> still have some unhinted xids around 1.9 million.

That was understood; in the above example I agree you need to flush. If
you don't pass a truncation point, you don't need to flush whether or
not you actually truncate. So we don't need to flush *every* time, so
IMHO we don't need to play safe and keep clog the size of an iceberg.

Anyway, if PITR is safe again, I'd like to sleep....zzzzzzzzzzzzzz

--
  Simon Riggs
  EnterpriseDB   http://www.enterprisedb.com



pgsql-patches by date:

Previous
From: Tom Lane
Date:
Subject: Re: --single-transaction doc clarification
Next
From: "Simon Riggs"
Date:
Subject: Re: --single-transaction doc clarification