Re: Have vacuum emit a warning when it runs out of maintenance_work_mem

Поиск
Список
Период
Сортировка
От Jim C. Nasby
Тема Re: Have vacuum emit a warning when it runs out of maintenance_work_mem
Дата
Msg-id 20070513221401.GA69517@nasby.net
обсуждение исходный текст
Ответ на Re: Have vacuum emit a warning when it runs out of maintenance_work_mem  (Heikki Linnakangas <heikki@enterprisedb.com>)
Список pgsql-patches
On Sun, May 13, 2007 at 11:19:07AM +0100, Heikki Linnakangas wrote:
> Jim C. Nasby wrote:
> >On Sat, May 12, 2007 at 07:57:44PM +0100, Heikki Linnakangas wrote:
> >>Or we could switch to a more compact representation of the dead tuples,
> >>and not need such a big maintenance_work_mem in the first place.
> >
> >Sure, but even with a more compact representation you can still run out
> >of maintenance_work_mem... unless we allow this to spill to disk. At
> >first guess that sounds insane, but if you've got a large enough set of
> >indexes it *might* actually be faster.
>
> It would only make sense if the table is clustered on an index, so that
> you'd in practice only need to keep part of the array in memory at a
> time. It's pretty narrow use case, not worth spending time on I think.

There might be ways to get around that. For example, instead of testing
every index entry one at a time, you could read in several pages of
index entries, sort the entries based on ctid, and then use that to do
the lookups. Might be worth looking at one of these days...
--
Jim Nasby                                      decibel@decibel.org
EnterpriseDB      http://enterprisedb.com      512.569.9461 (cell)

В списке pgsql-patches по дате отправления:

Предыдущее
От: David Fetter
Дата:
Сообщение: OS/X startup scripts
Следующее
От: "Jim C. Nasby"
Дата:
Сообщение: Re: Concurrent psql patch