mirror of
https://github.com/postgres/postgres.git
synced 2025-08-30 06:01:21 +03:00
Optimise btree delete processing when no active backends.
Clarify comments, downgrade a message to DEBUG and remove some debug counters. Direct from ideas by Heikki Linnakangas.
This commit is contained in:
@@ -37,7 +37,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/backend/storage/ipc/procarray.c,v 1.65 2010/04/21 19:08:14 sriggs Exp $
|
||||
* $PostgreSQL: pgsql/src/backend/storage/ipc/procarray.c,v 1.66 2010/04/22 08:04:25 sriggs Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -1839,7 +1839,8 @@ CountDBBackends(Oid databaseid)
|
||||
|
||||
if (proc->pid == 0)
|
||||
continue; /* do not count prepared xacts */
|
||||
if (proc->databaseId == databaseid)
|
||||
if (!OidIsValid(databaseid) ||
|
||||
proc->databaseId == databaseid)
|
||||
count++;
|
||||
}
|
||||
|
||||
|
@@ -11,7 +11,7 @@
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/backend/storage/ipc/standby.c,v 1.17 2010/04/21 19:08:14 sriggs Exp $
|
||||
* $PostgreSQL: pgsql/src/backend/storage/ipc/standby.c,v 1.18 2010/04/22 08:04:25 sriggs Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -248,7 +248,7 @@ ResolveRecoveryConflictWithSnapshot(TransactionId latestRemovedXid, RelFileNode
|
||||
|
||||
/*
|
||||
* If we get passed InvalidTransactionId then we are a little surprised,
|
||||
* but it is theoretically possible, so spit out a LOG message, but not
|
||||
* but it is theoretically possible, so spit out a DEBUG1 message, but not
|
||||
* one that needs translating.
|
||||
*
|
||||
* We grab latestCompletedXid instead because this is the very latest
|
||||
@@ -256,7 +256,7 @@ ResolveRecoveryConflictWithSnapshot(TransactionId latestRemovedXid, RelFileNode
|
||||
*/
|
||||
if (!TransactionIdIsValid(latestRemovedXid))
|
||||
{
|
||||
elog(LOG, "Invalid latestRemovedXid reported, using latestCompletedXid instead");
|
||||
elog(DEBUG1, "Invalid latestremovexXid reported, using latestcompletedxid instead");
|
||||
|
||||
LWLockAcquire(ProcArrayLock, LW_SHARED);
|
||||
latestRemovedXid = ShmemVariableCache->latestCompletedXid;
|
||||
|
Reference in New Issue
Block a user