Re: Latest plans for Utilities with HOT

From: "Pavan Deolasee" <pavan(at)enterprisedb(dot)com>
To: "Simon Riggs" <simon(at)2ndquadrant(dot)com>
Cc: "Pavan Deolasee" <pavan(dot)deolasee(at)enterprisedb(dot)com>, <pgsql-hackers(at)postgresql(dot)org>, "Heikki Linnakangas" <heikki(at)enterprisedb(dot)com>, "Nikhil S" <nikhil(dot)sontakke(at)enterprisedb(dot)com>
Subject: Re: Latest plans for Utilities with HOT
Date: 2007-03-05 16:55:18
Message-ID: 45EC4B76.5060209@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Simon Riggs wrote:
> On Mon, 2007-03-05 at 21:39 +0530, Pavan Deolasee wrote:
>
> Currently each tuple is moved individually. You'd need to inspect the
> whole HOT chain on a page, calculate space for that and then try to move
> them all in one go. I was originally thinking that would be a problem,
> but its not so bad - but it may cause us to end repair_frag() earlier
> than we otherwise would depending upon the game of Tetris plays out.
>
>
Umm.. I still need to look deeper to understand the VACUUM FULL code,
but ISTM
that we can move tuple chains just the way its done today, without
bothering to keep
HOT-update chains intact. The tuples may actually got into different
pages and have
equal number of index entries. To my mind, this is not such a big
problem because
we shouldn't expect too many HOT-update chains while running VACUUM FULL.
Isn't that true ?

> Thats harder than it sounds. My concern is that VACUUM FULL code is
> fairly ugly and doing this might introduce a bug into a rarely used
> piece of code that we don't pick up. I would not choose that path
> myself, but we can go there if the consensus is that doing a reindex
> would be the wrong way to go. Reindex will be fast to code and much more
> likely to be bug-free.
>
>
Oh I agree. VACUUM FULL code is hard to assimilate. I am hoping that we can
make HOT work fine with VACUUM FULL without too many changes. If thats
not the case, I won't push for it.
> You mean all moves will be cold?
>
> So VACUUM FULL will actually bloat the indexes? I hope I've
> misunderstood you.
>
>
Yes, thats what I meant. But are we really worried about bloating
indexes while
VACUUM FULL ? Any other tuple movements would anyway cause index
inserts. And I don't really expect too many tuple chains since VACUUM FULL
runs with AccessExclusive lock on the table.

Thanks,
Pavan

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Luke Lonergan 2007-03-05 17:22:29 Re: Bug: Buffer cache is not scan resistant
Previous Message Simon Riggs 2007-03-05 16:54:17 Re: HOT - whats next ?