Fix a thinko introduced into CountActiveBackends by a recent patch:

we should ignore NULL array entries, not non-NULL ones.  This had the
effect of disabling commit_delay, and could have caused a crash in the
rare race condition the patch was intended to fix.

Bug report and diagnosis by Jeff Janes, in bug #4952.
This commit is contained in:
Tom Lane 2009-07-29 15:57:23 +00:00
parent fe37cbb841
commit e9d2f68632

View File

@ -23,7 +23,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/storage/ipc/procarray.c,v 1.40.2.1 2009/03/31 05:18:39 heikki Exp $ * $PostgreSQL: pgsql/src/backend/storage/ipc/procarray.c,v 1.40.2.2 2009/07/29 15:57:23 tgl Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
@ -1101,7 +1101,7 @@ CountActiveBackends(void)
* the free list and are recycled. Its contents are nonsense in that * the free list and are recycled. Its contents are nonsense in that
* case, but that's acceptable for this function. * case, but that's acceptable for this function.
*/ */
if (proc != NULL) if (proc == NULL)
continue; continue;
if (proc == MyProc) if (proc == MyProc)