Skip to content

Commit 8c0790b

Browse files
pdillingermeta-codesync[bot]
authored andcommitted
Refresh platform010 build dependencies and remove TBB (#14882)
Summary: Refresh the fbcode platform010 toolchain and library pins to current third-party2 versions, and remove the now-unused Intel TBB dependency. Toolchain / deps: - Fix update_dependencies.sh: the gcc and binutils trees moved from centos8-native to centos9-native, so the old paths resolved to nothing and a re-run emitted empty GCC_BASE/BINUTILS_BASE. Point them at centos9-native. - Bump clang 15 -> 21; binutils 2.37 -> 2.43; libunwind 1.4 -> 1.8; valgrind 3.19 -> 3.22; plus hash-only refreshes for the LATEST-tracked libs. Regenerate dependencies_platform010.sh. - Keep GCC pinned at 11.x. The only newer GCC in third-party2 (13.x) is built for glibc >= 2.35 (its libgcc_s needs _dl_find_object@GLIBC_2.35), but platform010 ships glibc 2.34, so GCC 13 will not link/run here. - zlib stays 1.2.8 (the only version with an x86_64 platform010 build). - Document why GCC/libgcc/glibc/zlib remain pinned in update_dependencies.sh. Remove TBB (no longer used) from the build system: the get_lib_base entry, both fbcode_config*.sh, build_detect_platform detection, the CMake WITH_TBB option / find_dependency, and cmake/modules/FindTBB.cmake. Dockerfiles and the HISTORY.md changelog are left untouched. (TBB was used by the old clock cache, long ago removed.) Although this change was originally motivated by upgrading gcc for its libasan not to hit process lifetime thread limits, upgrading gcc proved impractical under platform010. Bonus: fix USBAN+gcc build by making GetParam() valid by the time it is called in several test class constructors. Pull Request resolved: #14882 Test Plan: a variety of local builds (gcc, clang; various sanitizers) using fbcode tooling No production code changes Reviewed By: xingbowang Differential Revision: D109631787 Pulled By: pdillinger fbshipit-source-id: 9c466c59b039c2a67ee0318c0ccbac02e19f537b
1 parent a004c2d commit 8c0790b

12 files changed

Lines changed: 59 additions & 117 deletions

‎CMakeLists.txt‎

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -420,13 +420,6 @@ if(WITH_NUMA)
420420
list(APPEND THIRDPARTY_LIBS NUMA::NUMA)
421421
endif()
422422

423-
option(WITH_TBB "build with Threading Building Blocks (TBB)" OFF)
424-
if(WITH_TBB)
425-
find_package(TBB REQUIRED)
426-
add_definitions(-DTBB)
427-
list(APPEND THIRDPARTY_LIBS TBB::TBB)
428-
endif()
429-
430423
# Stall notifications eat some performance from inserts
431424
option(DISABLE_STALL_NOTIF "Build with stall notifications" OFF)
432425
if(DISABLE_STALL_NOTIF)

‎build_tools/build_detect_platform‎

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
# -DLZ4 if the LZ4 library is present
2828
# -DZSTD if the ZSTD library is present
2929
# -DNUMA if the NUMA library is present
30-
# -DTBB if the TBB library is present
3130
# -DMEMKIND if the memkind library is present
3231
#
3332
# Using gflags in rocksdb:
@@ -424,19 +423,6 @@ EOF
424423
fi
425424
fi
426425

427-
if ! test $ROCKSDB_DISABLE_TBB; then
428-
# Test whether tbb is available
429-
$CXX $PLATFORM_CXXFLAGS $LDFLAGS -x c++ - -o test.o -ltbb 2>/dev/null <<EOF
430-
#include <tbb/tbb.h>
431-
int main() {}
432-
EOF
433-
if [ "$?" = 0 ]; then
434-
COMMON_FLAGS="$COMMON_FLAGS -DTBB"
435-
PLATFORM_LDFLAGS="$PLATFORM_LDFLAGS -ltbb"
436-
JAVA_LDFLAGS="$JAVA_LDFLAGS -ltbb"
437-
fi
438-
fi
439-
440426
if ! test $ROCKSDB_DISABLE_JEMALLOC; then
441427
# Test whether jemalloc is available
442428
if echo 'int main() {}' | $CXX $PLATFORM_CXXFLAGS $LDFLAGS -x c++ - -o test.o -ljemalloc \
Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,20 @@
11
# Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
22
# The file is generated using update_dependencies.sh.
3-
GCC_BASE=/mnt/gvfs/third-party2/gcc/62de5a92e5f23c661c3d4b9f322e04eb14e7a5bd/11.x/centos8-native/886b5eb
4-
CLANG_BASE=/mnt/gvfs/third-party2/llvm-fb/1f6edd1ff15c99c861afc8f3cd69054cd974dd64/15/platform010/72a2ff8
5-
LIBGCC_BASE=/mnt/gvfs/third-party2/libgcc/d1129753c8361ac8e9453c0f4291337a4507ebe6/11.x/platform010/5684a5a
6-
GLIBC_BASE=/mnt/gvfs/third-party2/glibc/fed6e93d87571fb162734c86636119d45a398963/2.34/platform010/f259413
7-
SNAPPY_BASE=/mnt/gvfs/third-party2/snappy/31a346126a1f3b64812c362511cb04cc1bd40855/1.1.8/platform010/76ebdda
8-
ZLIB_BASE=/mnt/gvfs/third-party2/zlib/0c65c05468b5a38cef1a106a1f526463e120c8dd/1.2.8/platform010/76ebdda
3+
GCC_BASE=/mnt/gvfs/third-party2/gcc/e9cb2d4550b5a95024125084420342d256b349cd/11.x/centos9-native/3bed279
4+
CLANG_BASE=/mnt/gvfs/third-party2/llvm-fb/4e46e6967e15412702e51960c69790a78933856f/21/platform010/72a2ff8
5+
LIBGCC_BASE=/mnt/gvfs/third-party2/libgcc/63c5179edc90fec473e53c1b2f92269c65c39e07/11.x/platform010/5684a5a
6+
GLIBC_BASE=/mnt/gvfs/third-party2/glibc/b4a6248a76a163bcccb1e4751e247712c535846e/2.34/platform010/f259413
7+
SNAPPY_BASE=/mnt/gvfs/third-party2/snappy/ef895164499fdfedb9d9b9c85520de10aa8ff9ca/1.1.8/platform010/76ebdda
8+
ZLIB_BASE=/mnt/gvfs/third-party2/zlib/643dbf0136f869562485cfcb2953f5cab60447ef/1.2.8/platform010/76ebdda
99
BZIP2_BASE=/mnt/gvfs/third-party2/bzip2/09703139cfc376bd8a82642385a0e97726b28287/1.0.6/platform010/76ebdda
10-
LZ4_BASE=/mnt/gvfs/third-party2/lz4/ff23d17b932725cc1734a14896a8b67c518ba169/1.9.4/platform010/76ebdda
11-
ZSTD_BASE=/mnt/gvfs/third-party2/zstd/576397d8b1d9cea7306ad1e454d5e55caaa2ff1c/1.4.x/platform010/64091f4
12-
GFLAGS_BASE=/mnt/gvfs/third-party2/gflags/fecac07861cb829f5e60dbeff0503d3272db73c0/2.2.0/platform010/76ebdda
13-
JEMALLOC_BASE=/mnt/gvfs/third-party2/jemalloc/0bb3f5756788ce26e2e16a1cb2f2af2c59b51abe/master/platform010/f57cc4a
10+
LZ4_BASE=/mnt/gvfs/third-party2/lz4/823bf8e000654abef784311296ffc8166d9d3986/1.9.4/platform010/76ebdda
11+
ZSTD_BASE=/mnt/gvfs/third-party2/zstd/0cda78647b5712bec7ec6d9ba2f0dcdabfb6f44f/1.4.x/platform010/64091f4
12+
GFLAGS_BASE=/mnt/gvfs/third-party2/gflags/a02e0de00945729ad553c187c64e86b57f45a33b/2.2.0/platform010/76ebdda
13+
JEMALLOC_BASE=/mnt/gvfs/third-party2/jemalloc/a1a50742bec7195bfafb594e174ea45dc197a420/master/platform010/779a252
1414
NUMA_BASE=/mnt/gvfs/third-party2/numa/5b602edd46fda54cdd7ea45f77dbe4061206e174/2.0.11/platform010/76ebdda
15-
LIBUNWIND_BASE=/mnt/gvfs/third-party2/libunwind/97cac22a149c2e202917e05d44e87e516b68216f/1.4/platform010/5074a48
16-
TBB_BASE=/mnt/gvfs/third-party2/tbb/53953ebc4e3eda85ad6fc3e429ba146035e97b90/2018_U5/platform010/76ebdda
15+
LIBUNWIND_BASE=/mnt/gvfs/third-party2/libunwind/f3cce2e1a79ac8d64e102886603a6997d6e88640/1.8/platform010/76ebdda
1716
LIBURING_BASE=/mnt/gvfs/third-party2/liburing/a98e2d137007e3ebf7f33bd6f99c2c56bdaf8488/20210212/platform010/76ebdda
1817
BENCHMARK_BASE=/mnt/gvfs/third-party2/benchmark/780c7a0f9cf0967961e69ad08e61cddd85d61821/trunk/platform010/76ebdda
19-
KERNEL_HEADERS_BASE=/mnt/gvfs/third-party2/kernel-headers/624a2f8f6c93c3c1df8aa4a6255d8202631a6c80/fb/platform010/da39a3e
20-
BINUTILS_BASE=/mnt/gvfs/third-party2/binutils/39579e8603b48b3540f8b0633f43adf29acccb8b/2.37/centos8-native/da39a3e
21-
VALGRIND_BASE=/mnt/gvfs/third-party2/valgrind/cd9cc656d49ecb53797ce4d055e49fde29fd57ff/3.19.0/platform010/76ebdda
18+
KERNEL_HEADERS_BASE=/mnt/gvfs/third-party2/kernel-headers/0883cccda758e68b47e4c04e4fa01142e1f60f32/fb/platform010/da39a3e
19+
BINUTILS_BASE=/mnt/gvfs/third-party2/binutils/1d5d19135a406a941d3a441eb2bf506bb9d19210/2.43/centos9-native/be7139e
20+
VALGRIND_BASE=/mnt/gvfs/third-party2/valgrind/3e2b7ccc315c9a0f2b678ce6fd774f4970f9bf3b/3.22.0/platform010/76ebdda

‎build_tools/fbcode_config.sh‎

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -87,15 +87,6 @@ if test -z $PIC_BUILD; then
8787
LIBUNWIND="$LIBUNWIND_BASE/lib/libunwind.a"
8888
fi
8989

90-
# location of TBB
91-
TBB_INCLUDE=" -isystem $TBB_BASE/include/"
92-
if test -z $PIC_BUILD; then
93-
TBB_LIBS="$TBB_BASE/lib/libtbb.a"
94-
else
95-
TBB_LIBS="$TBB_BASE/lib/libtbb_pic.a"
96-
fi
97-
CFLAGS+=" -DTBB"
98-
9990
test "$USE_SSE" || USE_SSE=1
10091
export USE_SSE
10192
test "$PORTABLE" || PORTABLE=1
@@ -104,7 +95,7 @@ export PORTABLE
10495
BINUTILS="$BINUTILS_BASE/bin"
10596
AR="$BINUTILS/ar"
10697

107-
DEPS_INCLUDE="$SNAPPY_INCLUDE $ZLIB_INCLUDE $BZIP_INCLUDE $LZ4_INCLUDE $ZSTD_INCLUDE $GFLAGS_INCLUDE $NUMA_INCLUDE $TBB_INCLUDE"
98+
DEPS_INCLUDE="$SNAPPY_INCLUDE $ZLIB_INCLUDE $BZIP_INCLUDE $LZ4_INCLUDE $ZSTD_INCLUDE $GFLAGS_INCLUDE $NUMA_INCLUDE"
10899

109100
STDLIBS="-L $GCC_BASE/lib64"
110101

@@ -150,17 +141,17 @@ CFLAGS+=" $DEPS_INCLUDE"
150141
CFLAGS+=" -DROCKSDB_PLATFORM_POSIX -DROCKSDB_LIB_IO_POSIX -DROCKSDB_FALLOCATE_PRESENT -DROCKSDB_MALLOC_USABLE_SIZE -DROCKSDB_RANGESYNC_PRESENT -DROCKSDB_SCHED_GETCPU_PRESENT"
151142
CXXFLAGS+=" $CFLAGS"
152143
153-
EXEC_LDFLAGS=" $SNAPPY_LIBS $ZLIB_LIBS $BZIP_LIBS $LZ4_LIBS $ZSTD_LIBS $GFLAGS_LIBS $NUMA_LIB $TBB_LIBS"
144+
EXEC_LDFLAGS=" $SNAPPY_LIBS $ZLIB_LIBS $BZIP_LIBS $LZ4_LIBS $ZSTD_LIBS $GFLAGS_LIBS $NUMA_LIB"
154145
EXEC_LDFLAGS+=" -B$BINUTILS/gold"
155146
EXEC_LDFLAGS+=" -Wl,--dynamic-linker,/usr/local/fbcode/gcc-5-glibc-2.23/lib/ld.so"
156147
EXEC_LDFLAGS+=" $LIBUNWIND"
157148
EXEC_LDFLAGS+=" -Wl,-rpath=/usr/local/fbcode/gcc-5-glibc-2.23/lib"
158-
# required by libtbb
149+
# dynamic loading
159150
EXEC_LDFLAGS+=" -ldl"
160151
161152
PLATFORM_LDFLAGS="$LIBGCC_LIBS $GLIBC_LIBS $STDLIBS -lgcc -lstdc++"
162153
163-
EXEC_LDFLAGS_SHARED="$SNAPPY_LIBS $ZLIB_LIBS $BZIP_LIBS $LZ4_LIBS $ZSTD_LIBS $GFLAGS_LIBS $TBB_LIBS"
154+
EXEC_LDFLAGS_SHARED="$SNAPPY_LIBS $ZLIB_LIBS $BZIP_LIBS $LZ4_LIBS $ZSTD_LIBS $GFLAGS_LIBS"
164155
165156
VALGRIND_VER="$VALGRIND_BASE/bin/"
166157

‎build_tools/fbcode_config_platform010.sh‎

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -82,11 +82,6 @@ CFLAGS+=" -DNUMA"
8282
# location of libunwind
8383
LIBUNWIND="$LIBUNWIND_BASE/lib/libunwind${MAYBE_PIC}.a"
8484

85-
# location of TBB
86-
TBB_INCLUDE=" -isystem $TBB_BASE/include/"
87-
TBB_LIBS="$TBB_BASE/lib/libtbb${MAYBE_PIC}.a"
88-
CFLAGS+=" -DTBB"
89-
9085
# location of LIBURING
9186
LIBURING_INCLUDE=" -isystem $LIBURING_BASE/include/"
9287
LIBURING_LIBS="$LIBURING_BASE/lib/liburing${MAYBE_PIC}.a"
@@ -101,7 +96,7 @@ BINUTILS="$BINUTILS_BASE/bin"
10196
AR="$BINUTILS/ar"
10297
AS="$BINUTILS/as"
10398

104-
DEPS_INCLUDE="$SNAPPY_INCLUDE $ZLIB_INCLUDE $BZIP_INCLUDE $LZ4_INCLUDE $ZSTD_INCLUDE $GFLAGS_INCLUDE $NUMA_INCLUDE $TBB_INCLUDE $LIBURING_INCLUDE $BENCHMARK_INCLUDE"
99+
DEPS_INCLUDE="$SNAPPY_INCLUDE $ZLIB_INCLUDE $BZIP_INCLUDE $LZ4_INCLUDE $ZSTD_INCLUDE $GFLAGS_INCLUDE $NUMA_INCLUDE $LIBURING_INCLUDE $BENCHMARK_INCLUDE"
105100

106101
STDLIBS="-L $GCC_BASE/lib64"
107102

@@ -157,18 +152,18 @@ CFLAGS+=" $DEPS_INCLUDE"
157152
CFLAGS+=" -DROCKSDB_PLATFORM_POSIX -DROCKSDB_LIB_IO_POSIX -DROCKSDB_FALLOCATE_PRESENT -DROCKSDB_MALLOC_USABLE_SIZE -DROCKSDB_RANGESYNC_PRESENT -DROCKSDB_SCHED_GETCPU_PRESENT -DROCKSDB_IOURING_PRESENT"
158153
CXXFLAGS+=" $CFLAGS"
159154

160-
EXEC_LDFLAGS=" $SNAPPY_LIBS $ZLIB_LIBS $BZIP_LIBS $LZ4_LIBS $ZSTD_LIBS $GFLAGS_LIBS $NUMA_LIB $TBB_LIBS $LIBURING_LIBS $BENCHMARK_LIBS"
155+
EXEC_LDFLAGS=" $SNAPPY_LIBS $ZLIB_LIBS $BZIP_LIBS $LZ4_LIBS $ZSTD_LIBS $GFLAGS_LIBS $NUMA_LIB $LIBURING_LIBS $BENCHMARK_LIBS"
161156
EXEC_LDFLAGS+=" -Wl,--dynamic-linker,/usr/local/fbcode/platform010/lib/ld.so"
162157
EXEC_LDFLAGS+=" $LIBUNWIND"
163158
EXEC_LDFLAGS+=" -Wl,-rpath=/usr/local/fbcode/platform010/lib"
164159
EXEC_LDFLAGS+=" -Wl,-rpath=$GCC_BASE/lib64"
165-
# required by libtbb
160+
# dynamic loading
166161
EXEC_LDFLAGS+=" -ldl"
167162

168163
PLATFORM_LDFLAGS="$LIBGCC_LIBS $GLIBC_LIBS $STDLIBS -lgcc -lstdc++"
169164
PLATFORM_LDFLAGS+=" -B$BINUTILS"
170165

171-
EXEC_LDFLAGS_SHARED="$SNAPPY_LIBS $ZLIB_LIBS $BZIP_LIBS $LZ4_LIBS $ZSTD_LIBS $GFLAGS_LIBS $TBB_LIBS $LIBURING_LIBS $BENCHMARK_LIBS"
166+
EXEC_LDFLAGS_SHARED="$SNAPPY_LIBS $ZLIB_LIBS $BZIP_LIBS $LZ4_LIBS $ZSTD_LIBS $GFLAGS_LIBS $LIBURING_LIBS $BENCHMARK_LIBS"
172167

173168
VALGRIND_VER="$VALGRIND_BASE/bin/"
174169

‎build_tools/update_dependencies.sh‎

Lines changed: 24 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -32,15 +32,15 @@ function get_lib_base()
3232
local lib_platform=$3
3333

3434
local result="$TP2_LATEST/$lib_name/"
35-
35+
3636
# Lib Version
3737
if [ -z "$lib_version" ] || [ "$lib_version" = "LATEST" ]; then
3838
# version is not provided, use latest
3939
result=`ls -dr1v $result/*/ | head -n1`
4040
else
4141
result="$result/$lib_version/"
4242
fi
43-
43+
4444
# Lib Platform
4545
if [ -z "$lib_platform" ]; then
4646
# platform is not provided, use latest gcc
@@ -49,17 +49,17 @@ function get_lib_base()
4949
echo $lib_platform
5050
result="$result/$lib_platform/"
5151
fi
52-
52+
5353
result=`ls -1d $result/*/ | head -n1`
5454

5555
echo Finding link $result
56-
56+
5757
# lib_name => LIB_NAME_BASE
5858
local __res_var=${lib_name^^}"_BASE"
5959
__res_var=`echo $__res_var | tr - _`
6060
# LIB_NAME_BASE=$result
6161
eval $__res_var=`readlink -f $result`
62-
62+
6363
log_variable $__res_var
6464
}
6565

@@ -75,17 +75,33 @@ touch "$OUTPUT"
7575
echo "Writing dependencies to $OUTPUT"
7676

7777
# Compilers locations
78-
GCC_BASE=`readlink -f $TP2_LATEST/gcc/11.x/centos8-native/*/`
79-
CLANG_BASE=`readlink -f $TP2_LATEST/llvm-fb/15/platform010/*/`
78+
# GCC is pinned to 11.x because the only newer GCC in third-party2 (13.x) is
79+
# built for centos9/glibc>=2.35 -- its libgcc_s.so.1 has a hard reference
80+
# to _dl_find_object@GLIBC_2.35, but platform010 ships glibc 2.34. Bumping
81+
# GCC requires a platform with glibc >= 2.35.
82+
GCC_BASE=`readlink -f $TP2_LATEST/gcc/11.x/centos9-native/*/`
83+
# Clang is pinned to the latest tested major (21). Bump deliberately.
84+
CLANG_BASE=`readlink -f $TP2_LATEST/llvm-fb/21/platform010/*/`
8085

8186
log_header
8287
log_variable GCC_BASE
8388
log_variable CLANG_BASE
8489

8590
# Libraries locations
91+
# libgcc is pinned to 11.x to match the GCC 11 compiler above (libstdc++/
92+
# libgcc runtime, ABI, and C++ headers). Bump in lockstep with GCC_BASE.
8693
get_lib_base libgcc 11.x platform010
94+
# glibc 2.34 is the platform010 ABI baseline (ld.so + libc); it is also the
95+
# only version available in third-party2, and defines the platform -- do
96+
# not bump independently.
8797
get_lib_base glibc 2.34 platform010
8898
get_lib_base snappy LATEST platform010
99+
# zlib is pinned to 1.2.8: it is the latest version with an x86_64
100+
# platform010 build (1.2.13 / 1.3.1 are centos9 / aarch64 only). At time of
101+
# writing, LATEST here doesn't work: get_lib_base picks the newest version
102+
# dir first and only then appends the platform, with no fallback -- so
103+
# LATEST would resolve to 1.3.1, find no platform010 build, and emit an
104+
# empty ZLIB_BASE.
89105
get_lib_base zlib 1.2.8 platform010
90106
get_lib_base bzip2 LATEST platform010
91107
get_lib_base lz4 LATEST platform010
@@ -94,12 +110,11 @@ get_lib_base gflags LATEST platform010
94110
get_lib_base jemalloc LATEST platform010
95111
get_lib_base numa LATEST platform010
96112
get_lib_base libunwind LATEST platform010
97-
get_lib_base tbb 2018_U5 platform010
98113
get_lib_base liburing LATEST platform010
99114
get_lib_base benchmark LATEST platform010
100115

