Re: Inconsistency in startup process's MyBackendId and procsignal array registration with ProcSignalInit()
От | Fujii Masao |
---|---|
Тема | Re: Inconsistency in startup process's MyBackendId and procsignal array registration with ProcSignalInit() |
Дата | |
Msg-id | 2222ab6f-46b1-d5c0-603d-8f6680739db4@oss.nttdata.com обсуждение исходный текст |
Ответ на | Re: Inconsistency in startup process's MyBackendId and procsignal array registration with ProcSignalInit() (Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>) |
Ответы |
Re: Inconsistency in startup process's MyBackendId and procsignal array registration with ProcSignalInit()
Re: Inconsistency in startup process's MyBackendId and procsignal array registration with ProcSignalInit() |
Список | pgsql-hackers |
On 2021/10/11 19:46, Bharath Rupireddy wrote: > If we do the above, then the problem might arise if somebody calls > SICleanupQueue and wants to signal the startup process, the below code > (from SICleanupQueue) can't get the startup process backend id. So, > the backend id calculation for the startup process can't just be > MaxBackends + MyAuxProcType + 1. > BackendId his_backendId = (needSig - &segP->procState[0]) + 1; Attached POC patch illustrates what I'm in mind. ISTM this change doesn't prevent SICleanupQueue() from getting right backend ID of the startup process. Thought? > It looks like we need to increase the size of the ProcState array by 1 > at least (for the startup process). Currently the ProcState array > doesn't have entries for auxiliary processes, it does have entries for > MaxBackends. The startup process is eating up one slot from > MaxBackends. Since we need only an extra ProcState array slot for the > startup process I think we could just extend its size by 1. Instead of > modifying the MaxBackends definition, we can just add 1 (and a comment > saying this 1 is for startup process) to shmInvalBuffer->maxBackends > in SInvalShmemSize, CreateSharedInvalidationState. IMO, this has to go > in a separate patch and probably in a separate thread. Thoughts? Agreed. Regards, -- Fujii Masao Advanced Computing Technology Center Research and Development Headquarters NTT DATA CORPORATION
Вложения
В списке pgsql-hackers по дате отправления: