agora inbox for pgsql-hackers@postgresql.org  
help / color / mirror / Atom feed
[PATCH v33 04/11] Add Incremental View Maintenance support to pg_dump
327+ messages / 5 participants
[nested] [flat]

* [PATCH v33 04/11] Add Incremental View Maintenance support to pg_dump
@ 2020-11-11 08:01  Yugo Nagata <nagata@sraoss.co.jp>
  0 siblings, 0 replies; 327+ messages in thread

From: Yugo Nagata @ 2020-11-11 08:01 UTC (permalink / raw)

Support CREATE INCREMENTAL MATERIALIZED VIEW syntax.
---
 src/bin/pg_dump/pg_dump.c        | 18 +++++++++++++++---
 src/bin/pg_dump/pg_dump.h        |  2 ++
 src/bin/pg_dump/t/002_pg_dump.pl | 18 ++++++++++++++++++
 3 files changed, 35 insertions(+), 3 deletions(-)

diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c
index e324070828..c2e1f761dc 100644
--- a/src/bin/pg_dump/pg_dump.c
+++ b/src/bin/pg_dump/pg_dump.c
@@ -6740,6 +6740,7 @@ getTables(Archive *fout, int *numTables)
 	int			i_relacl;
 	int			i_acldefault;
 	int			i_ispartition;
+	int			i_isivm;
 
 	/*
 	 * Find all the tables and table-like objects.
@@ -6842,10 +6843,17 @@ getTables(Archive *fout, int *numTables)
 
 	if (fout->remoteVersion >= 100000)
 		appendPQExpBufferStr(query,
-							 "c.relispartition AS ispartition ");
+							 "c.relispartition AS ispartition, ");
 	else
 		appendPQExpBufferStr(query,
-							 "false AS ispartition ");
+							 "false AS ispartition, ");
+
+	if (fout->remoteVersion >= 170000)
+		appendPQExpBufferStr(query,
+							 "c.relisivm AS isivm ");
+	else
+		appendPQExpBufferStr(query,
+							 "false AS isivm ");
 
 	/*
 	 * Left join to pg_depend to pick up dependency info linking sequences to
@@ -6954,6 +6962,7 @@ getTables(Archive *fout, int *numTables)
 	i_relacl = PQfnumber(res, "relacl");
 	i_acldefault = PQfnumber(res, "acldefault");
 	i_ispartition = PQfnumber(res, "ispartition");
+	i_isivm = PQfnumber(res, "isivm");
 
 	if (dopt->lockWaitTimeout)
 	{
@@ -7033,6 +7042,7 @@ getTables(Archive *fout, int *numTables)
 			tblinfo[i].amname = pg_strdup(PQgetvalue(res, i, i_amname));
 		tblinfo[i].is_identity_sequence = (strcmp(PQgetvalue(res, i, i_is_identity_sequence), "t") == 0);
 		tblinfo[i].ispartition = (strcmp(PQgetvalue(res, i, i_ispartition), "t") == 0);
+		tblinfo[i].isivm = (strcmp(PQgetvalue(res, i, i_isivm), "t") == 0);
 
 		/* other fields were zeroed above */
 
@@ -15906,9 +15916,11 @@ dumpTableSchema(Archive *fout, const TableInfo *tbinfo)
 			binary_upgrade_set_pg_class_oids(fout, q,
 											 tbinfo->dobj.catId.oid, false);
 
