mirror of
https://github.com/postgres/postgres.git
synced 2025-07-05 07:21:24 +03:00
Revert "Fix replay of create database records on standby"
This reverts commit 49d9cfc68b
. The approach taken by this patch has
problems, so we'll come up with a radically different fix.
Discussion: https://postgr.es/m/CA+TgmoYcUPL+WOJL2ZzhH=zmrhj0iOQ=iCFM0SuYqBbqZEamEg@mail.gmail.com
This commit is contained in:
@ -57,7 +57,6 @@
|
||||
#include "access/tableam.h"
|
||||
#include "access/xact.h"
|
||||
#include "access/xloginsert.h"
|
||||
#include "access/xlogrecovery.h"
|
||||
#include "access/xlogutils.h"
|
||||
#include "catalog/catalog.h"
|
||||
#include "catalog/dependency.h"
|
||||
@ -1575,22 +1574,6 @@ tblspc_redo(XLogReaderState *record)
|
||||
{
|
||||
xl_tblspc_drop_rec *xlrec = (xl_tblspc_drop_rec *) XLogRecGetData(record);
|
||||
|
||||
if (!reachedConsistency)
|
||||
XLogForgetMissingDir(xlrec->ts_id, InvalidOid);
|
||||
|
||||
/*
|
||||
* Before we remove the tablespace directory, update minimum recovery
|
||||
* point to cover this WAL record. Once the tablespace is removed,
|
||||
* there's no going back. This manually enforces the WAL-first rule.
|
||||
* Doing this before the removal means that if the removal fails for
|
||||
* some reason, the directory is left alone and needs to be manually
|
||||
* removed. Alternatively we could update the minimum recovery point
|
||||
* after removal, but that would leave a small window where the
|
||||
* WAL-first rule could be violated.
|
||||
*/
|
||||
if (!reachedConsistency)
|
||||
XLogFlush(record->EndRecPtr);
|
||||
|
||||
/*
|
||||
* If we issued a WAL record for a drop tablespace it implies that
|
||||
* there were no files in it at all when the DROP was done. That means
|
||||
|
Reference in New Issue
Block a user