mirror of
https://github.com/postgres/postgres.git
synced 2025-06-20 15:22:23 +03:00
Replace BackendIds with 0-based ProcNumbers
Now that BackendId was just another index into the proc array, it was redundant with the 0-based proc numbers used in other places. Replace all usage of backend IDs with proc numbers. The only place where the term "backend id" remains is in a few pgstat functions that expose backend IDs at the SQL level. Those IDs are now in fact 0-based ProcNumbers too, but the documentation still calls them "backend ids". That term still seems appropriate to describe what the numbers are, so I let it be. One user-visible effect is that pg_temp_0 is now a valid temp schema name, for backend with ProcNumber 0. Reviewed-by: Andres Freund Discussion: https://www.postgresql.org/message-id/8171f1aa-496f-46a6-afc3-c46fe7a9b407@iki.fi
This commit is contained in:
@ -306,7 +306,7 @@ pg_tablespace_size_name(PG_FUNCTION_ARGS)
|
||||
* is no check here or at the call sites for that.
|
||||
*/
|
||||
static int64
|
||||
calculate_relation_size(RelFileLocator *rfn, BackendId backend, ForkNumber forknum)
|
||||
calculate_relation_size(RelFileLocator *rfn, ProcNumber backend, ForkNumber forknum)
|
||||
{
|
||||
int64 totalsize = 0;
|
||||
char *relationpath;
|
||||
@ -951,7 +951,7 @@ pg_relation_filepath(PG_FUNCTION_ARGS)
|
||||
HeapTuple tuple;
|
||||
Form_pg_class relform;
|
||||
RelFileLocator rlocator;
|
||||
BackendId backend;
|
||||
ProcNumber backend;
|
||||
char *path;
|
||||
|
||||
tuple = SearchSysCache1(RELOID, ObjectIdGetDatum(relid));
|
||||
@ -996,21 +996,21 @@ pg_relation_filepath(PG_FUNCTION_ARGS)
|
||||
{
|
||||
case RELPERSISTENCE_UNLOGGED:
|
||||
case RELPERSISTENCE_PERMANENT:
|
||||
backend = InvalidBackendId;
|
||||
backend = INVALID_PROC_NUMBER;
|
||||
break;
|
||||
case RELPERSISTENCE_TEMP:
|
||||
if (isTempOrTempToastNamespace(relform->relnamespace))
|
||||
backend = BackendIdForTempRelations();
|
||||
backend = ProcNumberForTempRelations();
|
||||
else
|
||||
{
|
||||
/* Do it the hard way. */
|
||||
backend = GetTempNamespaceBackendId(relform->relnamespace);
|
||||
Assert(backend != InvalidBackendId);
|
||||
backend = GetTempNamespaceProcNumber(relform->relnamespace);
|
||||
Assert(backend != INVALID_PROC_NUMBER);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
elog(ERROR, "invalid relpersistence: %c", relform->relpersistence);
|
||||
backend = InvalidBackendId; /* placate compiler */
|
||||
backend = INVALID_PROC_NUMBER; /* placate compiler */
|
||||
break;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user