From 3dc4928b6c995e22f199f7b9a1bdb5247d8d7a10 Mon Sep 17 00:00:00 2001 From: Dmitry Wagin Date: Thu, 23 May 2024 22:14:48 +0000 Subject: databases/foundationdb*: split, update to 7.1.59 & 7.3.41 Update FoundationDB to both main supported versions, and also split between server and client builds for convenience. PR: 277262 Reviewed by: dch Sponsored by: SkunkWerks, GmbH --- .../files/patch-fdbserver_fdbserver.actor.cpp | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 databases/foundationdb71-server/files/patch-fdbserver_fdbserver.actor.cpp (limited to 'databases/foundationdb71-server/files/patch-fdbserver_fdbserver.actor.cpp') diff --git a/databases/foundationdb71-server/files/patch-fdbserver_fdbserver.actor.cpp b/databases/foundationdb71-server/files/patch-fdbserver_fdbserver.actor.cpp new file mode 100644 index 000000000000..d4ee49741917 --- /dev/null +++ b/databases/foundationdb71-server/files/patch-fdbserver_fdbserver.actor.cpp @@ -0,0 +1,30 @@ +--- fdbserver/fdbserver.actor.cpp.orig 2024-01-17 13:58:04 UTC ++++ fdbserver/fdbserver.actor.cpp +@@ -84,7 +84,11 @@ + #if defined(__linux__) || defined(__FreeBSD__) + #include + #include ++#if defined(__linux__) + #include ++#elif defined(__FreeBSD__) ++#include ++#endif + #ifdef ALLOC_INSTRUMENTATION + #include + #endif +@@ -2238,9 +2242,14 @@ int main(int argc, char* argv[]) { + f = result; + } else if (role == ServerRole::FlowProcess) { + TraceEvent(SevDebug, "StartingFlowProcess").detail("From", "fdbserver"); +-#if defined(__linux__) || defined(__FreeBSD__) ++#if defined(__linux__) + prctl(PR_SET_PDEATHSIG, SIGTERM); + if (getppid() == 1) /* parent already died before prctl */ ++ flushAndExit(FDB_EXIT_SUCCESS); ++#elif defined(__FreeBSD__) ++ const int sig = SIGTERM; ++ procctl(P_PID, 0, PROC_PDEATHSIG_CTL, (void*)&sig); ++ if (getppid() == 1) /* parent already died before procctl */ + flushAndExit(FDB_EXIT_SUCCESS); + #endif + -- cgit v1.2.3