From: | Heikki Linnakangas <hlinnaka(at)iki(dot)fi> |
---|---|
To: | pgsql-patches(at)postgresql(dot)org |
Subject: | Re: Page at a time index scan |
Date: | 2006-05-01 19:02:54 |
Message-ID: | Pine.OSF.4.61.0605012202050.183753@kosh.hut.fi |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-patches |
As usual, I forgot the attachment. Here you go.
On Mon, 1 May 2006, Heikki Linnakangas wrote:
> Here's a patch that implements page at a time index scans discussed at
> pgsql-hackers earlier. See proposal 1 at:
> http://archives.postgresql.org/pgsql-hackers/2006-03/msg01237.php
>
> It passes regression tests, and there's no known bugs. There's some minor
> issues I'd like to point out, though:
>
> 1. An index scan now needs to allocate enough memory to hold potentially a
> whole page worth of items. And if you use markpos/restrpos, twice that much.
> I don't know if that's an issue, but I thought I'd bring that up.
>
> 2. Vacuum is now done in one phase, scanning the index in physical order.
> That significantly speeds up index vacuums of large indexes that don't fit
> into memory. However, btbulkdelete doesn't know if the vacuum is a full or
> lazy one. The patch just assumes it's a lazy vacuum, but the API really needs
> to be changed to pass that information earlier than at vacuum_cleanup.
>
> 3. Before the patch, a scan would keep the current page pinned to keep vacuum
> from deleting the current item. The patch doesn't change that behaviour, but
> it now seems to me that even a pin is no longer needed.
>
> The patch needs testing and review, to ensure it doesn't brake anything, and
> to see the effect on performance. It doesn't change disk layout or catalogs,
> so you can run it using the same data directory as with the unpatched
> version.
>
> - Heikki
>
- Heikki
Attachment | Content-Type | Size |
---|---|---|
indvac-20060501.diff | text/plain | 62.6 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2006-05-01 20:47:19 | Re: Improvement of search for a binary operator |
Previous Message | Heikki Linnakangas | 2006-05-01 19:00:11 | Page at a time index scan |