--- postgresql-8.1.11.orig/src/backend/access/transam/xlog.c	2007-09-29 03:36:29.000000000 +0200
+++ postgresql-8.1.11/src/backend/access/transam/xlog.c	2008-02-11 09:15:46.000000000 +0100
@@ -4762,12 +4762,17 @@
 
 		/*
 		 * Allow resource managers to do any required cleanup.
+		 * Issue a warning that this may take a _very_ long time.
 		 */
+		ereport(LOG,
+				(errmsg("Recovery in progress, resource managers are doing internal cleanup. This may last hours or even longer.")));
 		for (rmid = 0; rmid <= RM_MAX_ID; rmid++)
 		{
 			if (RmgrTable[rmid].rm_cleanup != NULL)
 				RmgrTable[rmid].rm_cleanup();
 		}
+		ereport(LOG,
+				(errmsg("Resource managers have finished internal cleanup.")));
 
 		/*
 		 * Reset pgstat data, because it may be invalid after recovery.
