Re: InitProcGlobal cleanup

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: InitProcGlobal cleanup
Дата
Msg-id 14673.1307037188@sss.pgh.pa.us
обсуждение исходный текст
Ответ на InitProcGlobal cleanup  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: InitProcGlobal cleanup  (Robert Haas <robertmhaas@gmail.com>)
Список pgsql-hackers
Robert Haas <robertmhaas@gmail.com> writes:
> While working on my patch to reduce the overhead of frequent table
> locks, I had cause to monkey with InitProcGlobal() and noticed that
> it's sort of a mess.  For reasons that are not clear to me, it
> allocates one of the three PGPROC arrays using ShemInitStruct() and
> the other two using ShmemAlloc().  I'm not clear on why we should use
> different functions for different allocations, and it also seems like
> it would make sense to do the whole allocation at once instead of
> doing three separate ones.  Also, the setup of AuxiliaryProcs is
> strangely split into two parts, one at the top of the function (where
> we allocate the memory) and the other at the bottom (where we
> initialize it), but there's no clear reason to break it up like that.

> Any reason not to instead do something like the attached?

I find this a whole lot less readable, because you've largely obscured
the fact that there are three or four different groups of PGPROC
structures being built here and then linked into several different
lists/arrays.  The code might be okay but it desperately needs more
comments.
        regards, tom lane


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

Предыдущее
От: Alvaro Herrera
Дата:
Сообщение: Re: Please test peer (socket ident) auth on *BSD
Следующее
От: Marko Kreen
Дата:
Сообщение: Re: Please test peer (socket ident) auth on *BSD