summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/backend/access/heap/heapam.c4
-rw-r--r--src/backend/replication/logical/reorderbuffer.c6
2 files changed, 9 insertions, 1 deletions
diff --git a/src/backend/access/heap/heapam.c b/src/backend/access/heap/heapam.c
index f2f7396c006..fe3e83b4894 100644
--- a/src/backend/access/heap/heapam.c
+++ b/src/backend/access/heap/heapam.c
@@ -8002,6 +8002,10 @@ ExtractReplicaIdentity(Relation relation, HeapTuple tp, bool key_changed, bool *
}
idx_rel = RelationIdGetRelation(replidindex);
+
+ if (!RelationIsValid(idx_rel))
+ elog(ERROR, "could not open relation with OID %u", replidindex);
+
idx_desc = RelationGetDescr(idx_rel);
/* deform tuple, so we have fast access to columns */
diff --git a/src/backend/replication/logical/reorderbuffer.c b/src/backend/replication/logical/reorderbuffer.c
index d147735ce74..c8464847d5f 100644
--- a/src/backend/replication/logical/reorderbuffer.c
+++ b/src/backend/replication/logical/reorderbuffer.c
@@ -1614,7 +1614,7 @@ ReorderBufferCommit(ReorderBuffer *rb, TransactionId xid,
relation = RelationIdGetRelation(reloid);
- if (relation == NULL)
+ if (!RelationIsValid(relation))
elog(ERROR, "could not open relation with OID %u (for filenode \"%s\")",
reloid,
relpathperm(change->data.tp.relnode,
@@ -3016,6 +3016,10 @@ ReorderBufferToastReplace(ReorderBuffer *rb, ReorderBufferTXN *txn,
desc = RelationGetDescr(relation);
toast_rel = RelationIdGetRelation(relation->rd_rel->reltoastrelid);
+ if (!RelationIsValid(toast_rel))
+ elog(ERROR, "could not open relation with OID %u",
+ relation->rd_rel->reltoastrelid);
+
toast_desc = RelationGetDescr(toast_rel);
/* should we allocate from stack instead? */