v6-0005-review.patch
text/x-patch
Filename: v6-0005-review.patch
Type: text/x-patch
Part: 4
Patch
Format: format-patch
Series: patch v6-0005
Subject: review
| File | + | − |
|---|---|---|
| src/backend/storage/lmgr/predicate.c | 8 | 5 |
| src/backend/storage/lmgr/proc.c | 11 | 10 |
From 03809b97dca1a25b1b61f119ec05ef4b1d8e5b49 Mon Sep 17 00:00:00 2001
From: Tomas Vondra <tomas@vondra.me>
Date: Thu, 27 Mar 2025 21:20:26 +0100
Subject: [PATCH v6 5/7] review
---
src/backend/storage/lmgr/predicate.c | 13 ++++++++-----
src/backend/storage/lmgr/proc.c | 21 +++++++++++----------
2 files changed, 19 insertions(+), 15 deletions(-)
diff --git a/src/backend/storage/lmgr/predicate.c b/src/backend/storage/lmgr/predicate.c
index de2629fdf0c..d82114ffca1 100644
--- a/src/backend/storage/lmgr/predicate.c
+++ b/src/backend/storage/lmgr/predicate.c
@@ -1229,6 +1229,7 @@ PredicateLockShmemInit(void)
requestSize = add_size(PredXactListDataSize,
(mul_size((Size) max_table_size,
sizeof(SERIALIZABLEXACT))));
+
PredXact = ShmemInitStruct("PredXactList",
requestSize,
&found);
@@ -1237,7 +1238,7 @@ PredicateLockShmemInit(void)
{
int i;
- /* reset everything, both the header and the element */
+ /* clean everything, both the header and the element */
memset(PredXact, 0, requestSize);
dlist_init(&PredXact->availableList);
@@ -1248,7 +1249,8 @@ PredicateLockShmemInit(void)
PredXact->LastSxactCommitSeqNo = FirstNormalSerCommitSeqNo - 1;
PredXact->CanPartialClearThrough = 0;
PredXact->HavePartialClearedThrough = 0;
- PredXact->element = (SERIALIZABLEXACT *) ((char *) PredXact + PredXactListDataSize);
+ PredXact->element
+ = (SERIALIZABLEXACT *) ((char *) PredXact + PredXactListDataSize);
/* Add all elements to available list, clean. */
for (i = 0; i < max_table_size; i++)
{
@@ -1302,9 +1304,10 @@ PredicateLockShmemInit(void)
* probably OK.
*/
max_table_size *= 5;
+
requestSize = RWConflictPoolHeaderDataSize +
- mul_size((Size) max_table_size,
- RWConflictDataSize);
+ mul_size((Size) max_table_size,
+ RWConflictDataSize);
RWConflictPool = ShmemInitStruct("RWConflictPool",
requestSize,
@@ -1319,7 +1322,7 @@ PredicateLockShmemInit(void)
dlist_init(&RWConflictPool->availableList);
RWConflictPool->element = (RWConflict) ((char *) RWConflictPool +
- RWConflictPoolHeaderDataSize);
+ RWConflictPoolHeaderDataSize);
/* Add all elements to available list, clean. */
for (i = 0; i < max_table_size; i++)
{
diff --git a/src/backend/storage/lmgr/proc.c b/src/backend/storage/lmgr/proc.c
index 6ee48410b84..c08e3bb3d56 100644
--- a/src/backend/storage/lmgr/proc.c
+++ b/src/backend/storage/lmgr/proc.c
@@ -124,20 +124,21 @@ ProcGlobalShmemSize(void)
}
/*
- * review: add comment, explaining the PG_CACHE_LINE_SIZE thing
- * review: I'd even maybe split the PG_CACHE_LINE_SIZE thing into
- * a separate commit, not to mix it with the "monitoring improvement"
+ * Report shared-memory space needed by PGPROC.
*/
static Size
PGProcShmemSize(void)
{
Size size;
- uint32 TotalProcs = MaxBackends + NUM_AUXILIARY_PROCS + max_prepared_xacts;
+ uint32 TotalProcs;
+
+ TotalProcs = MaxBackends + NUM_AUXILIARY_PROCS + max_prepared_xacts;
size = TotalProcs * sizeof(PGPROC);
size = add_size(size, TotalProcs * sizeof(*ProcGlobal->xids));
size = add_size(size, TotalProcs * sizeof(*ProcGlobal->subxidStates));
size = add_size(size, TotalProcs * sizeof(*ProcGlobal->statusFlags));
+
return size;
}
@@ -227,11 +228,11 @@ InitProcGlobal(void)
requestSize = PGProcShmemSize();
ptr = ShmemInitStruct("PGPROC structures",
- requestSize,
- &found);
+ requestSize,
+ &found);
procs = (PGPROC *) ptr;
- ptr = (char *)ptr + TotalProcs * sizeof(PGPROC);
+ ptr = (char *) ptr + TotalProcs * sizeof(PGPROC);
MemSet(procs, 0, TotalProcs * sizeof(PGPROC));
ProcGlobal->allProcs = procs;
@@ -244,15 +245,15 @@ InitProcGlobal(void)
*/
ProcGlobal->xids = (TransactionId *) ptr;
MemSet(ProcGlobal->xids, 0, TotalProcs * sizeof(*ProcGlobal->xids));
- ptr = (char *)ptr + (TotalProcs * sizeof(*ProcGlobal->xids));
+ ptr = (char *) ptr + (TotalProcs * sizeof(*ProcGlobal->xids));
ProcGlobal->subxidStates = (XidCacheStatus *) ptr;
MemSet(ProcGlobal->subxidStates, 0, TotalProcs * sizeof(*ProcGlobal->subxidStates));
- ptr = (char *)ptr + (TotalProcs * sizeof(*ProcGlobal->subxidStates));
+ ptr = (char *) ptr + (TotalProcs * sizeof(*ProcGlobal->subxidStates));
ProcGlobal->statusFlags = (uint8 *) ptr;
MemSet(ProcGlobal->statusFlags, 0, TotalProcs * sizeof(*ProcGlobal->statusFlags));
- ptr = (char *)ptr + (TotalProcs * sizeof(*ProcGlobal->statusFlags));
+ ptr = (char *) ptr + (TotalProcs * sizeof(*ProcGlobal->statusFlags));
/* make sure wer didn't overflow */
Assert((ptr > (char *) procs) && (ptr <= (char *) procs + requestSize));
--
2.49.0