FreeBSD Bugzilla – Attachment 248698 Details for
Bug 277262
databases/foundationdb: Large-scale port update
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
foundationdb.diff
foundationdb.diff (text/plain), 41.70 KB, created by
Dmitry Wagin
on 2024-02-23 14:53:13 UTC
(
hide
)
Description:
foundationdb.diff
Filename:
MIME Type:
Creator:
Dmitry Wagin
Created:
2024-02-23 14:53:13 UTC
Size:
41.70 KB
patch
obsolete
>diff --git a/MOVED b/MOVED >index e45a8db00..bc2087c76 100644 >--- a/MOVED >+++ b/MOVED >@@ -2993,3 +2993,4 @@ graphics/qcustomplot-qt5|graphics/qcustomplot|2024-02-19|Renamed to support flav > audio/play||2024-02-20|Has expired: Upstream vaporized and last release was in 2000 > graphics/fotoxx|graphics/fotocx|2024-02-21|Project was renamed upstream > databases/xtrabackup8|databases/xtrabackup80|2024-02-22|Rename port to avoid confusion >+databases/foundationdb|databases/foundationdb71-server|2024-02-23|Reintegrated into databases/foundationdb71-server >diff --git a/UIDs b/UIDs >index 707e29c7b..5498975db 100644 >--- a/UIDs >+++ b/UIDs >@@ -176,7 +176,7 @@ _hfm:*:227:227::0:0:hfm daemon:/nonexistent:/usr/sbin/nologin > osrm:*:228:228::0:0:osrm:/nonexistent:/usr/sbin/nologin > # free: 229, GID used > carbon:*:230:230::0:0:osrm:/nonexistent:/usr/sbin/nologin >-foundationdb:*:231:231::0:0:foundationdb:/nonexistent:/usr/sbin/nologin >+foundationdb:*:231:231::0:0:FoundationDB user:/nonexistent:/usr/sbin/nologin > archiva:*:232:232::0:0:Archiva Daemon User:/usr/local/archiva:/bin/sh > _ntp:*:233:233::0:0:NTP Daemon:/var/empty:/usr/sbin/nologin > kafka:*:234:234::0:0:Apache Kafka user:/nonexistent:/usr/sbin/nologin >diff --git a/databases/Makefile b/databases/Makefile >index fa3aae96d..f2f5e57ec 100644 >--- a/databases/Makefile >+++ b/databases/Makefile >@@ -67,7 +67,10 @@ > SUBDIR += firebird40-client > SUBDIR += firebird40-server > SUBDIR += fortytwo-bdb >- SUBDIR += foundationdb >+ SUBDIR += foundationdb71-client >+ SUBDIR += foundationdb71-server >+ SUBDIR += foundationdb73-client >+ SUBDIR += foundationdb73-server > SUBDIR += frece > SUBDIR += freetds > SUBDIR += freetds-devel >diff --git a/databases/foundationdb/Makefile b/databases/foundationdb/Makefile >deleted file mode 100644 >index 9fbf62b8f..000000000 >--- a/databases/foundationdb/Makefile >+++ /dev/null >@@ -1,98 +0,0 @@ >-PORTNAME= foundationdb >-DISTVERSION= 7.1.29 >-CATEGORIES= databases >- >-# PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/pull/ >- >-MAINTAINER= dch@FreeBSD.org >-COMMENT= Distributed, transactional key-value store >-WWW= https://www.foundationdb.org/ >- >-LICENSE= APACHE20 >-LICENSE_FILE= ${WRKSRC}/LICENSE >- >-BROKEN_aarch64= invalid asm rdtsc >-ONLY_FOR_ARCHS= aarch64 amd64 >-ONLY_FOR_ARCHS_REASON= not yet ported to anything else >- >-BUILD_DEPENDS= ${LOCALBASE}/include/msgpack.hpp:devel/msgpack-cxx \ >- ${LOCALBASE}/include/toml.hpp:devel/toml11 \ >- bash:shells/bash \ >- git:devel/git >-LIB_DEPENDS= libboost_system.so:devel/boost-libs \ >- libeio.so:devel/libeio >- >-USES= cmake compiler:c++20-lang mono:build python:build shebangfix \ >- ssl >-USE_GITHUB= yes >-GH_ACCOUNT= apple >-GH_PROJECT= foundationdb >-USE_LDCONFIG= yes >-USE_RC_SUBR= foundationdb >- >-SHEBANG_FILES= bindings/c/generate_asm.py >- >-CMAKE_ARGS= -DOPENSSL_ROOT_DIR=${OPENSSLLIB} >-CMAKE_OFF= DISABLE_TLS USE_DTRACE USE_JEMALLOC WITH_CONTRIB WITH_FLOWBENCH >- >-MAKE_ENV= MONO_REGISTRY_PATH=/tmp/registry >- >-SUB_FILES= foundationdb.conf >-SUB_LIST= ${SUB_FDB} >- >-USERS= foundationdb >-GROUPS= foundationdb >- >-PLIST_SUB= ${SUB_FDB} >- >-FOUNDATIONDB_DBDIR?= /var/db/foundationdb >-FOUNDATIONDB_ETCDIR?= ${PREFIX}/etc/foundationdb >-FOUNDATIONDB_GROUP?= foundationdb >-FOUNDATIONDB_LOGDIR?= /var/log/foundationdb >-FOUNDATIONDB_USER?= foundationdb >- >-SUB_FDB= FOUNDATIONDB_DBDIR=${FOUNDATIONDB_DBDIR} \ >- FOUNDATIONDB_ETCDIR=${FOUNDATIONDB_ETCDIR} \ >- FOUNDATIONDB_GROUP=${FOUNDATIONDB_GROUP} \ >- FOUNDATIONDB_LOGDIR=${FOUNDATIONDB_LOGDIR} \ >- FOUNDATIONDB_USER=${FOUNDATIONDB_USER} >- >-post-patch: >- ${REINPLACE_CMD} 's/OPENSSL_USE_STATIC_LIBS TRUE/OPENSSL_USE_STATIC_LIBS FALSE/' \ >- ${WRKSRC}/cmake/FDBComponents.cmake >- ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|' \ >- ${WRKSRC}/bindings/c/test/unit/third_party/CMakeLists.txt >- >-do-install: >-# commands on first line, dev tools on next two >-.for f in fdbbackup fdbcli fdbmonitor fdbserver actor_flamegraph fdb_flow_tester \ >- fdbconvert fdbdecode tutorial >- ${INSTALL_PROGRAM} ${WRKDIR}/.build/bin/${f} ${STAGEDIR}${PREFIX}/bin/ >-.endfor >-.for s in backup_agent dr_agent fastrestore_agent fdbr fdbrestore >- ${RLN} ${STAGEDIR}${PREFIX}/bin/fdbbackup ${STAGEDIR}${PREFIX}/bin/${s} >-.endfor >-# exposed libraries - confirm with upstream >-.for l in libfdb_c.so libfdb_flow.a libfdb_sqlite.a libfdbclient.a libfdbrpc.a \ >- libflow.a >- ${STRIP_CMD} ${WRKDIR}/.build/lib/${l} >- ${INSTALL_DATA} ${WRKDIR}/.build/lib/${l} ${STAGEDIR}/${PREFIX}/lib/ >-.endfor >-# exposed headers - confirm with upstream >- ${MKDIR} ${STAGEDIR}${PREFIX}/include/foundationdb >- ${INSTALL_DATA} ${WRKSRC}/bindings/c/foundationdb/fdb_c.h \ >- ${STAGEDIR}/${PREFIX}/include/foundationdb/ >- ${INSTALL_DATA} ${WRKSRC}/bindings/c/foundationdb/fdb_c_types.h \ >- ${STAGEDIR}/${PREFIX}/include/foundationdb/ >- ${INSTALL_DATA} ${WRKSRC}/fdbclient/vexillographer/fdb.options \ >- ${STAGEDIR}/${PREFIX}/include/foundationdb/ >- ${INSTALL_DATA} ${WRKDIR}/.build/bindings/c/foundationdb/fdb_c_options.g.h \ >- ${STAGEDIR}/${PREFIX}/include/foundationdb/ >-# runtime related >- ${MKDIR} ${STAGEDIR}${FOUNDATIONDB_ETCDIR} >- ${MKDIR} ${STAGEDIR}${FOUNDATIONDB_DBDIR} >- ${MKDIR} ${STAGEDIR}${FOUNDATIONDB_LOGDIR} >- ${INSTALL_DATA} ${WRKDIR}/foundationdb.conf \ >- ${STAGEDIR}${FOUNDATIONDB_ETCDIR}/foundationdb.conf.sample >- >-.include <bsd.port.mk> >diff --git a/databases/foundationdb/distinfo b/databases/foundationdb/distinfo >deleted file mode 100644 >index 8315c830c..000000000 >--- a/databases/foundationdb/distinfo >+++ /dev/null >@@ -1,3 +0,0 @@ >-TIMESTAMP = 1679567621 >-SHA256 (apple-foundationdb-7.1.29_GH0.tar.gz) = ad608ddb781eea3ef4607ab9abb41282ca93383814d8149346bf3440cc9f46d5 >-SIZE (apple-foundationdb-7.1.29_GH0.tar.gz) = 11676677 >diff --git a/databases/foundationdb/files/patch-bindings_c_CMakeLists.txt b/databases/foundationdb/files/patch-bindings_c_CMakeLists.txt >deleted file mode 100644 >index 7c58fb132..000000000 >--- a/databases/foundationdb/files/patch-bindings_c_CMakeLists.txt >+++ /dev/null >@@ -1,11 +0,0 @@ >---- bindings/c/CMakeLists.txt.orig 2022-09-19 11:42:41 UTC >-+++ bindings/c/CMakeLists.txt >-@@ -78,7 +78,7 @@ endif() >- endif() >- >- # The tests don't build on windows >--if(NOT WIN32) >-+if(NOT WIN32 AND NOT CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") >- set(MAKO_SRCS >- test/mako/mako.c >- test/mako/mako.h >diff --git a/databases/foundationdb/files/patch-cmake_CompileBoost.cmake b/databases/foundationdb/files/patch-cmake_CompileBoost.cmake >deleted file mode 100644 >index c72e61078..000000000 >--- a/databases/foundationdb/files/patch-cmake_CompileBoost.cmake >+++ /dev/null >@@ -1,11 +0,0 @@ >---- cmake/CompileBoost.cmake.orig 2022-09-19 11:42:41 UTC >-+++ cmake/CompileBoost.cmake >-@@ -113,7 +113,7 @@ endif() >- return() >- endif() >- >--find_package(Boost 1.78.0 EXACT QUIET COMPONENTS context CONFIG PATHS ${BOOST_HINT_PATHS}) >-+find_package(Boost 1.78.0 COMPONENTS context CONFIG PATHS ${BOOST_HINT_PATHS}) >- set(FORCE_BOOST_BUILD OFF CACHE BOOL "Forces cmake to build boost and ignores any installed boost") >- >- if(Boost_FOUND AND NOT FORCE_BOOST_BUILD) >diff --git a/databases/foundationdb/files/patch-cmake_GetMsgpack.cmake b/databases/foundationdb/files/patch-cmake_GetMsgpack.cmake >deleted file mode 100644 >index a0bff5b82..000000000 >--- a/databases/foundationdb/files/patch-cmake_GetMsgpack.cmake >+++ /dev/null >@@ -1,24 +0,0 @@ >---- cmake/GetMsgpack.cmake.orig 2022-09-19 11:42:41 UTC >-+++ cmake/GetMsgpack.cmake >-@@ -1,20 +1,7 @@ >--find_package(msgpack 3.3.0 EXACT QUIET CONFIG) >-+find_package(msgpack-cxx REQUIRED QUIET CONFIG) >- >- add_library(msgpack INTERFACE) >- >- if(msgpack_FOUND) >- target_link_libraries(msgpack INTERFACE msgpackc-cxx) >--else() >-- include(ExternalProject) >-- ExternalProject_add(msgpackProject >-- URL "https://github.com/msgpack/msgpack-c/releases/download/cpp-3.3.0/msgpack-3.3.0.tar.gz" >-- URL_HASH SHA256=6e114d12a5ddb8cb11f669f83f32246e484a8addd0ce93f274996f1941c1f07b >-- CONFIGURE_COMMAND "" >-- BUILD_COMMAND "" >-- INSTALL_COMMAND "" >-- ) >-- >-- ExternalProject_Get_property(msgpackProject SOURCE_DIR) >-- target_include_directories(msgpack SYSTEM INTERFACE "${SOURCE_DIR}/include") >-- add_dependencies(msgpack msgpackProject) >- endif() >diff --git a/databases/foundationdb/files/patch-fdbmonitor_CMakeLists.txt b/databases/foundationdb/files/patch-fdbmonitor_CMakeLists.txt >deleted file mode 100644 >index 2b5912204..000000000 >--- a/databases/foundationdb/files/patch-fdbmonitor_CMakeLists.txt >+++ /dev/null >@@ -1,11 +0,0 @@ >---- fdbmonitor/CMakeLists.txt.orig 2022-09-19 11:42:41 UTC >-+++ fdbmonitor/CMakeLists.txt >-@@ -56,8 +56,3 @@ endif() >- configure_file(${CMAKE_SOURCE_DIR}/contrib/generate_profile.sh >- ${CMAKE_BINARY_DIR}/contrib/generate_profile.sh) >- endif() >-- >--add_custom_target(generate_profile >-- COMMAND ${CMAKE_BINARY_DIR}/contrib/generate_profile.sh ${CMAKE_BINARY_DIR}) >-- >--add_dependencies(generate_profile fdbmonitor fdbserver mako fdbcli) >diff --git a/databases/foundationdb/files/patch-fdbserver_FDBExecHelper.actor.cpp b/databases/foundationdb/files/patch-fdbserver_FDBExecHelper.actor.cpp >deleted file mode 100644 >index 4950f7fd5..000000000 >--- a/databases/foundationdb/files/patch-fdbserver_FDBExecHelper.actor.cpp >+++ /dev/null >@@ -1,32 +0,0 @@ >---- fdbserver/FDBExecHelper.actor.cpp.orig 2022-09-19 11:42:41 UTC >-+++ fdbserver/FDBExecHelper.actor.cpp >-@@ -18,6 +18,14 @@ >- * limitations under the License. >- */ >- >-+#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__INTEL_COMPILER) >-+#define BOOST_SYSTEM_NO_LIB >-+#define BOOST_DATE_TIME_NO_LIB >-+#define BOOST_REGEX_NO_LIB >-+#include <boost/process.hpp> >-+#endif >-+#include <boost/algorithm/string.hpp> >-+ >- #include "flow/TLSConfig.actor.h" >- #include "flow/Trace.h" >- #include "flow/Platform.h" >-@@ -33,14 +41,6 @@ >- #include "fdbserver/FDBExecHelper.actor.h" >- #include "fdbserver/Knobs.h" >- #include "fdbserver/RemoteIKeyValueStore.actor.h" >-- >--#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__INTEL_COMPILER) >--#define BOOST_SYSTEM_NO_LIB >--#define BOOST_DATE_TIME_NO_LIB >--#define BOOST_REGEX_NO_LIB >--#include <boost/process.hpp> >--#endif >--#include <boost/algorithm/string.hpp> >- >- #include "flow/actorcompiler.h" // This must be the last #include. >- >diff --git a/databases/foundationdb/files/patch-fdbserver_fdbserver.actor.cpp b/databases/foundationdb/files/patch-fdbserver_fdbserver.actor.cpp >deleted file mode 100644 >index 1720825f3..000000000 >--- a/databases/foundationdb/files/patch-fdbserver_fdbserver.actor.cpp >+++ /dev/null >@@ -1,30 +0,0 @@ >---- fdbserver/fdbserver.actor.cpp.orig 2022-09-19 11:42:41 UTC >-+++ fdbserver/fdbserver.actor.cpp >-@@ -84,7 +84,11 @@ >- #if defined(__linux__) || defined(__FreeBSD__) >- #include <execinfo.h> >- #include <signal.h> >-+#if defined(__linux__) >- #include <sys/prctl.h> >-+#elif defined(__FreeBSD__) >-+#include <sys/procctl.h> >-+#endif >- #ifdef ALLOC_INSTRUMENTATION >- #include <cxxabi.h> >- #endif >-@@ -2225,9 +2229,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 >- >diff --git a/databases/foundationdb/pkg-descr b/databases/foundationdb/pkg-descr >deleted file mode 100644 >index d29a63355..000000000 >--- a/databases/foundationdb/pkg-descr >+++ /dev/null >@@ -1,14 +0,0 @@ >-A massively distributed, transactional key-value store, extensible by >-design, with unparalleled reliability and performance. >- >-FoundationDB is multi-model, meaning you can store many types of data in a >-single database. All data is safely stored, distributed, and replicated >-in the Key-Value Store component. It is easy to install, grow, and >-manage, with a distributed architecture that gracefully scales out, and >-handles faults while acting like a single ACID database. FoundationDB >-provides amazing performance on commodity hardware, allowing you to >-support very heavy loads at low cost. It has been running in production >-for years and been hardened with lessons learned in some of the world's >-largest database deployments. Backing FoundationDB up is an unmatched >-testing system based on a deterministic simulation engine that ensures >-optimal reliability of operations. >diff --git a/databases/foundationdb/pkg-plist b/databases/foundationdb/pkg-plist >deleted file mode 100644 >index d8047da25..000000000 >--- a/databases/foundationdb/pkg-plist >+++ /dev/null >@@ -1,28 +0,0 @@ >-@dir(%%FOUNDATIONDB_USER%%,%%FOUNDATIONDB_GROUP%%,755) %%FOUNDATIONDB_ETCDIR%% >-@dir(%%FOUNDATIONDB_USER%%,%%FOUNDATIONDB_GROUP%%,755) %%FOUNDATIONDB_DBDIR%% >-@dir(%%FOUNDATIONDB_USER%%,%%FOUNDATIONDB_GROUP%%,755) %%FOUNDATIONDB_LOGDIR%% >-@sample %%FOUNDATIONDB_ETCDIR%%/foundationdb.conf.sample >-bin/actor_flamegraph >-bin/backup_agent >-bin/dr_agent >-bin/fastrestore_agent >-bin/fdb_flow_tester >-bin/fdbbackup >-bin/fdbcli >-bin/fdbconvert >-bin/fdbdecode >-bin/fdbmonitor >-bin/fdbr >-bin/fdbrestore >-bin/fdbserver >-bin/tutorial >-include/foundationdb/fdb.options >-include/foundationdb/fdb_c.h >-include/foundationdb/fdb_c_types.h >-include/foundationdb/fdb_c_options.g.h >-lib/libfdb_c.so >-lib/libfdb_flow.a >-lib/libfdb_sqlite.a >-lib/libfdbclient.a >-lib/libfdbrpc.a >-lib/libflow.a >diff --git a/databases/foundationdb73-client/Makefile b/databases/foundationdb73-client/Makefile >new file mode 100644 >index 000000000..c6fa10574 >--- /dev/null >+++ b/databases/foundationdb73-client/Makefile >@@ -0,0 +1,11 @@ >+PORTNAME= foundationdb >+PORTREVISION= 0 >+ >+COMMENT= FoundationDB client >+ >+MASTERDIR= ${.CURDIR}/../foundationdb73-server >+ >+CLIENT_ONLY= yes >+COMPONENT= client >+ >+.include "${MASTERDIR}/Makefile" >diff --git a/databases/foundationdb73-server/Makefile b/databases/foundationdb73-server/Makefile >new file mode 100644 >index 000000000..cdd124344 >--- /dev/null >+++ b/databases/foundationdb73-server/Makefile >@@ -0,0 +1,106 @@ >+PORTNAME?= foundationdb >+DISTVERSION= 7.3.33 >+PORTREVISION?= 0 >+CATEGORIES?= databases >+PKGNAMESUFFIX?= ${DISTVERSION:C/([0-9]+)\.([0-9]+).*/\1\2/}-${COMPONENT} >+ >+MAINTAINER?= dmitry.wagin@ya.ru >+COMMENT?= FoundationDB is a distributed database designed to handle large volumes of structured data across clusters of commodity servers >+WWW= https://www.foundationdb.org/ >+ >+LICENSE= APACHE20 >+LICENSE_FILE= ${WRKSRC}/LICENSE >+ >+BROKEN_aarch64= invalid asm rdtsc >+ONLY_FOR_ARCHS= aarch64 amd64 >+ONLY_FOR_ARCHS_REASON= not yet ported to anything else >+ >+BUILD_DEPENDS= bash:shells/bash \ >+ msgpack-cxx>0:devel/msgpack-cxx \ >+ toml11>0:devel/toml11 >+ >+LIB_DEPENDS= libboost_system.so:devel/boost-libs \ >+ libeio.so:devel/libeio \ >+ libfmt.so:devel/libfmt >+ >+USES= cmake compiler:c++20-lang mono:build python:build shebangfix \ >+ ssl >+USE_GITHUB= yes >+GH_ACCOUNT= apple >+GH_PROJECT= foundationdb >+USE_LDCONFIG= yes >+ >+.if !defined(CLIENT_ONLY) >+SERVER_ONLY= yes >+COMPONENT= server >+USE_RC_SUBR= foundationdb >+DEPENDS+= fdbcli:databases/${PORTNAME}${DISTVERSION:C/([0-9]+)\.([0-9]+).*/\1\2/}-client >+SUB_FILES+= foundationdb.conf >+.endif >+ >+SHEBANG_FILES= bindings/c/generate_asm.py >+ >+CMAKE_ARGS= -DCURRENT_GIT_VERSION_WNL=3520bfba261cc146e9ba6b60dbeae910aebaa551 \ >+ -DOPENSSL_ROOT_DIR=${OPENSSLLIB} >+CMAKE_OFF= BUILD_DOCUMENTATION BUILD_GO_BINDING BUILD_JAVA_BINDING \ >+ BUILD_PYTHON_BINDING BUILD_RUBY_BINDING DISABLE_TLS \ >+ SSD_ROCKSDB_EXPERIMENTAL USE_DTRACE USE_JEMALLOC >+ >+MAKE_ENV= MONO_REGISTRY_PATH=/tmp/registry >+ >+CONFLICTS+= ${PORTNAME}*-${COMPONENT}* >+ >+SUB_LIST= ${SUB_FDB} >+ >+USERS= ${FOUNDATIONDB_USER} >+GROUPS= ${FOUNDATIONDB_GROUP} >+ >+PLIST= ${PKGDIR}/pkg-plist-${COMPONENT} >+PLIST_SUB= ${SUB_FDB} >+ >+FOUNDATIONDB_USER?= foundationdb >+FOUNDATIONDB_GROUP?= foundationdb >+FOUNDATIONDB_DBDIR?= /var/db/foundationdb >+FOUNDATIONDB_LOGDIR?= /var/log/foundationdb >+ >+SUB_FDB= FOUNDATIONDB_USER=${FOUNDATIONDB_USER} \ >+ FOUNDATIONDB_GROUP=${FOUNDATIONDB_GROUP} \ >+ FOUNDATIONDB_DBDIR=${FOUNDATIONDB_DBDIR} \ >+ FOUNDATIONDB_LOGDIR=${FOUNDATIONDB_LOGDIR} >+ >+do-install: >+ @${MKDIR} ${STAGEDIR}${ETCDIR} >+.if defined(SERVER_ONLY) >+ ${MKDIR} ${STAGEDIR}${FOUNDATIONDB_DBDIR} >+ ${MKDIR} ${STAGEDIR}${FOUNDATIONDB_LOGDIR} >+ ${INSTALL_DATA} ${WRKDIR}/foundationdb.conf ${STAGEDIR}${ETCDIR}/foundationdb.conf.sample >+. for f in fdbserver fdbmonitor >+ ${INSTALL_PROGRAM} ${WRKDIR}/.build/bin/${f} ${STAGEDIR}${PREFIX}/sbin/ >+. endfor >+.endif # SERVER_ONLY >+.if defined(CLIENT_ONLY) >+ ${MKDIR} ${STAGEDIR}${PREFIX}/include/foundationdb >+ ${MKDIR} ${STAGEDIR}${PREFIX}/lib/foundationdb/backup_agent >+ ${INSTALL_PROGRAM} ${WRKDIR}/.build/bin/fdbcli ${STAGEDIR}${PREFIX}/bin/ >+. for l in libfdb_c.so libfdb_c_shim.so >+ ${INSTALL_LIB} ${WRKDIR}/.build/lib/${l} ${STAGEDIR}/${PREFIX}/lib/ >+. endfor >+. for i in fdb_c.h fdb_c_internal.h fdb_c_shim.h fdb_c_types.h >+ ${INSTALL_DATA} ${WRKSRC}/bindings/c/foundationdb/${i} \ >+ ${STAGEDIR}/${PREFIX}/include/foundationdb/ >+. endfor >+. for i in fdb_c_apiversion.g.h fdb_c_options.g.h >+ ${INSTALL_DATA} ${WRKDIR}/.build/bindings/c/foundationdb/${i} \ >+ ${STAGEDIR}/${PREFIX}/include/foundationdb/ >+. endfor >+ ${INSTALL_DATA} ${WRKSRC}/fdbclient/vexillographer/fdb.options \ >+ ${STAGEDIR}/${PREFIX}/include/foundationdb/ >+ ${INSTALL_PROGRAM} ${WRKDIR}/.build/bin/fdbbackup \ >+ ${STAGEDIR}${PREFIX}/lib/foundationdb/backup_agent/backup_agent >+. for s in fdbbackup fdbrestore fdbdr dr_agent >+ ${RLN} ${STAGEDIR}${PREFIX}/lib/foundationdb/backup_agent/backup_agent \ >+ ${STAGEDIR}${PREFIX}/bin/${s} >+. endfor >+.endif # CLIENT_ONLY >+ >+.include <bsd.port.mk> >diff --git a/databases/foundationdb73-server/distinfo b/databases/foundationdb73-server/distinfo >new file mode 100644 >index 000000000..838c5c80d >--- /dev/null >+++ b/databases/foundationdb73-server/distinfo >@@ -0,0 +1,3 @@ >+TIMESTAMP = 1708175636 >+SHA256 (apple-foundationdb-7.3.33_GH0.tar.gz) = a94ecea41ce94cbbfa281966c2c40017be0e6284808fa9cb570f72bfa6b813c3 >+SIZE (apple-foundationdb-7.3.33_GH0.tar.gz) = 13079695 >diff --git a/databases/foundationdb/files/foundationdb.conf.in b/databases/foundationdb73-server/files/foundationdb.conf.in >similarity index 88% >rename from databases/foundationdb/files/foundationdb.conf.in >rename to databases/foundationdb73-server/files/foundationdb.conf.in >index 6fae1a863..1df7fe1cf 100644 >--- a/databases/foundationdb/files/foundationdb.conf.in >+++ b/databases/foundationdb73-server/files/foundationdb.conf.in >@@ -14,13 +14,13 @@ restart-delay = 60 > # initial-restart-delay = 0 > # restart-backoff = 60 > # restart-delay-reset-interval = 60 >-cluster-file = %%FOUNDATIONDB_ETCDIR%%/fdb.cluster >+cluster-file = %%ETCDIR%%/fdb.cluster > # delete-envvars = > # kill-on-configuration-change = true > > ## Default parameters for individual fdbserver processes > [fdbserver] >-command = %%PREFIX%%/bin/fdbserver >+command = %%PREFIX%%/sbin/fdbserver > public-address = auto:$ID > listen-address = public > datadir = %%FOUNDATIONDB_DBDIR%%/data/$ID >@@ -41,7 +41,7 @@ logdir = %%FOUNDATIONDB_LOGDIR%% > [fdbserver.4500] > > [backup_agent] >-command = %%PREFIX%%/bin/backup_agent >+command = %%PREFIX%%/lib/foundationdb/backup_agent/backup_agent > logdir = %%FOUNDATIONDB_LOGDIR%% > > [backup_agent.1] >diff --git a/databases/foundationdb/files/foundationdb.in b/databases/foundationdb73-server/files/foundationdb.in >similarity index 96% >rename from databases/foundationdb/files/foundationdb.in >rename to databases/foundationdb73-server/files/foundationdb.in >index 84e0a036a..719582a23 100644 >--- a/databases/foundationdb/files/foundationdb.in >+++ b/databases/foundationdb73-server/files/foundationdb.in >@@ -29,7 +29,7 @@ load_rc_config "$name" > start_precmd="foundationdb_start_precmd" > > pidfile="/var/run/fdbmonitor.pid" >-command=%%PREFIX%%/bin/fdbmonitor >+command=%%PREFIX%%/sbin/fdbmonitor > command_args="--conffile ${foundationdb_config} --lockfile ${pidfile} --daemonize" > > foundationdb_start_precmd() >diff --git a/databases/foundationdb/files/patch-CMakeLists.txt b/databases/foundationdb73-server/files/patch-CMakeLists.txt >similarity index 51% >rename from databases/foundationdb/files/patch-CMakeLists.txt >rename to databases/foundationdb73-server/files/patch-CMakeLists.txt >index 78d6244a9..ca88d0ad7 100644 >--- a/databases/foundationdb/files/patch-CMakeLists.txt >+++ b/databases/foundationdb73-server/files/patch-CMakeLists.txt >@@ -1,15 +1,12 @@ >---- CMakeLists.txt.orig 2022-09-19 11:42:41 UTC >+--- CMakeLists.txt.orig 2024-01-09 21:06:41 UTC > +++ CMakeLists.txt >-@@ -183,9 +183,13 @@ add_subdirectory(fdbbackup) >- add_subdirectory(fdbservice) >+@@ -193,8 +193,10 @@ else() > endif() > add_subdirectory(fdbbackup) >--add_subdirectory(contrib) >-+if(WITH_CONTRIB) >-+ add_subdirectory(contrib) >-+endif() >- add_subdirectory(tests) >+ add_subdirectory(metacluster) >+-add_subdirectory(tests) > -add_subdirectory(flowbench EXCLUDE_FROM_ALL) >++#add_subdirectory(tests) > +if(WITH_FLOWBENCH) > + add_subdirectory(flowbench EXCLUDE_FROM_ALL) > +endif() >diff --git a/databases/foundationdb73-server/files/patch-bindings_CMakeLists.txt b/databases/foundationdb73-server/files/patch-bindings_CMakeLists.txt >new file mode 100644 >index 000000000..3ca56cdf6 >--- /dev/null >+++ b/databases/foundationdb73-server/files/patch-bindings_CMakeLists.txt >@@ -0,0 +1,11 @@ >+--- bindings/CMakeLists.txt.orig 2024-01-09 21:06:41 UTC >++++ bindings/CMakeLists.txt >+@@ -15,7 +15,7 @@ endif() >+ if(WITH_RUBY_BINDING) >+ add_subdirectory(ruby) >+ endif() >+-if(NOT WIN32 AND NOT OPEN_FOR_IDE) >++if(FALSE) >+ package_bindingtester() >+ package_bindingtester2() >+ endif() >diff --git a/databases/foundationdb73-server/files/patch-bindings_c_CMakeLists.txt b/databases/foundationdb73-server/files/patch-bindings_c_CMakeLists.txt >new file mode 100644 >index 000000000..abf281180 >--- /dev/null >+++ b/databases/foundationdb73-server/files/patch-bindings_c_CMakeLists.txt >@@ -0,0 +1,64 @@ >+--- bindings/c/CMakeLists.txt.orig 2024-01-09 21:06:41 UTC >++++ bindings/c/CMakeLists.txt >+@@ -100,7 +100,7 @@ if(WIN32) >+ endif() >+ >+ # The tests don't build on windows >+-if(NOT WIN32) >++if(FALSE) >+ set(MAKO_SRCS >+ test/mako/admin_server.hpp >+ test/mako/admin_server.cpp >+@@ -212,7 +212,7 @@ if(NOT WIN32) >+ >+ target_include_directories(fdb_c_api_tester_impl PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}/foundationdb/ ${CMAKE_SOURCE_DIR}/flow/include ${CMAKE_BINARY_DIR}/flow/include) >+ target_link_libraries(fdb_c_api_tester_impl PRIVATE fdb_cpp toml11_target Threads::Threads fmt::fmt boost_target) >+- if(NOT APPLE) >++ if(NOT CMAKE_CXX_COMPILER_ID MATCHES "Clang") >+ target_link_libraries(fdb_c_api_tester_impl PRIVATE stdc++fs) >+ endif() >+ target_link_libraries(fdb_c_api_tester_impl PRIVATE SimpleOpt) >+@@ -439,6 +439,11 @@ elseif(NOT WIN32 AND NOT APPLE) # Linux Only >+ ${SHIM_LIB_OUTPUT_DIR}/libfdb_c.so.tramp.S) >+ >+ set(IMPLIBSO_SRC_DIR ${CMAKE_SOURCE_DIR}/contrib/Implib.so) >++ >++ if(CMAKE_SYSTEM_PROCESSOR STREQUAL "amd64") >++ set(CMAKE_SYSTEM_PROCESSOR "x86_64") >++ endif() >++ >+ set(IMPLIBSO_SRC >+ ${IMPLIBSO_SRC_DIR}/implib-gen.py >+ ${IMPLIBSO_SRC_DIR}/arch/common/init.cpp.tpl >+@@ -464,31 +469,6 @@ elseif(NOT WIN32 AND NOT APPLE) # Linux Only >+ $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}> >+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> >+ $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/foundationdb>) >+- >+- add_executable(fdb_c_shim_unit_tests) >+- target_link_libraries(fdb_c_shim_unit_tests PRIVATE fdb_c_shim fdb_c_unit_tests_impl) >+- >+- add_executable(fdb_c_shim_api_tester) >+- target_link_libraries(fdb_c_shim_api_tester PRIVATE fdb_c_shim fdb_c_api_tester_impl) >+- >+- add_executable(fdb_c_shim_lib_tester test/shim_lib_tester.cpp) >+- target_link_libraries(fdb_c_shim_lib_tester PRIVATE fdb_c_shim SimpleOpt fdb_cpp Threads::Threads) >+- target_include_directories(fdb_c_shim_lib_tester PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}/foundationdb/ ${CMAKE_SOURCE_DIR}/flow/include) >+- >+- set(SHIM_LIB_TEST_EXTRA_OPTIONS "") >+- if(NOT CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" OR USE_SANITIZER) >+- list(APPEND SHIM_LIB_TEST_EXTRA_OPTIONS --disable-prev-version-tests) >+- endif() >+- >+- add_python_venv_test(NAME fdb_c_shim_library_tests >+- COMMAND python ${CMAKE_CURRENT_SOURCE_DIR}/test/fdb_c_shim_tests.py >+- --build-dir ${CMAKE_BINARY_DIR} >+- --unit-tests-bin $<TARGET_FILE:fdb_c_shim_unit_tests> >+- --api-tester-bin $<TARGET_FILE:fdb_c_shim_api_tester> >+- --shim-lib-tester-bin $<TARGET_FILE:fdb_c_shim_lib_tester> >+- --api-test-dir ${CMAKE_SOURCE_DIR}/bindings/c/test/apitester/tests >+- ${SHIM_LIB_TEST_EXTRA_OPTIONS} >+- ) >+ >+ endif() # End Linux only >+ >diff --git a/databases/foundationdb73-server/files/patch-bindings_c_test_apitester_TesterWorkload.cpp b/databases/foundationdb73-server/files/patch-bindings_c_test_apitester_TesterWorkload.cpp >new file mode 100644 >index 000000000..0e58990da >--- /dev/null >+++ b/databases/foundationdb73-server/files/patch-bindings_c_test_apitester_TesterWorkload.cpp >@@ -0,0 +1,11 @@ >+--- bindings/c/test/apitester/TesterWorkload.cpp.orig 2023-11-07 15:13:56 UTC >++++ bindings/c/test/apitester/TesterWorkload.cpp >+@@ -172,7 +172,7 @@ void WorkloadBase::error(const std::string& msg) { >+ fmt::print(stderr, "[{}] ERROR: {}\n", workloadId, msg); >+ numErrors++; >+ if (numErrors > maxErrors && !failed) { >+- fmt::print(stderr, "[{}] ERROR: Stopping workload after {} errors\n", workloadId, numErrors); >++ fmt::print(stderr, "[{}] ERROR: Stopping workload after {} errors\n", workloadId, numErrors.load()); >+ failed = true; >+ } >+ } >diff --git a/databases/foundationdb73-server/files/patch-bindings_c_test_mako_mako.cpp b/databases/foundationdb73-server/files/patch-bindings_c_test_mako_mako.cpp >new file mode 100644 >index 000000000..fb8018344 >--- /dev/null >+++ b/databases/foundationdb73-server/files/patch-bindings_c_test_mako_mako.cpp >@@ -0,0 +1,11 @@ >+--- bindings/c/test/mako/mako.cpp.orig 2023-11-07 15:13:56 UTC >++++ bindings/c/test/mako/mako.cpp >+@@ -2378,7 +2378,7 @@ int statsProcessMain(Arguments const& args, >+ fmt::fprintf(fp, "\"txntrace\": %d,", args.txntrace); >+ fmt::fprintf(fp, "\"txntagging\": %d,", args.txntagging); >+ fmt::fprintf(fp, "\"txntagging_prefix\": \"%s\",", args.txntagging_prefix); >+- fmt::fprintf(fp, "\"streaming_mode\": %d,", args.streaming_mode); >++ fmt::fprintf(fp, "\"streaming_mode\": %d,", static_cast<int>(args.streaming_mode)); >+ fmt::fprintf(fp, "\"disable_ryw\": %d,", args.disable_ryw); >+ fmt::fprintf(fp, "\"transaction_timeout_db\": %d,", args.transaction_timeout_db); >+ fmt::fprintf(fp, "\"transaction_timeout_tx\": %d,", args.transaction_timeout_tx); >diff --git a/databases/foundationdb73-server/files/patch-cmake_CompileBoost.cmake b/databases/foundationdb73-server/files/patch-cmake_CompileBoost.cmake >new file mode 100644 >index 000000000..4da2a7dcc >--- /dev/null >+++ b/databases/foundationdb73-server/files/patch-cmake_CompileBoost.cmake >@@ -0,0 +1,20 @@ >+--- cmake/CompileBoost.cmake.orig 2023-06-01 02:57:35 UTC >++++ cmake/CompileBoost.cmake >+@@ -123,7 +123,7 @@ if(USE_SANITIZER) >+ endif() >+ >+ # since boost 1.72 boost installs cmake configs. We will enforce config mode >+-set(Boost_USE_STATIC_LIBS ON) >++set(Boost_USE_STATIC_LIBS OFF) >+ >+ # Clang and Gcc will have different name mangling to std::call_once, etc. >+ if (UNIX AND CMAKE_CXX_COMPILER_ID MATCHES "Clang$") >+@@ -151,7 +151,7 @@ if(WIN32) >+ return() >+ endif() >+ >+-find_package(Boost 1.78.0 EXACT QUIET COMPONENTS context filesystem iostreams serialization system CONFIG PATHS ${BOOST_HINT_PATHS}) >++find_package(Boost 1.78.0 COMPONENTS context filesystem iostreams serialization system CONFIG PATHS ${BOOST_HINT_PATHS}) >+ set(FORCE_BOOST_BUILD OFF CACHE BOOL "Forces cmake to build boost and ignores any installed boost") >+ >+ # The precompiled boost silently broke in CI. While investigating, I considered extending >diff --git a/databases/foundationdb/files/patch-cmake_FDBComponents.cmake b/databases/foundationdb73-server/files/patch-cmake_FDBComponents.cmake >similarity index 67% >rename from databases/foundationdb/files/patch-cmake_FDBComponents.cmake >rename to databases/foundationdb73-server/files/patch-cmake_FDBComponents.cmake >index 815778f2d..c76c27af7 100644 >--- a/databases/foundationdb/files/patch-cmake_FDBComponents.cmake >+++ b/databases/foundationdb73-server/files/patch-cmake_FDBComponents.cmake >@@ -1,33 +1,31 @@ >---- cmake/FDBComponents.cmake.orig 2023-03-14 19:59:33 UTC >+--- cmake/FDBComponents.cmake.orig 2024-01-09 21:06:41 UTC > +++ cmake/FDBComponents.cmake >-@@ -24,7 +24,7 @@ set(DISABLE_TLS OFF CACHE BOOL "Don't try to find Open >- if(DISABLE_TLS) >- set(WITH_TLS OFF) >- else() >-- set(OPENSSL_USE_STATIC_LIBS TRUE) >-+ set(OPENSSL_USE_STATIC_LIBS FALSE) >- if(WIN32) >- set(OPENSSL_MSVC_STATIC_RT ON) >- endif() >-@@ -201,6 +201,13 @@ else() >+@@ -24,7 +24,7 @@ set(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR}) >+ # Statically link OpenSSL to FDB, see >+ # https://cmake.org/cmake/help/v3.24/module/FindOpenSSL.html >+ # Without the flags, OpenSSL is dynamically linked. >+-set(OPENSSL_USE_STATIC_LIBS TRUE) >++set(OPENSSL_USE_STATIC_LIBS FALSE) >+ if (WIN32) >+ set(OPENSSL_MSVC_STATIC_RT ON) >+ endif() >+@@ -193,6 +193,12 @@ else() > endif() > > ################################################################################ > +# misc optional components > +################################################################################ > + >-+set(WITH_CONTRIB ON) > +set(WITH_FLOWBENCH OFF) > + > +################################################################################ > # Coroutine implementation > ################################################################################ > >-@@ -245,6 +252,8 @@ function(print_components) >+@@ -236,6 +242,7 @@ function(print_components) > message(STATUS "Build Documentation (make html): ${WITH_DOCUMENTATION}") > message(STATUS "Build Python sdist (make package): ${WITH_PYTHON_BINDING}") > message(STATUS "Configure CTest (depends on Python): ${WITH_PYTHON}") >-+ message(STATUS "Build contrib: ${WITH_CONTRIB}") > + message(STATUS "Build with FlowBench: ${WITH_FLOWBENCH}") > message(STATUS "Build with RocksDB: ${WITH_ROCKSDB_EXPERIMENTAL}") > message(STATUS "Build with AWS SDK: ${WITH_AWS_BACKUP}") >diff --git a/databases/foundationdb73-server/files/patch-cmake_GetMsgpack.cmake b/databases/foundationdb73-server/files/patch-cmake_GetMsgpack.cmake >new file mode 100644 >index 000000000..adfc467bd >--- /dev/null >+++ b/databases/foundationdb73-server/files/patch-cmake_GetMsgpack.cmake >@@ -0,0 +1,17 @@ >+--- cmake/GetMsgpack.cmake.orig 2023-09-26 04:25:05 UTC >++++ cmake/GetMsgpack.cmake >+@@ -1,9 +1,13 @@ >+ find_package(msgpack 3.3.0 EXACT QUIET CONFIG) >++find_package(msgpackc-cxx 4.0.0...<6 QUIET CONFIG) >++find_package(msgpack-cxx 6 QUIET CONFIG) >+ >+ add_library(msgpack INTERFACE) >+ >+-if(msgpack_FOUND) >++if(msgpack_FOUND OR msgpackc-cxx_FOUND) >+ target_link_libraries(msgpack INTERFACE msgpackc-cxx) >++elseif(msgpack-cxx_FOUND) >++ target_link_libraries(msgpack INTERFACE msgpack-cxx) >+ else() >+ include(ExternalProject) >+ ExternalProject_add(msgpackProject >diff --git a/databases/foundationdb73-server/files/patch-fdbcli_CMakeLists.txt b/databases/foundationdb73-server/files/patch-fdbcli_CMakeLists.txt >new file mode 100644 >index 000000000..7289dd326 >--- /dev/null >+++ b/databases/foundationdb73-server/files/patch-fdbcli_CMakeLists.txt >@@ -0,0 +1,11 @@ >+--- fdbcli/CMakeLists.txt.orig 2024-01-09 21:06:41 UTC >++++ fdbcli/CMakeLists.txt >+@@ -25,7 +25,7 @@ if(NOT OPEN_FOR_IDE) >+ endif() >+ endif() >+ >+-if (NOT WIN32 AND NOT OPEN_FOR_IDE) >++if(FALSE) >+ add_dependencies(fdbcli external_client) >+ >+ add_fdbclient_test( >diff --git a/databases/foundationdb73-server/files/patch-fdbclient_SpecialKeySpace.actor.cpp b/databases/foundationdb73-server/files/patch-fdbclient_SpecialKeySpace.actor.cpp >new file mode 100644 >index 000000000..f86c7a1f6 >--- /dev/null >+++ b/databases/foundationdb73-server/files/patch-fdbclient_SpecialKeySpace.actor.cpp >@@ -0,0 +1,11 @@ >+--- fdbclient/SpecialKeySpace.actor.cpp.orig 2023-11-07 15:13:56 UTC >++++ fdbclient/SpecialKeySpace.actor.cpp >+@@ -2996,7 +2996,7 @@ ACTOR Future<Void> validateSpecialSubrangeRead(ReadYou >+ // Test >+ RangeResult testResult = wait(ryw->getRange(testBegin, testEnd, limits, Snapshot::True, reverse)); >+ if (testResult != expectedResult) { >+- fmt::print("Reverse: {}\n", reverse); >++ fmt::print("Reverse: {}\n", static_cast<bool>(reverse)); >+ fmt::print("Original range: [{}, {})\n", begin.toString(), end.toString()); >+ fmt::print("Original result:\n"); >+ for (const auto& kr : result) { >diff --git a/databases/foundationdb73-server/files/patch-fdbmonitor_CMakeLists.txt b/databases/foundationdb73-server/files/patch-fdbmonitor_CMakeLists.txt >new file mode 100644 >index 000000000..032c67f69 >--- /dev/null >+++ b/databases/foundationdb73-server/files/patch-fdbmonitor_CMakeLists.txt >@@ -0,0 +1,8 @@ >+--- fdbmonitor/CMakeLists.txt.orig 2024-01-09 21:06:41 UTC >++++ fdbmonitor/CMakeLists.txt >+@@ -62,4 +62,4 @@ endif() >+ add_custom_target(generate_profile >+ COMMAND ${CMAKE_BINARY_DIR}/contrib/generate_profile.sh ${CMAKE_BINARY_DIR}) >+ >+-add_dependencies(generate_profile fdbmonitor fdbserver mako fdbcli) >++add_dependencies(generate_profile fdbmonitor fdbserver fdbcli) >diff --git a/databases/foundationdb/files/patch-fdbmonitor_fdbmonitor.cpp b/databases/foundationdb73-server/files/patch-fdbmonitor_fdbmonitor.cpp >similarity index 78% >rename from databases/foundationdb/files/patch-fdbmonitor_fdbmonitor.cpp >rename to databases/foundationdb73-server/files/patch-fdbmonitor_fdbmonitor.cpp >index 862461539..b4f4f49d5 100644 >--- a/databases/foundationdb/files/patch-fdbmonitor_fdbmonitor.cpp >+++ b/databases/foundationdb73-server/files/patch-fdbmonitor_fdbmonitor.cpp >@@ -1,26 +1,27 @@ >---- fdbmonitor/fdbmonitor.cpp.orig 2022-09-19 11:42:41 UTC >+--- fdbmonitor/fdbmonitor.cpp.orig 2024-01-09 21:06:41 UTC > +++ fdbmonitor/fdbmonitor.cpp > @@ -27,6 +27,8 @@ > > #ifdef __linux__ > #include <sys/prctl.h> > +#elif defined(__FreeBSD__) >-+#include <sys/procctl.h> >++#include<sys/procctl.h> > #endif > > #include <sys/wait.h> >-@@ -751,6 +753,10 @@ void start_process(Command* cmd, ProcessID id, uid_t u >+@@ -758,7 +760,10 @@ void start_process(Command* cmd, ProcessID id, uid_t u > signal(SIGHUP, SIG_DFL); > signal(SIGINT, SIG_DFL); > signal(SIGTERM, SIG_DFL); >+- > +#ifdef __linux__ > + signal(SIGCHLD, SIG_DFL); > +#endif > + sigprocmask(SIG_SETMASK, mask, nullptr); >- > /* All output in this block should be to stdout (for SevInfo messages) or stderr (for SevError messages) */ > /* Using log_msg() or log_err() from the child will cause the logs to be written incorrectly */ >-@@ -780,13 +786,15 @@ void start_process(Command* cmd, ProcessID id, uid_t u >+ dup2(cmd->pipes[0][1], fileno(stdout)); >+@@ -787,14 +792,16 @@ void start_process(Command* cmd, ProcessID id, uid_t u > } > > #ifdef __linux__ >@@ -31,12 +32,13 @@ > /* death of our parent raises SIGHUP */ > prctl(PR_SET_PDEATHSIG, SIGHUP); > if (getppid() == 1) /* parent already died before prctl */ >-+ exit(0); >+ exit(0); > +#elif defined(__FreeBSD__) > + /* death of our parent raises SIGHUP */ > + const int sig = SIGHUP; > + procctl(P_PID, 0, PROC_PDEATHSIG_CTL, (void*)&sig); > + if (getppid() == 1) /* parent already died before procctl */ >- exit(0); >++ exit(0); > #endif > >+ if (delay) >diff --git a/databases/foundationdb73-server/files/patch-fdbserver_BlobWorker.actor.cpp b/databases/foundationdb73-server/files/patch-fdbserver_BlobWorker.actor.cpp >new file mode 100644 >index 000000000..40a93448f >--- /dev/null >+++ b/databases/foundationdb73-server/files/patch-fdbserver_BlobWorker.actor.cpp >@@ -0,0 +1,33 @@ >+--- fdbserver/BlobWorker.actor.cpp.orig 2023-11-07 15:13:56 UTC >++++ fdbserver/BlobWorker.actor.cpp >+@@ -585,8 +585,8 @@ ACTOR Future<Void> updateGranuleSplitState(Transaction >+ fmt::print("Updating granule {0} split state from {1} {2} -> {3}\n", >+ currentGranuleID.toString(), >+ parentGranuleID.toString(), >+- currentState, >+- newState); >++ static_cast<int>(currentState), >++ static_cast<int>(newState)); >+ } >+ >+ Key myStateKey = blobGranuleSplitKeyFor(parentGranuleID, currentGranuleID); >+@@ -631,8 +631,8 @@ ACTOR Future<Void> updateGranuleSplitState(Transaction >+ fmt::print("Ignoring granule {0} split state from {1} {2} -> {3}\n", >+ currentGranuleID.toString(), >+ parentGranuleID.toString(), >+- currentState, >+- newState); >++ static_cast<int>(currentState), >++ static_cast<int>(newState)); >+ } >+ >+ return Void(); >+@@ -5422,7 +5422,7 @@ ACTOR Future<Void> blobWorkerCore(BlobWorkerInterface >+ assignReq.keyRange.end.printable(), >+ assignReq.managerEpoch, >+ assignReq.managerSeqno, >+- assignReq.type); >++ static_cast<int>(assignReq.type)); >+ } >+ >+ if (self->managerEpochOk(assignReq.managerEpoch)) { >diff --git a/databases/foundationdb73-server/files/patch-fdbserver_storageserver.actor.cpp b/databases/foundationdb73-server/files/patch-fdbserver_storageserver.actor.cpp >new file mode 100644 >index 000000000..2cc5fe768 >--- /dev/null >+++ b/databases/foundationdb73-server/files/patch-fdbserver_storageserver.actor.cpp >@@ -0,0 +1,20 @@ >+--- fdbserver/storageserver.actor.cpp.orig 2024-01-09 21:06:41 UTC >++++ fdbserver/storageserver.actor.cpp >+@@ -3615,7 +3615,7 @@ ACTOR Future<std::pair<ChangeFeedStreamReply, bool>> g >+ req.rangeID.printable().substr(0, 6), >+ req.id.toString().substr(0, 8), >+ foundVersion ? "key" : "version", >+- DEBUG_CF_MISSING_VERSION, >++ static_cast<int64_t>(DEBUG_CF_MISSING_VERSION), >+ req.range.begin.printable(), >+ req.range.end.printable(), >+ req.begin, >+@@ -3635,7 +3635,7 @@ ACTOR Future<std::pair<ChangeFeedStreamReply, bool>> g >+ data->thisServerID.toString().substr(0, 4), >+ req.rangeID.printable().substr(0, 6), >+ req.id.toString().substr(0, 8), >+- DEBUG_CF_MISSING_VERSION, >++ static_cast<int64_t>(DEBUG_CF_MISSING_VERSION), >+ req.range.begin.printable(), >+ req.range.end.printable(), >+ req.begin, >diff --git a/databases/foundationdb73-server/files/patch-flow_MkCertCli.cpp b/databases/foundationdb73-server/files/patch-flow_MkCertCli.cpp >new file mode 100644 >index 000000000..5bf38da98 >--- /dev/null >+++ b/databases/foundationdb73-server/files/patch-flow_MkCertCli.cpp >@@ -0,0 +1,11 @@ >+--- flow/MkCertCli.cpp.orig 2023-11-07 15:13:56 UTC >++++ flow/MkCertCli.cpp >+@@ -216,7 +216,7 @@ int main(int argc, char** argv) { >+ fmt::print(stderr, "ERROR: unknown option '{}'\n", args.OptionText()); >+ return FDB_EXIT_ERROR; >+ default: >+- fmt::print(stderr, "ERROR: unknown error {} with option '{}'\n", err, args.OptionText()); >++ fmt::print(stderr, "ERROR: unknown error {} with option '{}'\n", static_cast<int>(err), args.OptionText()); >+ return FDB_EXIT_ERROR; >+ } >+ } else { >diff --git a/databases/foundationdb73-server/files/patch-flow_Platform.actor.cpp b/databases/foundationdb73-server/files/patch-flow_Platform.actor.cpp >new file mode 100644 >index 000000000..fb60185e2 >--- /dev/null >+++ b/databases/foundationdb73-server/files/patch-flow_Platform.actor.cpp >@@ -0,0 +1,21 @@ >+--- flow/Platform.actor.cpp.orig 2023-09-26 04:25:05 UTC >++++ flow/Platform.actor.cpp >+@@ -1979,6 +1979,9 @@ std::string epochsToGMTString(double epochs) { >+ } >+ >+ std::vector<std::string> getEnvironmentKnobOptions() { >++#if defined(__FreeBSD__) >++ extern char** environ; >++#endif >+ constexpr const size_t ENVKNOB_PREFIX_LEN = sizeof(ENVIRONMENT_KNOB_OPTION_PREFIX) - 1; >+ std::vector<std::string> knobOptions; >+ #if defined(_WIN32) >+@@ -1994,7 +1997,7 @@ std::vector<std::string> getEnvironmentKnobOptions() { >+ } >+ #else >+ char** e = nullptr; >+-#ifdef __linux__ >++#if defined(__linux__) || defined(__FreeBSD__) >+ e = environ; >+ #elif defined(__APPLE__) >+ e = *_NSGetEnviron(); >diff --git a/databases/foundationdb73-server/pkg-descr b/databases/foundationdb73-server/pkg-descr >new file mode 100644 >index 000000000..a695625ee >--- /dev/null >+++ b/databases/foundationdb73-server/pkg-descr >@@ -0,0 +1,8 @@ >+FoundationDB is a distributed database designed to handle large volumes of >+structured data across clusters of commodity servers. It organizes data as an >+ordered key-value store and employs ACID transactions for all operations. It is >+especially well-suited for read/write workloads but also has excellent >+performance for write-intensive workloads. Users interact with the database >+using API language binding. >+ >+To learn more about FoundationDB, visit https://www.foundationdb.org >diff --git a/databases/foundationdb73-server/pkg-plist-client b/databases/foundationdb73-server/pkg-plist-client >new file mode 100644 >index 000000000..0d5cc12eb >--- /dev/null >+++ b/databases/foundationdb73-server/pkg-plist-client >@@ -0,0 +1,16 @@ >+bin/dr_agent >+bin/fdbbackup >+bin/fdbcli >+bin/fdbdr >+bin/fdbrestore >+include/foundationdb/fdb_c.h >+include/foundationdb/fdb_c_apiversion.g.h >+include/foundationdb/fdb_c_internal.h >+include/foundationdb/fdb_c_options.g.h >+include/foundationdb/fdb_c_shim.h >+include/foundationdb/fdb_c_types.h >+include/foundationdb/fdb.options >+lib/foundationdb/backup_agent/backup_agent >+lib/libfdb_c.so >+lib/libfdb_c_shim.so >+@dir(%%FOUNDATIONDB_USER%%,%%FOUNDATIONDB_GROUP%%,755) %%ETCDIR%% >diff --git a/databases/foundationdb73-server/pkg-plist-server b/databases/foundationdb73-server/pkg-plist-server >new file mode 100644 >index 000000000..665afe1db >--- /dev/null >+++ b/databases/foundationdb73-server/pkg-plist-server >@@ -0,0 +1,6 @@ >+sbin/fdbmonitor >+sbin/fdbserver >+@sample %%ETCDIR%%/foundationdb.conf.sample >+@dir(%%FOUNDATIONDB_USER%%,%%FOUNDATIONDB_GROUP%%,755) %%ETCDIR%% >+@dir(%%FOUNDATIONDB_USER%%,%%FOUNDATIONDB_GROUP%%,755) %%FOUNDATIONDB_DBDIR%% >+@dir(%%FOUNDATIONDB_USER%%,%%FOUNDATIONDB_GROUP%%,755) %%FOUNDATIONDB_LOGDIR%%
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
dmitry.wagin
:
maintainer-approval+
Actions:
View
|
Diff
Attachments on
bug 277262
:
248698
|
248742
|
249218
|
249612
|
249961