summaryrefslogtreecommitdiff
path: root/src/include/pg_config_manual.h
diff options
context:
space:
mode:
authorPeter Eisentraut <peter@eisentraut.org>2020-03-25 14:23:25 +0100
committerPeter Eisentraut <peter@eisentraut.org>2020-03-25 14:31:14 +0100
commitf5817595a7f194d25bc9be5b035eb1f7f60cd1fa (patch)
treee93265d6268975d63c7be15bb56cdc6436327b94 /src/include/pg_config_manual.h
parente8b1774fc288d7f789a539ef0a768aff2deef600 (diff)
Define EXEC_BACKEND in pg_config_manual.h
It was for unclear reasons defined in a separate location, which makes it more cumbersome to override for testing, and it also did not have any prominent documentation. Move to pg_config_manual.h, where similar things are already collected. The previous definition on the command-line had the effect of defining it to the value 1, but now that we don't need that anymore we just define it to empty, to simplify manual editing a bit. Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://www.postgresql.org/message-id/flat/b7053ba8-b008-5335-31de-2fe4fe41ef0f%402ndquadrant.com
Diffstat (limited to 'src/include/pg_config_manual.h')
-rw-r--r--src/include/pg_config_manual.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/include/pg_config_manual.h b/src/include/pg_config_manual.h
index d74a8dd8083..b7410ff51e5 100644
--- a/src/include/pg_config_manual.h
+++ b/src/include/pg_config_manual.h
@@ -123,6 +123,19 @@
#define ALIGNOF_BUFFER 32
/*
+ * If EXEC_BACKEND is defined, the postmaster uses an alternative method for
+ * starting subprocesses: Instead of simply using fork(), as is standard on
+ * Unix platforms, it uses fork()+exec() or something equivalent on Windows,
+ * as well as lots of extra code to bring the required global state to those
+ * new processes. This must be enabled on Windows (because there is no
+ * fork()). On other platforms, it's only useful for verifying those
+ * otherwise Windows-specific code paths.
+ */
+#if defined(WIN32) && !defined(__CYGWIN__)
+#define EXEC_BACKEND
+#endif
+
+/*
* Disable UNIX sockets for certain operating systems.
*/
#if defined(WIN32)