From e736f4b62c327d5278c5818b5772878acece1913 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ra=C3=BAl=20Cumplido?= Date: Mon, 20 Apr 2026 11:38:27 +0200 Subject: [PATCH 1/4] GH-49772: [C++] Bump bundled mimalloc version --- cpp/thirdparty/versions.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cpp/thirdparty/versions.txt b/cpp/thirdparty/versions.txt index 82a780285e2..5d1a33d1a26 100644 --- a/cpp/thirdparty/versions.txt +++ b/cpp/thirdparty/versions.txt @@ -80,8 +80,8 @@ ARROW_JEMALLOC_BUILD_VERSION=5.3.0 ARROW_JEMALLOC_BUILD_SHA256_CHECKSUM=2db82d1e7119df3e71b7640219b6dfe84789bc0537983c3b7ac4f7189aecfeaa ARROW_LZ4_BUILD_VERSION=v1.10.0 ARROW_LZ4_BUILD_SHA256_CHECKSUM=537512904744b35e232912055ccf8ec66d768639ff3abe5788d90d792ec5f48b -ARROW_MIMALLOC_BUILD_VERSION=v3.2.7 -ARROW_MIMALLOC_BUILD_SHA256_CHECKSUM=33621bea902711639b8f83128e64685ffc8224a65443625530747603a2d8726d +ARROW_MIMALLOC_BUILD_VERSION=v3.3.0 +ARROW_MIMALLOC_BUILD_SHA256_CHECKSUM=cf227295c307efc6f16e90c485595f9bb91c5a5532a3000f81f08907f8fc56a2 ARROW_NLOHMANN_JSON_BUILD_VERSION=v3.12.0 ARROW_NLOHMANN_JSON_BUILD_SHA256_CHECKSUM=4b92eb0c06d10683f7447ce9406cb97cd4b453be18d7279320f7b2f025c10187 ARROW_OPENTELEMETRY_BUILD_VERSION=v1.21.0 From bb14701f0b452713303ba4ef38b97e30e1469cb0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ra=C3=BAl=20Cumplido?= Date: Mon, 20 Apr 2026 12:41:28 +0200 Subject: [PATCH 2/4] Check whether workaround is still necessary --- cpp/cmake_modules/ThirdpartyToolchain.cmake | 7 ------- 1 file changed, 7 deletions(-) diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake index cc632a62fe4..4c45c3e49cf 100644 --- a/cpp/cmake_modules/ThirdpartyToolchain.cmake +++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake @@ -2428,15 +2428,8 @@ if(ARROW_MIMALLOC) "${MIMALLOC_PREFIX}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}${MIMALLOC_LIB_BASE_NAME}${CMAKE_STATIC_LIBRARY_SUFFIX}" ) - set(MIMALLOC_C_FLAGS ${EP_C_FLAGS}) - if(MINGW) - # Workaround https://github.com/microsoft/mimalloc/issues/910 on RTools40 - set(MIMALLOC_C_FLAGS "${MIMALLOC_C_FLAGS} -DERROR_COMMITMENT_MINIMUM=635") - endif() - set(MIMALLOC_CMAKE_ARGS ${EP_COMMON_CMAKE_ARGS} - "-DCMAKE_C_FLAGS=${MIMALLOC_C_FLAGS}" "-DCMAKE_INSTALL_PREFIX=${MIMALLOC_PREFIX}" -DMI_INSTALL_TOPLEVEL=ON -DMI_OVERRIDE=OFF From 3138d98108468588e90b9e24ad1f3b02ef1cf63f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ra=C3=BAl=20Cumplido?= Date: Mon, 20 Apr 2026 12:49:03 +0200 Subject: [PATCH 3/4] Revert "Check whether workaround is still necessary" This reverts commit bb14701f0b452713303ba4ef38b97e30e1469cb0. --- cpp/cmake_modules/ThirdpartyToolchain.cmake | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake index 4c45c3e49cf..cc632a62fe4 100644 --- a/cpp/cmake_modules/ThirdpartyToolchain.cmake +++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake @@ -2428,8 +2428,15 @@ if(ARROW_MIMALLOC) "${MIMALLOC_PREFIX}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}${MIMALLOC_LIB_BASE_NAME}${CMAKE_STATIC_LIBRARY_SUFFIX}" ) + set(MIMALLOC_C_FLAGS ${EP_C_FLAGS}) + if(MINGW) + # Workaround https://github.com/microsoft/mimalloc/issues/910 on RTools40 + set(MIMALLOC_C_FLAGS "${MIMALLOC_C_FLAGS} -DERROR_COMMITMENT_MINIMUM=635") + endif() + set(MIMALLOC_CMAKE_ARGS ${EP_COMMON_CMAKE_ARGS} + "-DCMAKE_C_FLAGS=${MIMALLOC_C_FLAGS}" "-DCMAKE_INSTALL_PREFIX=${MIMALLOC_PREFIX}" -DMI_INSTALL_TOPLEVEL=ON -DMI_OVERRIDE=OFF From 2443cd8d08d042a67cb275683d1075bc01873245 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ra=C3=BAl=20Cumplido?= Date: Mon, 20 Apr 2026 12:50:47 +0200 Subject: [PATCH 4/4] Add comment that the workaround is still necessary --- cpp/cmake_modules/ThirdpartyToolchain.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake index cc632a62fe4..30a7415b782 100644 --- a/cpp/cmake_modules/ThirdpartyToolchain.cmake +++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake @@ -2431,6 +2431,7 @@ if(ARROW_MIMALLOC) set(MIMALLOC_C_FLAGS ${EP_C_FLAGS}) if(MINGW) # Workaround https://github.com/microsoft/mimalloc/issues/910 on RTools40 + # This is still required as of mimalloc 3.3.0, tested as part of GH-49772 set(MIMALLOC_C_FLAGS "${MIMALLOC_C_FLAGS} -DERROR_COMMITMENT_MINIMUM=635") endif()