Improve and cleanup ProcArrayAdd(), ProcArrayRemove().

Andres Freund <andres@anarazel.de>

Commit: d8e950d3ae7b33a2064a4fb39b7829334b0b47bc
Author: Andres Freund <andres@anarazel.de>
Date: 2021-06-12T04:33:07Z
Releases: 14.0
Improve and cleanup ProcArrayAdd(), ProcArrayRemove().

941697c3c1a changed ProcArrayAdd()/Remove() substantially. As reported by
zhanyi, I missed that due to the introduction of the PGPROC->pgxactoff
ProcArrayRemove() does not need to search for the position in
procArray->pgprocnos anymore - that's pgxactoff. Remove the search loop.

The removal of the search loop reduces assertion coverage a bit - but we can
easily do better than before by adding assertions to other loops over
pgprocnos elements.

Also do a bit of cleanup, mostly by reducing line lengths by introducing local
helper variables and adding newlines.

Author: zhanyi <w@hidva.com>
Author: Andres Freund <andres@anarazel.de>
Discussion: https://postgr.es/m/tencent_5624AA3B116B3D1C31CA9744@qq.com

Files

PathChange+/−
src/backend/storage/ipc/procarray.c modified +78 −55

Discussion