Re: Sequential disk access during VACUUM for GiST/GIN

Поиск
Список
Период
Сортировка
От Alexander Korotkov
Тема Re: Sequential disk access during VACUUM for GiST/GIN
Дата
Msg-id CAPpHfdsKWm1AbHqEs3n3s2GVHGQ4+H3ZR7KpDFG=EvqX_hsQTg@mail.gmail.com
обсуждение исходный текст
Ответ на Sequential disk access during VACUUM for GiST/GIN  (Костя Кузнецов <chapaev28@yandex.ru>)
Список pgsql-hackers
Hi!

On Tue, Apr 29, 2014 at 2:34 PM, Костя Кузнецов <chapaev28@yandex.ru> wrote:
There is a task "Sequential disk access during VACUUM for GiST/GIN " in list GSOC14.
Nobody is working on this task?

I didn't hear anybody is working on it.
 
Do I understand this task correctly?
I must recode gistbulkdelete.
GistBDItem *stack is must have items with sequential blkno as possible.

Yes, make gistbulkdelete and ginbulkdelete access disk sequentially while now tree is traversed in logical order. So these functions need to be completely reworked: I'm not sure GistBDItem will survive :)
The challenge is concurrency. Vacuum shouldn't block concurrent readers and writers. You can see btbulkdelete  which supports sequential disk access now.
 
I have a question:
where are access to disk in this function? ReadBufferExtended?

Yes, this function read buffer to shared memory (if it isn't already) and "pins" it.

------
With best regards,
Alexander Korotkov.  

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

Предыдущее
От: Heikki Linnakangas
Дата:
Сообщение: Re: doPickSplit stack buffer overflow in XLogInsert?
Следующее
От: Michael Meskes
Дата:
Сообщение: Re: using array of char pointers gives wrong results