diff --git a/cmake/boost.1.88.named_proxy.hpp.patch b/cmake/boost.1.88.named_proxy.hpp.patch new file mode 100644 index 000000000..30db7ecc2 --- /dev/null +++ b/cmake/boost.1.88.named_proxy.hpp.patch @@ -0,0 +1,10 @@ ++++ a/boost/interprocess/detail/named_proxy.hpp 2025-04-14 16:24:12.018395298 +0000 ++++ b/boost/interprocess/detail/named_proxy.hpp 2025-04-14 16:24:12.018395298 +0000 +@@ -89,6 +89,7 @@ + } BOOST_INTERPROCESS_CATCH_END + } + ++ virtual ~CtorArgN() {} + private: + template + void construct(void *mem, true_, const index_tuple&) diff --git a/cmake/boost.cmake b/cmake/boost.cmake index eefb81389..3e5d68eb8 100644 --- a/cmake/boost.cmake +++ b/cmake/boost.cmake @@ -43,6 +43,8 @@ ExternalProject_Add( URL_HASH SHA256=3621533e820dcab1e8012afd583c0c73cf0f77694952b81352bf38c1488f9cb4 CONFIGURE_COMMAND ./bootstrap.sh UPDATE_COMMAND "" + PATCH_COMMAND ${CMAKE_COMMAND} -E chdir patch -p1 -i + ${CMAKE_SOURCE_DIR}/storage/columnstore/columnstore/cmake/boost.1.88.named_proxy.hpp.patch BUILD_COMMAND ./b2 -q ${_b2args} BUILD_IN_SOURCE TRUE INSTALL_COMMAND ./b2 -q install ${_b2args} diff --git a/cmake/compiler_flags.cmake b/cmake/compiler_flags.cmake index 37f795ef1..12d377c3b 100644 --- a/cmake/compiler_flags.cmake +++ b/cmake/compiler_flags.cmake @@ -72,10 +72,11 @@ set(CLANG_FLAGS -Wno-format-truncation -Wno-register -Wno-typedef-redefinition + -Wno-missing-template-arg-list-after-template-kw ) set(GNU_FLAGS # suppressed warnings - -Wno-deprecated-copy -Wno-deprecated-declarations -Wno-format-truncation -Wno-register -Wno-unused-variable + -Wno-deprecated-copy -Wno-deprecated-declarations -Wno-format-truncation -Wno-register ) # } end compiler specific flags diff --git a/primitives/primproc/primitiveserver.cpp b/primitives/primproc/primitiveserver.cpp index bcded840a..b193643c5 100644 --- a/primitives/primproc/primitiveserver.cpp +++ b/primitives/primproc/primitiveserver.cpp @@ -1555,14 +1555,9 @@ struct BPPHandler bs >> stepID; bs >> uniqueID; - boost::unique_lock lk(getDJLock(uniqueID)); - boost::mutex::scoped_lock scoped(bppLock); - - bppKeysIt = std::find(bppKeys.begin(), bppKeys.end(), uniqueID); - - if (bppKeysIt != bppKeys.end()) + boost::shared_ptr bppv = nullptr; { - boost::unique_lock lk(getDJLock(uniqueID)); + boost::unique_lock lk(getDJLock(uniqueID)); boost::mutex::scoped_lock scoped(bppLock); bppKeysIt = std::find(bppKeys.begin(), bppKeys.end(), uniqueID);