-		appendPQExpBuffer(q, "CREATE %s%s %s",
+		appendPQExpBuffer(q, "CREATE %s%s%s %s",
 						  tbinfo->relpersistence == RELPERSISTENCE_UNLOGGED ?
 						  "UNLOGGED " : "",
+						  tbinfo->relkind == RELKIND_MATVIEW && tbinfo->isivm ?
+						  "INCREMENTAL " : "",
 						  reltypename,
 						  qualrelname);
 
diff --git a/src/bin/pg_dump/pg_dump.h b/src/bin/pg_dump/pg_dump.h
index 865823868f..7eac1e7c6f 100644
--- a/src/bin/pg_dump/pg_dump.h
+++ b/src/bin/pg_dump/pg_dump.h
@@ -325,6 +325,8 @@ typedef struct _tableInfo
 	int			numParents;		/* number of (immediate) parent tables */
 	struct _tableInfo **parents;	/* TableInfos of immediate parents */
 
+	bool		isivm;			/* is incrementally maintainable materialized view? */
+
 	/*
 	 * These fields are computed only if we decide the table is interesting
 	 * (it's either a table to dump, or a direct parent of a dumpable table).
diff --git a/src/bin/pg_dump/t/002_pg_dump.pl b/src/bin/pg_dump/t/002_pg_dump.pl
index d3dd8784d6..62fc9b5bc4 100644
--- a/src/bin/pg_dump/t/002_pg_dump.pl
+++ b/src/bin/pg_dump/t/002_pg_dump.pl
@@ -2785,6 +2785,24 @@ my %tests = (
 		},
 	},
 
+	'CREATE MATERIALIZED VIEW matview_ivm' => {
+		create_order => 21,
+		create_sql   => 'CREATE INCREMENTAL MATERIALIZED VIEW dump_test.matview_ivm (col1) AS
+					   SELECT col1 FROM dump_test.test_table;',
+		regexp => qr/^
+			\QCREATE INCREMENTAL MATERIALIZED VIEW dump_test.matview_ivm AS\E
+			\n\s+\QSELECT col1\E
+			\n\s+\QFROM dump_test.test_table\E
+			\n\s+\QWITH NO DATA;\E
+			/xm,
+		like =>
+		  { %full_runs, %dump_test_schema_runs, section_pre_data => 1, },
+		unlike => {
+			exclude_dump_test_schema => 1,
+			only_dump_measurement => 1,
+		},
+	},
+
 	'CREATE POLICY p1 ON test_table' => {
 		create_order => 22,
 		create_sql => 'CREATE POLICY p1 ON dump_test.test_table
-- 
2.25.1


--Multipart=_Tue__2_Jul_2024_17_03_11_+0900_6OrVBZxOB4o_k6A1
Content-Type: text/x-diff;
 name="v33-0003-Allow-to-prolong-life-span-of-transition-tables-.patch"
Content-Disposition: attachment;
 filename="v33-0003-Allow-to-prolong-life-span-of-transition-tables-.patch"
Content-Transfer-Encoding: 7bit



^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* [PATCH v1 1/1] remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)

---
 src/backend/utils/activity/wait_event.c | 29 ++++++-------------------
 src/tools/pgindent/typedefs.list        |  1 -
 2 files changed, 7 insertions(+), 23 deletions(-)

diff --git a/src/backend/utils/activity/wait_event.c b/src/backend/utils/activity/wait_event.c
index 95635c7f56c..7ee6f99fb50 100644
--- a/src/backend/utils/activity/wait_event.c
+++ b/src/backend/utils/activity/wait_event.c
@@ -81,14 +81,7 @@ typedef struct WaitEventCustomEntryByName
 
 
 /* dynamic allocation counter for custom wait events */
-typedef struct WaitEventCustomCounterData
-{
-	int			nextId;			/* next ID to assign */
-	slock_t		mutex;			/* protects the counter */
-} WaitEventCustomCounterData;
-
-/* pointer to the shared memory */
-static WaitEventCustomCounterData *WaitEventCustomCounter;
+static int *WaitEventCustomCounter;
 
 /* first event ID of custom wait events */
 #define WAIT_EVENT_CUSTOM_INITIAL_ID	1
@@ -110,8 +103,8 @@ const ShmemCallbacks WaitEventCustomShmemCallbacks = {
 static void
 WaitEventCustomShmemRequest(void *arg)
 {
-	ShmemRequestStruct(.name = "WaitEventCustomCounterData",
-					   .size = sizeof(WaitEventCustomCounterData),
+	ShmemRequestStruct(.name = "WaitEventCustomCounter",
+					   .size = sizeof(int),
 					   .ptr = (void **) &WaitEventCustomCounter,
 		);
 	ShmemRequestHash(.name = "WaitEventCustom hash by wait event information",
@@ -134,9 +127,8 @@ WaitEventCustomShmemRequest(void *arg)
 static void
 WaitEventCustomShmemInit(void *arg)
 {
-	/* initialize the allocation counter and its spinlock. */
-	WaitEventCustomCounter->nextId = WAIT_EVENT_CUSTOM_INITIAL_ID;
-	SpinLockInit(&WaitEventCustomCounter->mutex);
+	/* initialize the allocation counter */
+	*WaitEventCustomCounter = WAIT_EVENT_CUSTOM_INITIAL_ID;
 }
 
 /*
@@ -221,19 +213,12 @@ WaitEventCustomNew(uint32 classId, const char *wait_event_name)
 	}
 
 	/* Allocate a new event Id */
-	SpinLockAcquire(&WaitEventCustomCounter->mutex);
-
-	if (WaitEventCustomCounter->nextId >= WAIT_EVENT_CUSTOM_HASH_SIZE)
-	{
-		SpinLockRelease(&WaitEventCustomCounter->mutex);
+	if (*WaitEventCustomCounter >= WAIT_EVENT_CUSTOM_HASH_SIZE)
 		ereport(ERROR,
 				errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED),
 				errmsg("too many custom wait events"));
-	}
-
-	eventId = WaitEventCustomCounter->nextId++;
 
-	SpinLockRelease(&WaitEventCustomCounter->mutex);
+	eventId = (*WaitEventCustomCounter)++;
 
 	/* Register the new wait event */
 	wait_event_info = classId | eventId;
diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list
index ffb413ab612..3174e0e4ab8 100644
--- a/src/tools/pgindent/typedefs.list
+++ b/src/tools/pgindent/typedefs.list
@@ -3418,7 +3418,6 @@ WaitEvent
 WaitEventActivity
 WaitEventBuffer
 WaitEventClient
-WaitEventCustomCounterData
 WaitEventCustomEntryByInfo
 WaitEventCustomEntryByName
 WaitEventIO
-- 
2.50.1 (Apple Git-155)


--65l7A33W789+zwjF--





^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* remove WaitEventCustomCounterData
@ 2026-07-09 02:50  Nathan Bossart <nathandbossart@gmail.com>
  0 siblings, 1 reply; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 02:50 UTC (permalink / raw)
  To: pgsql-hackers; +Cc: michael@paquier.xyz

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] 327+ messages in thread

* Re: remove WaitEventCustomCounterData
@ 2026-07-09 04:04  Michael Paquier <michael@paquier.xyz>
  parent: Nathan Bossart <nathandbossart@gmail.com>
  0 siblings, 1 reply; 327+ messages in thread

From: Michael Paquier @ 2026-07-09 04:04 UTC (permalink / raw)
  To: Nathan Bossart <nathandbossart@gmail.com>; +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, ../../ak8d1aEHqtAdHi7k@paquier.xyz/2-signature.asc)
  download

^ permalink  raw  reply  [nested|flat] 327+ messages in thread

* Re: remove WaitEventCustomCounterData
@ 2026-07-09 04:22  Fujii Masao <masao.fujii@gmail.com>
  parent: Michael Paquier <michael@paquier.xyz>
  0 siblings, 1 reply; 327+ messages in thread

From: Fujii Masao @ 2026-07-09 04:22 UTC (permalink / raw)
  To: Michael Paquier <michael@paquier.xyz>; +Cc: Nathan Bossart <nathandbossart@gmail.com>; pgsql-hackers

On Thu, Jul 9, 2026 at 1:04 PM Michael Paquier <michael@paquier.xyz> 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] 327+ messages in thread

* Re: remove WaitEventCustomCounterData
@ 2026-07-09 16:10  Nathan Bossart <nathandbossart@gmail.com>
  parent: Fujii Masao <masao.fujii@gmail.com>
  0 siblings, 0 replies; 327+ messages in thread

From: Nathan Bossart @ 2026-07-09 16:10 UTC (permalink / raw)
  To: Fujii Masao <masao.fujii@gmail.com>; +Cc: Michael Paquier <michael@paquier.xyz>; 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] 327+ messages in thread


end of thread, other threads:[~2026-07-09 16:10 UTC | newest]

Thread overview: 327+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2020-11-11 08:01 [PATCH v33 04/11] Add Incremental View Maintenance support to pg_dump Yugo Nagata <nagata@sraoss.co.jp>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 [PATCH v1 1/1] remove WaitEventCustomCounterData Nathan Bossart <nathan@postgresql.org>
2026-07-09 02:50 remove WaitEventCustomCounterData Nathan Bossart <nathandbossart@gmail.com>
2026-07-09 04:04 ` Re: remove WaitEventCustomCounterData Michael Paquier <michael@paquier.xyz>
2026-07-09 04:22   ` Re: remove WaitEventCustomCounterData Fujii Masao <masao.fujii@gmail.com>
2026-07-09 16:10     ` Re: remove WaitEventCustomCounterData Nathan Bossart <nathandbossart@gmail.com>

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox