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

Re: Single Index Tuple Chain (SITC) method

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Martijn van Oosterhout <kleptog(at)svana(dot)org>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Hannu Krosing <hannu(at)skype(dot)net>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Greg Stark <gsstark(at)mit(dot)edu>, PFC <lists(at)peufeu(dot)com>
Subject: Re: Single Index Tuple Chain (SITC) method
Date: 2006-06-29 19:46:21
Message-ID: 200606291946.k5TJkL907595@momjian.us (view raw or flat)
Thread:
Lists: pgsql-hackers
Martijn van Oosterhout wrote:
> > You can't truncate a tuple to just the header, or at least it's not
> > going to be very useful to do it, unless you can also move other tuples
> > to coalesce the free space on the page.  Which means you need a
> > VACUUM-strength page lock.  If you're trying to do this in foreground
> > queries, you get into the same performance and deadlock issues I already
> > mentioned.  And I think the net-increase-in-WAL-traffic point would
> > apply too, since VACUUM will still need to clean the page when it
> > removes the header.
> 
> Well, I was only thinking of having the bgwriter do it in the
> background, just bfore writing the block to disk. I'm hoping that it
> only tries to write out pages not recently used, so hopefully there
> would be very little contention there.
> 
> And perhaps you can avoid the xlogging for the same reason as I
> suggested above.

Non-visible members of the SITC chains could also removed by the
background writer.  Adding to the chain does not require a vacuum-level
lock; only reusing the space requires it.

The thing that has always held us back from more aggressive tuple reuse
is the inability of vacuum to do small cleanups --- it has to scan
indexes so it wants to do many pages at once.  If you have SITC, there
are new possibilities for tuple reuse.

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

  + If your life is a hard drive, Christ can be your backup. +

In response to

pgsql-hackers by date

Next:From: Marc MunroDate: 2006-06-29 20:17:20
Subject: Re: Index corruption
Previous:From: Bruce MomjianDate: 2006-06-29 18:54:01
Subject: Re: Single Index Tuple Chain (SITC) method

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