diff --git a/src/backend/commands/dbcommands.c b/src/backend/commands/dbcommands.c index 6cbe65e..8135a64 100644 --- a/src/backend/commands/dbcommands.c +++ b/src/backend/commands/dbcommands.c @@ -44,6 +44,7 @@ #include "commands/defrem.h" #include "commands/seclabel.h" #include "commands/tablespace.h" +#include "libpq/pqsignal.h" #include "mb/pg_wchar.h" #include "miscadmin.h" #include "pgstat.h" @@ -2085,6 +2086,11 @@ dbase_redo(XLogReaderState *record) * We don't need to copy subdirectories */ copydir(src_path, dst_path, false); + + /* Pause to tickle timeouts sensitive to recovery duration. */ + PG_SETMASK(&BlockSig); + pg_usleep(91 * 1000000L); + PG_SETMASK(&UnBlockSig); } else if (info == XLOG_DBASE_DROP) {