summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMichael Paquier2025-04-28 00:08:15 +0000
committerMichael Paquier2025-04-28 00:08:15 +0000
commitb225c5e76ed1053e505e392423b0dab065a3b813 (patch)
tree2cefc5584c85cdf5110963c680cc5c8f416d35fc /src
parent1aa7cf9eb85972aaf2969306e84f5fc794fbef7f (diff)
Remove circular #include's between wait_event.h and wait_event_types.h
wait_event_types.h is generated by the code, and included wait_event.h. wait_event.h did the opposite move, including wait_event_types.h, causing a circular dependency between both. wait_event_types.h only needs to now about the wait event classes, so this information is moved into its own file, and wait_event_types.h uses this new header so as it does not depend anymore on wait_event.h. Note that such errors can be found with clang-tidy, with commands like this one: clang-tidy source_file.c --checks=misc-header-include-cycle -- \ -I/install/path/include/ -I/install/path/include/server/ Issue introduced by fa88928470b5. Author: Bertrand Drouvot <[email protected]> Discussion: https://postgr.es/m/[email protected]
Diffstat (limited to 'src')
-rw-r--r--src/backend/utils/activity/generate-wait_event_types.pl2
-rw-r--r--src/include/utils/wait_classes.h29
-rw-r--r--src/include/utils/wait_event.h16
3 files changed, 30 insertions, 17 deletions
diff --git a/src/backend/utils/activity/generate-wait_event_types.pl b/src/backend/utils/activity/generate-wait_event_types.pl
index 171bf2ae632..424ad9f115d 100644
--- a/src/backend/utils/activity/generate-wait_event_types.pl
+++ b/src/backend/utils/activity/generate-wait_event_types.pl
@@ -168,7 +168,7 @@ if ($gen_code)
printf $h $header_comment, 'wait_event_types.h';
printf $h "#ifndef WAIT_EVENT_TYPES_H\n";
printf $h "#define WAIT_EVENT_TYPES_H\n\n";
- printf $h "#include \"utils/wait_event.h\"\n\n";
+ printf $h "#include \"utils/wait_classes.h\"\n\n";
printf $c $header_comment, 'pgstat_wait_event.c';
diff --git a/src/include/utils/wait_classes.h b/src/include/utils/wait_classes.h
new file mode 100644
index 00000000000..51ee68397d5
--- /dev/null
+++ b/src/include/utils/wait_classes.h
@@ -0,0 +1,29 @@
+/*-------------------------------------------------------------------------
+ * wait_classes.h
+ * Definitions related to wait event classes
+ *
+ * Copyright (c) 2001-2025, PostgreSQL Global Development Group
+ *
+ * src/include/utils/wait_classes.h
+ * ----------
+ */
+#ifndef WAIT_CLASSES_H
+#define WAIT_CLASSES_H
+
+
+/* ----------
+ * Wait Classes
+ * ----------
+ */
+#define PG_WAIT_LWLOCK 0x01000000U
+#define PG_WAIT_LOCK 0x03000000U
+#define PG_WAIT_BUFFERPIN 0x04000000U
+#define PG_WAIT_ACTIVITY 0x05000000U
+#define PG_WAIT_CLIENT 0x06000000U
+#define PG_WAIT_EXTENSION 0x07000000U
+#define PG_WAIT_IPC 0x08000000U
+#define PG_WAIT_TIMEOUT 0x09000000U
+#define PG_WAIT_IO 0x0A000000U
+#define PG_WAIT_INJECTIONPOINT 0x0B000000U
+
+#endif /* WAIT_CLASSES_H */
diff --git a/src/include/utils/wait_event.h b/src/include/utils/wait_event.h
index b8cb3e5a430..f5815b4994a 100644
--- a/src/include/utils/wait_event.h
+++ b/src/include/utils/wait_event.h
@@ -10,22 +10,6 @@
#ifndef WAIT_EVENT_H
#define WAIT_EVENT_H
-
-/* ----------
- * Wait Classes
- * ----------
- */
-#define PG_WAIT_LWLOCK 0x01000000U
-#define PG_WAIT_LOCK 0x03000000U
-#define PG_WAIT_BUFFERPIN 0x04000000U
-#define PG_WAIT_ACTIVITY 0x05000000U
-#define PG_WAIT_CLIENT 0x06000000U
-#define PG_WAIT_EXTENSION 0x07000000U
-#define PG_WAIT_IPC 0x08000000U
-#define PG_WAIT_TIMEOUT 0x09000000U
-#define PG_WAIT_IO 0x0A000000U
-#define PG_WAIT_INJECTIONPOINT 0x0B000000U
-
/* enums for wait events */
#include "utils/wait_event_types.h"