Re: Resetting PGPROC atomics in ProcessInit()
От | Amit Kapila |
---|---|
Тема | Re: Resetting PGPROC atomics in ProcessInit() |
Дата | |
Msg-id | CAA4eK1JROSgyy2B2bTdzQTCjQqgD-WxEh8rnJ1fAeEfx1cZ0cg@mail.gmail.com обсуждение исходный текст |
Ответ на | Resetting PGPROC atomics in ProcessInit() (Andres Freund <andres@anarazel.de>) |
Ответы |
Re: Resetting PGPROC atomics in ProcessInit()
|
Список | pgsql-hackers |
On Sat, Oct 27, 2018 at 4:11 PM Andres Freund <andres@anarazel.de> wrote: > > Hi, > > I just noticed, while working on a patch adding things to PGPROC, that > the group clearning patches for the proc array and clog reset atomics in > InitProcess(). > > I'm not a big fan of that, because it means that it's not safe to look > at the atomics of backends that aren't currently in use. Is there any > reason to not instead initialize them in InitProcGlobal() and just > assert in InitProcess() that they're 0? > It seems the code written has followed a natural practice i.e PGPROC members are initialized in InitProcess and ProcGlobal members (like procArrayGroupFirst) are initialized in InitProcGlobal. For your use case, can't you look at procArrayGroupFirst? If not, then I think we can do what you are saying as I don't see a problem in initializing them in InitProcGlobal. -- With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: