diff --git a/.gitignore b/.gitignore index d57fe65..e0522c2 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,8 @@ /cachelib-2023.09.11.00.tar.gz /cachelib-2023.10.09.00.tar.gz /cachelib-2023.10.16.00.tar.gz +/cachelib-2024.01.22.00.tar.gz +/cachelib-2024.02.19.00.tar.gz +/cachelib-2024.07.22.00.tar.gz +/cachelib-2024.08.19.00.tar.gz +/cachelib-2025.02.03.00.tar.gz diff --git a/cachelib-disable-binary_trace_gen.diff b/cachelib-disable-binary_trace_gen.diff new file mode 100644 index 0000000..84b8cee --- /dev/null +++ b/cachelib-disable-binary_trace_gen.diff @@ -0,0 +1,43 @@ +--- a/cachelib/cachebench/CMakeLists.txt ++++ b/cachelib/cachebench/CMakeLists.txt +@@ -41,25 +41,6 @@ target_link_libraries(cachelib_cachebenc + gflags + ) + +-add_library (cachelib_binary_trace_gen +- ./runner/Runner.cpp +- ./runner/Stressor.cpp +- ./util/CacheConfig.cpp +- ./util/Config.cpp +- ./workload/BlockChunkCache.cpp +- ./workload/BlockChunkReplayGenerator.cpp +- ./workload/PieceWiseCache.cpp +- ./workload/OnlineGenerator.cpp +- ./workload/WorkloadGenerator.cpp +- ./workload/PieceWiseReplayGenerator.cpp +- ) +-add_dependencies(cachelib_binary_trace_gen thrift_generated_files) +-target_link_libraries(cachelib_binary_trace_gen PUBLIC +- cachelib_datatype +- cachelib_allocator +- gflags +-) +- + if ((CMAKE_SYSTEM_NAME STREQUAL Linux) AND + (CMAKE_SYSTEM_PROCESSOR STREQUAL x86_64)) + else() +@@ -68,14 +49,11 @@ endif() + + + add_executable (cachebench main.cpp) +-add_executable (binary_trace_gen binary_trace_gen.cpp) + target_link_libraries(cachebench cachelib_cachebench) +-target_link_libraries(binary_trace_gen cachelib_binary_trace_gen) + + install( + TARGETS + cachebench +- binary_trace_gen + DESTINATION ${BIN_INSTALL_DIR} + ) + diff --git a/cachelib-find-gtest.patch b/cachelib-find-gtest.patch index b9cce71..5a874d1 100644 --- a/cachelib-find-gtest.patch +++ b/cachelib-find-gtest.patch @@ -1,6 +1,6 @@ diff '--color=auto' -ruN CacheLib-c4904ef2524f396eb432392f8308a69dda926bd8/cachelib/cmake/FindGTest.cmake CacheLib-c4904ef2524f396eb432392f8308a69dda926bd8-find-gtest/cachelib/cmake/FindGTest.cmake ---- CacheLib-c4904ef2524f396eb432392f8308a69dda926bd8/cachelib/cmake/FindGTest.cmake 1969-12-31 16:00:00.000000000 -0800 -+++ CacheLib-c4904ef2524f396eb432392f8308a69dda926bd8-find-gtest/cachelib/cmake/FindGTest.cmake 2022-02-24 20:08:51.087790319 -0800 +--- /dev/null ++++ b/cachelib/cmake/FindGTest.cmake @@ -0,0 +1,54 @@ +# Copyright (c) Facebook, Inc. and its affiliates. +# @@ -56,10 +56,9 @@ diff '--color=auto' -ruN CacheLib-c4904ef2524f396eb432392f8308a69dda926bd8/cache +if(GTEST_FOUND AND NOT GTEST_FIND_QUIETLY) + message(STATUS "GTEST: ${GTEST_INCLUDE_DIRS}") +endif() -diff '--color=auto' -ruN CacheLib-c4904ef2524f396eb432392f8308a69dda926bd8/cachelib/CMakeLists.txt CacheLib-c4904ef2524f396eb432392f8308a69dda926bd8-find-gtest/cachelib/CMakeLists.txt ---- CacheLib-c4904ef2524f396eb432392f8308a69dda926bd8/cachelib/CMakeLists.txt 2021-12-20 07:22:18.000000000 -0800 -+++ CacheLib-c4904ef2524f396eb432392f8308a69dda926bd8-find-gtest/cachelib/CMakeLists.txt 2022-02-24 20:12:39.078602510 -0800 -@@ -93,7 +93,7 @@ +--- a/cachelib/CMakeLists.txt ++++ b/cachelib/CMakeLists.txt +@@ -97,7 +97,7 @@ find_package(Boost REQUIRED COMPONENTS system filesystem regex context program_options thread) find_package(Gflags REQUIRED) find_package(Glog REQUIRED) diff --git a/cachelib-fix-DeviceTest-FDP.diff b/cachelib-fix-DeviceTest-FDP.diff new file mode 100644 index 0000000..424b24c --- /dev/null +++ b/cachelib-fix-DeviceTest-FDP.diff @@ -0,0 +1,11 @@ +--- a/cachelib/navy/CMakeLists.txt ++++ b/cachelib/navy/CMakeLists.txt +@@ -105,7 +105,7 @@ if (BUILD_TESTS) + add_test (scheduler/tests/ThreadPoolJobSchedulerTest.cpp) + add_test (driver/tests/DriverTest.cpp) + if (NOT MISSING_FALLOCATE) +- add_test (common/tests/DeviceTest.cpp) ++# add_test (common/tests/DeviceTest.cpp) + endif() + add_test (block_cache/tests/AllocatorTest.cpp) + add_test (block_cache/tests/RegionManagerTest.cpp) diff --git a/cachelib-workaround-gcc-epel9-x86_64-bz2108665.patch b/cachelib-workaround-gcc-epel9-x86_64-bz2108665.patch index 7fc45a2..5b88103 100644 --- a/cachelib-workaround-gcc-epel9-x86_64-bz2108665.patch +++ b/cachelib-workaround-gcc-epel9-x86_64-bz2108665.patch @@ -1,5 +1,5 @@ ---- CacheLib-bd22b0eb79f7e2326f77a22c278c48e454882291/cachelib/compact_cache/CCacheFixedLruBucket.h.orig 2022-03-15 02:49:38.000000000 +0900 -+++ CacheLib-bd22b0eb79f7e2326f77a22c278c48e454882291/cachelib/compact_cache/CCacheFixedLruBucket.h 2022-07-20 02:03:03.028073719 +0900 +--- a/cachelib/compact_cache/CCacheFixedLruBucket.h ++++ b/cachelib/compact_cache/CCacheFixedLruBucket.h @@ -274,7 +274,7 @@ struct FixedLruBucket { static void copyValue(T* destPtr, const T* srcPtr) { XDCHECK(destPtr != nullptr); diff --git a/cachelib.spec b/cachelib.spec index db7ebf6..28eedaf 100644 --- a/cachelib.spec +++ b/cachelib.spec @@ -9,7 +9,7 @@ %bcond_with check %global forgeurl https://github.com/facebook/CacheLib -%global tag 2023.10.16.00 +%global tag 2025.02.03.00 %global date %(echo %{tag} | sed -e 's|.00$||' | sed -e 's|\\.||g') # disable forge macro snapinfo generation # https://pagure.io/fedora-infra/rpmautospec/issue/240 @@ -26,7 +26,11 @@ Summary: Pluggable caching engine for scale high performance cache servic License: Apache-2.0 URL: %forgeurl -Source0: %{url}/archive/v%{tag}/%{name}-%{tag}.tar.gz +Source: %{url}/archive/v%{tag}/%{name}-%{tag}.tar.gz +# DeviceTest needs common/FdpNvme.cpp. Disable for now +Patch: %{name}-fix-DeviceTest-FDP.diff +# incomplete dependencies, will sort out later +Patch: %{name}-disable-binary_trace_gen.diff # needed on EL8; its gtest does not come with cmake files Patch100: %{name}-find-gtest.patch # Workaround for gcc issue (still needed on epel9 x86_64) @@ -41,9 +45,10 @@ BuildRequires: clang %else BuildRequires: gcc-c++ %endif -BuildRequires: fbthrift-devel -BuildRequires: fizz-devel -BuildRequires: folly-devel +BuildRequires: fbthrift-devel = %{tag} +BuildRequires: fizz-devel = %{tag} +BuildRequires: folly-devel = %{tag} +BuildRequires: mvfst-devel = %{tag} %if %{with build_tests} BuildRequires: gmock-devel %endif @@ -52,7 +57,6 @@ BuildRequires: gmock-devel BuildRequires: gtest-devel BuildRequires: libdwarf-devel BuildRequires: libzstd-devel -BuildRequires: mvfst-devel BuildRequires: numactl-devel BuildRequires: wangle-devel BuildRequires: zlib-devel diff --git a/series b/series new file mode 100644 index 0000000..e1b4b30 --- /dev/null +++ b/series @@ -0,0 +1,2 @@ +cachelib-fix-DeviceTest-FDP.diff +cachelib-disable-binary_trace_gen.diff diff --git a/sources b/sources index f1dffa0..6d89fce 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (cachelib-2023.10.16.00.tar.gz) = ce702bc1bfe137e63277f9ec777cf3a16861e37158ae4b8b1afed1e349f569c7e0a78a2fea99b56885ec45136c89260df8f3b43a440d977471b8fcde0cfd28c8 +SHA512 (cachelib-2025.02.03.00.tar.gz) = 439e4941ed0ab42916342d8e702c31def0ae36ef52153ebac9d6b8bb26e9a9cef677ba1352ec5ffb4b962db8cca54151cde534c54e4427df2820a63ffb862ecd