101116
get_lib_base kernel-headers fb platform010
102-
get_lib_base binutils LATEST centos8-native
117+
get_lib_base binutils LATEST centos9-native
103118
get_lib_base valgrind LATEST platform010
104119

105120
git diff $OUTPUT

‎cmake/RocksDBConfig.cmake.in‎

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,10 +44,6 @@ if(@WITH_NUMA@)
4444
find_dependency(NUMA)
4545
endif()
4646

47-
if(@WITH_TBB@)
48-
find_dependency(TBB)
49-
endif()
50-
5147
find_dependency(Threads)
5248

5349
include("${CMAKE_CURRENT_LIST_DIR}/RocksDBTargets.cmake")

‎cmake/modules/FindTBB.cmake‎

Lines changed: 0 additions & 33 deletions
This file was deleted.

‎db/db_basic_test.cc‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5459,9 +5459,9 @@ class DBBasicTestMultiGet : public DBTestBase {
54595459
std::vector<std::string> cf_names_;
54605460
};
54615461

5462-
class DBBasicTestWithParallelIO : public DBBasicTestMultiGet,
5463-
public testing::WithParamInterface<
5464-
std::tuple<bool, bool, bool, uint32_t>> {
5462+
class DBBasicTestWithParallelIO : public testing::WithParamInterface<
5463+
std::tuple<bool, bool, bool, uint32_t>>,
5464+
public DBBasicTestMultiGet {
54655465
public:
54665466
DBBasicTestWithParallelIO()
54675467
: DBBasicTestMultiGet("/db_basic_test_with_parallel_io", 1,

‎table/table_test.cc‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1065,8 +1065,8 @@ class HarnessTest : public testing::Test {
10651065
std::shared_ptr<InternalKeyComparator> internal_comparator_;
10661066
};
10671067

1068-
class ParameterizedHarnessTest : public HarnessTest,
1069-
public testing::WithParamInterface<TestArgs> {
1068+
class ParameterizedHarnessTest : public testing::WithParamInterface<TestArgs>,
1069+
public HarnessTest {
10701070
public:
10711071
ParameterizedHarnessTest() : HarnessTest(GetParam()) {}
10721072
};

0 commit comments

Comments
 (0)