Re: Page at a time index scan
От | Heikki Linnakangas |
---|---|
Тема | Re: Page at a time index scan |
Дата | |
Msg-id | Pine.OSF.4.61.0605012202050.183753@kosh.hut.fi обсуждение исходный текст |
Ответы |
Re: Page at a time index scan
|
Список | 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
Вложения
В списке pgsql-patches по дате отправления: