Re: [HACKERS] Atomics for heap_parallelscan_nextpage()

Поиск
Список
Период
Сортировка
От Heikki Linnakangas
Тема Re: [HACKERS] Atomics for heap_parallelscan_nextpage()
Дата
Msg-id 8fa3bf48-297f-d1b1-b3be-cea1e1e26460@iki.fi
обсуждение исходный текст
Ответ на [HACKERS] Atomics for heap_parallelscan_nextpage()  (David Rowley <david.rowley@2ndquadrant.com>)
Ответы Re: [HACKERS] Atomics for heap_parallelscan_nextpage()  (Heikki Linnakangas <hlinnaka@iki.fi>)
Re: [HACKERS] Atomics for heap_parallelscan_nextpage()  (Andres Freund <andres@anarazel.de>)
Re: [HACKERS] Atomics for heap_parallelscan_nextpage()  (David Rowley <david.rowley@2ndquadrant.com>)
Список pgsql-hackers
On 05/06/2017 04:57 PM, David Rowley wrote:
> Andres mentioned in [2] that it might be worth exploring using atomics
> to do the same job. So I went ahead and did that, and came up with the
> attached, which is a slight variation on what he mentioned in the
> thread.
> 
> To keep things a bit more simple, and streamline, I ended up pulling
> out the logic for setting the startblock into another function, which
> we only call once before the first call to
> heap_parallelscan_nextpage().  I also ended up changing phs_cblock and
> replacing it with a counter that always starts at zero. The actual
> block is calculated based on that + the startblock modulo nblocks.
> This makes things a good bit more simple for detecting when we've
> allocated all the blocks to the workers, and also works nicely when
> wrapping back to the start of a relation when we started somewhere in
> the middle due to piggybacking with a synchronous scan.
Looks reasonable. I edited the comments and the variable names a bit, to 
my liking, and committed. Thanks!

- Heikki



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

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: [HACKERS] [BUGS] [postgresql 10 beta3] unrecognized node type: 90
Следующее
От: Alexander Korotkov
Дата:
Сообщение: Re: [HACKERS] WIP Patch: Pgbench Serialization and deadlock errors