From: Tom Lane Date: Sat, 22 Jul 2006 21:04:46 +0000 (+0000) Subject: Hmm, seems --disable-spinlocks has been broken for awhile and nobody X-Git-Tag: REL8_1_5~50 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=eda117dfa0323ca1aa9dba1c77ab8585ec83d119;p=thirdparty%2Fpostgresql.git Hmm, seems --disable-spinlocks has been broken for awhile and nobody noticed. Fix SpinlockSemas() to report the correct count considering that PG 8.1 adds a spinlock to each shared-buffer header. --- diff --git a/src/backend/storage/lmgr/spin.c b/src/backend/storage/lmgr/spin.c index 0f9d9d47ccb..72210fbeb20 100644 --- a/src/backend/storage/lmgr/spin.c +++ b/src/backend/storage/lmgr/spin.c @@ -16,14 +16,14 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/storage/lmgr/spin.c,v 1.17.2.1 2005/11/22 18:23:19 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/storage/lmgr/spin.c,v 1.17.2.2 2006/07/22 21:04:46 tgl Exp $ * *------------------------------------------------------------------------- */ #include "postgres.h" +#include "miscadmin.h" #include "storage/lwlock.h" -#include "storage/pg_sema.h" #include "storage/spin.h" @@ -55,9 +55,9 @@ SpinlockSemas(void) * similar to the way shmem space estimation is handled. * * For now, though, we just need a few spinlocks (10 should be plenty) - * plus one for each LWLock. + * plus one for each LWLock and one for each buffer header. */ - return NumLWLocks() + 10; + return NumLWLocks() + NBuffers + 10; } /*