From ebb6bae539e124c34674ecf0d0f387e0a873c314 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 12 Apr 2007 15:04:35 +0000 Subject: [PATCH] Cancel pending fsync requests during WAL replay of DROP DATABASE, per bug report from David Darville. Back-patch as far as 8.1, which may or may not have the problem but it seems a safe change anyway. --- src/backend/commands/dbcommands.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/backend/commands/dbcommands.c b/src/backend/commands/dbcommands.c index de4b239893a..ca04444f2f0 100644 --- a/src/backend/commands/dbcommands.c +++ b/src/backend/commands/dbcommands.c @@ -13,7 +13,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/commands/dbcommands.c,v 1.193 2007/03/13 00:33:39 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/commands/dbcommands.c,v 1.194 2007/04/12 15:04:35 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -1439,6 +1439,9 @@ dbase_redo(XLogRecPtr lsn, XLogRecord *record) /* Also, clean out any entries in the shared free space map */ FreeSpaceMapForgetDatabase(xlrec->db_id); + /* Also, clean out any fsync requests that might be pending in md.c */ + ForgetDatabaseFsyncRequests(xlrec->db_id); + /* Clean out the xlog relcache too */ XLogDropDatabase(xlrec->db_id); -- 2.30.2