From a007dd1d21a161221e24350bd9343464a34e3c32 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 18 Nov 2004 01:19:40 +0000 Subject: [PATCH] Back-patch fix for ALTER DATABASE failing to flush pg_database changes to disk right away. This is just a one-liner change rather than trying to use FlushRelationBuffers(). --- src/backend/commands/dbcommands.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/backend/commands/dbcommands.c b/src/backend/commands/dbcommands.c index bc34adfcf37..63fc6a1a3ec 100644 --- a/src/backend/commands/dbcommands.c +++ b/src/backend/commands/dbcommands.c @@ -9,7 +9,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.124 2003/09/29 00:05:24 petere Exp $ + * $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.124.2.1 2004/11/18 01:19:40 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -757,6 +757,14 @@ AlterDatabaseSet(AlterDatabaseSetStmt *stmt) systable_endscan(scan); heap_close(rel, RowExclusiveLock); + + /* + * Force dirty buffers out to disk, so that newly-connecting backends + * will see the updated database in pg_database right away. (They'll + * see an uncommitted tuple, but they don't care; see + * GetRawDatabaseInfo.) + */ + BufferSync(); }