agora inbox for [email protected]
help / color / mirror / Atom feed[PATCH v4 2/3] remove lo_hton64() and lo_ntoh64()
276+ messages / 5 participants
[nested] [flat]
* [PATCH v4 2/3] remove lo_hton64() and lo_ntoh64()
@ 2026-06-02 17:22 Reviewer <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Reviewer @ 2026-06-02 17:22 UTC (permalink / raw)
---
src/interfaces/libpq/fe-lobj.c | 58 +++-------------------------------
1 file changed, 4 insertions(+), 54 deletions(-)
diff --git a/src/interfaces/libpq/fe-lobj.c b/src/interfaces/libpq/fe-lobj.c
index 1660c969f58..42b2a36bda9 100644
--- a/src/interfaces/libpq/fe-lobj.c
+++ b/src/interfaces/libpq/fe-lobj.c
@@ -43,8 +43,6 @@
static int lo_initialize(PGconn *conn);
static Oid lo_import_internal(PGconn *conn, const char *filename, Oid oid);
-static int64_t lo_hton64(int64_t host64);
-static int64_t lo_ntoh64(int64_t net64);
/*
* lo_open
@@ -213,7 +211,7 @@ lo_truncate64(PGconn *conn, int fd, int64_t len)
argv[0].len = 4;
argv[0].u.integer = fd;
- len = lo_hton64(len);
+ len = pg_hton64(len);
argv[1].isint = 0;
argv[1].len = 8;
argv[1].u.ptr = (int *) &len;
@@ -403,7 +401,7 @@ lo_lseek64(PGconn *conn, int fd, int64_t offset, int whence)
argv[0].len = 4;
argv[0].u.integer = fd;
- offset = lo_hton64(offset);
+ offset = pg_hton64(offset);
argv[1].isint = 0;
argv[1].len = 8;
argv[1].u.ptr = (int *) &offset;
@@ -417,7 +415,7 @@ lo_lseek64(PGconn *conn, int fd, int64_t offset, int whence)
if (PQresultStatus(res) == PGRES_COMMAND_OK && result_len == 8)
{
PQclear(res);
- return lo_ntoh64(retval);
+ return pg_ntoh64(retval);
}
else
{
@@ -571,7 +569,7 @@ lo_tell64(PGconn *conn, int fd)
if (PQresultStatus(res) == PGRES_COMMAND_OK && result_len == 8)
{
PQclear(res);
- return lo_ntoh64(retval);
+ return pg_ntoh64(retval);
}
else
{
@@ -1014,51 +1012,3 @@ lo_initialize(PGconn *conn)
conn->lobjfuncs = lobjfuncs;
return 0;
}
-
-/*
- * lo_hton64
- * converts a 64-bit integer from host byte order to network byte order
- */
-static int64_t
-lo_hton64(int64_t host64)
-{
- union
- {
- int64 i64;
- uint32 i32[2];
- } swap;
- uint32 t;
-
- /* High order half first, since we're doing MSB-first */
- t = (uint32) (host64 >> 32);
- swap.i32[0] = pg_hton32(t);
-
- /* Now the low order half */
- t = (uint32) host64;
- swap.i32[1] = pg_hton32(t);
-
- return swap.i64;
-}
-
-/*
- * lo_ntoh64
- * converts a 64-bit integer from network byte order to host byte order
- */
-static int64_t
-lo_ntoh64(int64_t net64)
-{
- union
- {
- int64 i64;
- uint32 i32[2];
- } swap;
- int64 result;
-
- swap.i64 = net64;
-
- result = (uint32) pg_ntoh32(swap.i32[0]);
- result <<= 32;
- result |= (uint32) pg_ntoh32(swap.i32[1]);
-
- return result;
-}
--
2.50.1 (Apple Git-155)
--Z10p9YYojB0/BzD2
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment;
filename=v4-0003-add-helper-functions-for-fast-path-arg-setup.patch
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
---
src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
src/tools/pgindent/typedefs.list | 1 -
2 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
/* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
- int nextId; /* next ID to assign */
- slock_t mutex; /* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
/* first event ID of custom wait events */
#define WAIT_EVENT_CUSTOM_INITIAL_ID 1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
static void
WaitEventCustomShmemRequest(void *arg)
{
- ShmemRequestStruct(.name = "WaitEventCustomCounterData",
- .size = sizeof(WaitEventCustomCounterData),
+ ShmemRequestStruct(.name = "WaitEventCustomCounter",
+ .size = sizeof(int),
.ptr = (void **) &WaitEventCustomCounter,
);
ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
static void
WaitEventCustomShmemInit(void *arg)
{
- /* initialize the allocation counter and its spinlock. */
- WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
- SpinLockInit(&WaitEventCustomCounter->mutex);
+ /* initialize the allocation counter */
+ *WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
}
/*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
}
/* Allocate a new event Id */
- SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
- if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
- {
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
ereport(ERROR,
errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
errmsg("too many custom wait events"));
- }
-
- eventId = WaitEventCustomCounter->nextId++;
- SpinLockRelease(&WaitEventCustomCounter->mutex);
+ eventId = (*WaitEventCustomCounter)++;
/* Register the new wait event */
wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
WaitEventActivity
WaitEventBuffer
WaitEventClient
-WaitEventCustomCounterData
WaitEventCustomEntryByInfo
WaitEventCustomEntryByName
WaitEventIO
--
2.50.1 (Apple Git-155)
--65l7A33W789+zwjF--
^ permalink raw reply [nested|flat] 276+ messages in thread
* remove WaitEventCustomCounterData
@ 2026-07-09 02:50 Nathan Bossart <[email protected]>
2026-07-09 04:04 ` Re: remove WaitEventCustomCounterData Michael Paquier <[email protected]>
0 siblings, 1 reply; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
To: pgsql-hackers; +Cc: [email protected]
While trying to understand the extent of our spinlock usage, I noticed that
WaitEventCustomCounterData->mutex is unnecessary because the counter is
only ever accessed with WaitEventCustomLock held exclusively. So, here's a
patch to simplify matters a bit. Thoughts?
--
nathan
^ permalink raw reply [nested|flat] 276+ messages in thread
* Re: remove WaitEventCustomCounterData
2026-07-09 02:50 remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
@ 2026-07-09 04:04 ` Michael Paquier <[email protected]>
2026-07-09 04:22 ` Re: remove WaitEventCustomCounterData Fujii Masao <[email protected]>
0 siblings, 1 reply; 276+ messages in thread
From: Michael Paquier @ 2026-07-09 04:04 UTC (permalink / raw)
To: Nathan Bossart <[email protected]>; +Cc: pgsql-hackers
On Wed, Jul 08, 2026 at 09:50:33PM -0500, Nathan Bossart wrote:
> While trying to understand the extent of our spinlock usage, I noticed that
> WaitEventCustomCounterData->mutex is unnecessary because the counter is
> only ever accessed with WaitEventCustomLock held exclusively. So, here's a
> patch to simplify matters a bit. Thoughts?
Indeed. This removal sounds good to me, thanks.
--
Michael
Attachments:
[application/pgp-signature] signature.asc (833B, ../../[email protected]/2-signature.asc)
download
^ permalink raw reply [nested|flat] 276+ messages in thread
* Re: remove WaitEventCustomCounterData
2026-07-09 02:50 remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 04:04 ` Re: remove WaitEventCustomCounterData Michael Paquier <[email protected]>
@ 2026-07-09 04:22 ` Fujii Masao <[email protected]>
2026-07-09 16:10 ` Re: remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
0 siblings, 1 reply; 276+ messages in thread
From: Fujii Masao @ 2026-07-09 04:22 UTC (permalink / raw)
To: Michael Paquier <[email protected]>; +Cc: Nathan Bossart <[email protected]>; pgsql-hackers
On Thu, Jul 9, 2026 at 1:04 PM Michael Paquier <[email protected]> wrote:
>
> On Wed, Jul 08, 2026 at 09:50:33PM -0500, Nathan Bossart wrote:
> > While trying to understand the extent of our spinlock usage, I noticed that
> > WaitEventCustomCounterData->mutex is unnecessary because the counter is
> > only ever accessed with WaitEventCustomLock held exclusively. So, here's a
> > patch to simplify matters a bit. Thoughts?
>
> Indeed. This removal sounds good to me, thanks.
#include "storage/spin.h" seems no longer needed in wait_event.c,
since the patch removes the last use of the spinlock code there.
So we can remove that include as well?
Regards,
--
Fujii Masao
^ permalink raw reply [nested|flat] 276+ messages in thread
* Re: remove WaitEventCustomCounterData
2026-07-09 02:50 remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 04:04 ` Re: remove WaitEventCustomCounterData Michael Paquier <[email protected]>
2026-07-09 04:22 ` Re: remove WaitEventCustomCounterData Fujii Masao <[email protected]>
@ 2026-07-09 16:10 ` Nathan Bossart <[email protected]>
0 siblings, 0 replies; 276+ messages in thread
From: Nathan Bossart @ 2026-07-09 16:10 UTC (permalink / raw)
To: Fujii Masao <[email protected]>; +Cc: Michael Paquier <[email protected]>; pgsql-hackers
On Thu, Jul 09, 2026 at 01:22:52PM +0900, Fujii Masao wrote:
> #include "storage/spin.h" seems no longer needed in wait_event.c,
> since the patch removes the last use of the spinlock code there.
> So we can remove that include as well?
I think so. I've committed the patch with that change. Thanks for
looking!
--
nathan
^ permalink raw reply [nested|flat] 276+ messages in thread
end of thread, other threads:[~2026-07-09 16:10 UTC | newest]
Thread overview: 276+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2026-06-02 17:22 [PATCH v4 2/3] remove lo_hton64() and lo_ntoh64() Reviewer <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 02:50 remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
2026-07-09 04:04 ` Re: remove WaitEventCustomCounterData Michael Paquier <[email protected]>
2026-07-09 04:22 ` Re: remove WaitEventCustomCounterData Fujii Masao <[email protected]>
2026-07-09 16:10 ` Re: remove WaitEventCustomCounterData Nathan Bossart <[email protected]>
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox