diff options
Diffstat (limited to 'src/backend/access')
-rw-r--r-- | src/backend/access/transam/varsup.c | 10 | ||||
-rw-r--r-- | src/backend/access/transam/xact.c | 5 |
2 files changed, 10 insertions, 5 deletions
diff --git a/src/backend/access/transam/varsup.c b/src/backend/access/transam/varsup.c index b1852779ccf..60b5d3bd514 100644 --- a/src/backend/access/transam/varsup.c +++ b/src/backend/access/transam/varsup.c @@ -6,7 +6,7 @@ * Copyright (c) 2000-2010, PostgreSQL Global Development Group * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/access/transam/varsup.c,v 1.89 2010/02/17 03:10:33 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/access/transam/varsup.c,v 1.90 2010/02/20 21:24:01 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -58,6 +58,10 @@ GetNewTransactionId(bool isSubXact) return BootstrapTransactionId; } + /* safety check, we should never get this far in a HS slave */ + if (RecoveryInProgress()) + elog(ERROR, "cannot assign TransactionIds during recovery"); + LWLockAcquire(XidGenLock, LW_EXCLUSIVE); xid = ShmemVariableCache->nextXid; @@ -420,6 +424,10 @@ GetNewObjectId(void) { Oid result; + /* safety check, we should never get this far in a HS slave */ + if (RecoveryInProgress()) + elog(ERROR, "cannot assign OIDs during recovery"); + LWLockAcquire(OidGenLock, LW_EXCLUSIVE); /* diff --git a/src/backend/access/transam/xact.c b/src/backend/access/transam/xact.c index 2c32723be62..044afd582dd 100644 --- a/src/backend/access/transam/xact.c +++ b/src/backend/access/transam/xact.c @@ -10,7 +10,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/access/transam/xact.c,v 1.287 2010/02/17 04:19:39 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/access/transam/xact.c,v 1.288 2010/02/20 21:24:01 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -402,9 +402,6 @@ AssignTransactionId(TransactionState s) bool isSubXact = (s->parent != NULL); ResourceOwner currentOwner; - if (RecoveryInProgress()) - elog(ERROR, "cannot assign TransactionIds during recovery"); - /* Assert that caller didn't screw up */ Assert(!TransactionIdIsValid(s->transactionId)); Assert(s->state == TRANS_INPROGRESS); |