Re: Question about SHM_QUEUE

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Question about SHM_QUEUE
Дата
Msg-id 13869.1176300254@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: Question about SHM_QUEUE  (Alvaro Herrera <alvherre@commandprompt.com>)
Список pgsql-hackers
Alvaro Herrera <alvherre@commandprompt.com> writes:
> ITAGAKI Takahiro wrote:
>> Hmmm, my next question is whether we should use SHM_QUEUE or not in
>> new modules. The point deluded me when I wrote DSM and I wondered
>> the autovacuum-multiworkers patch uses SHM_QUEUE.

> Good question.  I used SHM_QUEUE because I just believed the comments
> that said that ShmemBase would be different on each process, and so
> using plain pointers would not work.  I admit I didn't even try.  So if
> the list can be implemented in a different way, I have no problem with
> changing that code -- but then, if there's no practical problem with it
> I feel uninclined to continue messing with the patch until it's
> committed.

The main disadvantage of converting pointers to SHMEM_OFFSETs is that
it reduces the compiler's ability to help you find mistakes (ie,
treating a pointer to X as a pointer to Y).  So I'd encourage people
to use plain pointers in new code.  But I don't feel a compulsion to
convert existing code.  Also, in a situation where you'd be writing
"void *" (eg, a generic linked-list type...) there's just no gain in
protection anyway.
        regards, tom lane


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

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: Re: Vista/IPv6
Следующее
От: Andrew Dunstan
Дата:
Сообщение: Re: Vista/IPv6