From 5d5087363d7cdbd00fc432a1216e83a00f7139bd Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Fri, 4 Mar 2005 20:21:07 +0000 Subject: Replace the BufMgrLock with separate locks on the lookup hashtable and the freelist, plus per-buffer spinlocks that protect access to individual shared buffer headers. This requires abandoning a global freelist (since the freelist is a global contention point), which shoots down ARC and 2Q as well as plain LRU management. Adopt a clock sweep algorithm instead. Preliminary results show substantial improvement in multi-backend situations. --- src/backend/commands/dbcommands.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/backend/commands/dbcommands.c') diff --git a/src/backend/commands/dbcommands.c b/src/backend/commands/dbcommands.c index 474701fa573..d1acaea70dc 100644 --- a/src/backend/commands/dbcommands.c +++ b/src/backend/commands/dbcommands.c @@ -15,7 +15,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/commands/dbcommands.c,v 1.151 2005/02/26 18:43:33 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/commands/dbcommands.c,v 1.152 2005/03/04 20:21:05 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -339,7 +339,7 @@ createdb(const CreatedbStmt *stmt) * up-to-date for the copy. (We really only need to flush buffers for * the source database, but bufmgr.c provides no API for that.) */ - BufferSync(-1, -1); + BufferSync(); /* * Close virtual file descriptors so the kernel has more available for @@ -1201,7 +1201,7 @@ dbase_redo(XLogRecPtr lsn, XLogRecord *record) * up-to-date for the copy. (We really only need to flush buffers for * the source database, but bufmgr.c provides no API for that.) */ - BufferSync(-1, -1); + BufferSync(); #ifndef WIN32 -- cgit v1.2.3