TARGETS 40.1 KB
Newer Older
1
# This file @generated by `python3 buckifier/buckify_rocksdb.py`
2 3 4 5
# --> DO NOT EDIT MANUALLY <--
# This file is a Facebook-specific integration for buck builds, so can
# only be validated by Facebook employees.
#
6
load("@fbcode_macros//build_defs:auto_headers.bzl", "AutoHeaders")
7
load("@fbcode_macros//build_defs:cpp_library.bzl", "cpp_library")
8
load(":defs.bzl", "test_binary")
9

A
Andres Suarez 已提交
10
REPO_PATH = package_name() + "/"
Y
Yi Wu 已提交
11

12
ROCKSDB_COMPILER_FLAGS = [
Y
Yi Wu 已提交
13 14 15
    "-fno-builtin-memcmp",
    # Needed to compile in fbcode
    "-Wno-expansion-to-defined",
F
Fosco Marotto 已提交
16
    # Added missing flags from output of build_detect_platform
Y
Yi Wu 已提交
17
    "-Wnarrowing",
18
    "-DROCKSDB_NO_DYNAMIC_EXTENSION",
19 20
]

21
ROCKSDB_EXTERNAL_DEPS = [
Y
Yi Wu 已提交
22 23 24 25 26 27
    ("bzip2", None, "bz2"),
    ("snappy", None, "snappy"),
    ("zlib", None, "z"),
    ("gflags", None, "gflags"),
    ("lz4", None, "lz4"),
    ("zstd", None),
28 29
]

C
Chad Austin 已提交
30 31 32
ROCKSDB_OS_DEPS = [
    (
        "linux",
33 34 35 36 37
        ["third-party//numa:numa", "third-party//liburing:uring", "third-party//tbb:tbb"],
    ),
    (
        "macos",
        ["third-party//tbb:tbb"],
C
Chad Austin 已提交
38 39 40 41 42 43 44 45 46 47 48 49 50
    ),
]

ROCKSDB_OS_PREPROCESSOR_FLAGS = [
    (
        "linux",
        [
            "-DOS_LINUX",
            "-DROCKSDB_FALLOCATE_PRESENT",
            "-DROCKSDB_MALLOC_USABLE_SIZE",
            "-DROCKSDB_PTHREAD_ADAPTIVE_MUTEX",
            "-DROCKSDB_RANGESYNC_PRESENT",
            "-DROCKSDB_SCHED_GETCPU_PRESENT",
51
            "-DROCKSDB_IOURING_PRESENT",
C
Chad Austin 已提交
52
            "-DHAVE_SSE42",
53
            "-DLIBURING",
C
Chad Austin 已提交
54
            "-DNUMA",
55 56 57
            "-DROCKSDB_PLATFORM_POSIX",
            "-DROCKSDB_LIB_IO_POSIX",
            "-DTBB",
C
Chad Austin 已提交
58 59 60 61
        ],
    ),
    (
        "macos",
62 63 64 65 66 67 68 69 70 71
        [
            "-DOS_MACOSX",
            "-DROCKSDB_PLATFORM_POSIX",
            "-DROCKSDB_LIB_IO_POSIX",
            "-DTBB",
        ],
    ),
    (
        "windows",
        [ "-DOS_WIN", "-DWIN32", "-D_MBCS", "-DWIN64", "-DNOMINMAX" ]
C
Chad Austin 已提交
72 73 74
    ),
]

75
ROCKSDB_PREPROCESSOR_FLAGS = [
C
Chad Austin 已提交
76 77 78 79 80 81 82 83 84 85 86 87 88 89
    "-DROCKSDB_SUPPORT_THREAD_LOCAL",

    # Flags to enable libs we include
    "-DSNAPPY",
    "-DZLIB",
    "-DBZIP2",
    "-DLZ4",
    "-DZSTD",
    "-DZSTD_STATIC_LINKING_ONLY",
    "-DGFLAGS=gflags",

    # Added missing flags from output of build_detect_platform
    "-DROCKSDB_BACKTRACE",

Y
Yi Wu 已提交
90 91 92
    # Directories with files for #include
    "-I" + REPO_PATH + "include/",
    "-I" + REPO_PATH,
93 94
]

95
ROCKSDB_ARCH_PREPROCESSOR_FLAGS = {
S
Siying Dong 已提交
96 97 98
    "x86_64": [
        "-DHAVE_PCLMUL",
    ],
99 100
}

Y
Yi Wu 已提交
101 102 103 104 105 106
build_mode = read_config("fbcode", "build_mode")

is_opt_mode = build_mode.startswith("opt")

# -DNDEBUG is added by default in opt mode in fbcode. But adding it twice
# doesn't harm and avoid forgetting to add it.
107
ROCKSDB_COMPILER_FLAGS += (["-DNDEBUG"] if is_opt_mode else [])
Y
Yi Wu 已提交
108

109 110
sanitizer = read_config("fbcode", "sanitizer")

111 112
# Do not enable jemalloc if sanitizer presents. RocksDB will further detect
# whether the binary is linked with jemalloc at runtime.
C
Chad Austin 已提交
113 114 115 116
ROCKSDB_OS_PREPROCESSOR_FLAGS += ([(
    "linux",
    ["-DROCKSDB_JEMALLOC"],
)] if sanitizer == "" else [])
117

C
Chad Austin 已提交
118 119 120 121
ROCKSDB_OS_DEPS += ([(
    "linux",
    ["third-party//jemalloc:headers"],
)] if sanitizer == "" else [])
122

123 124 125 126 127
ROCKSDB_LIB_DEPS = [
    ":rocksdb_lib",
    ":rocksdb_test_lib",
] if not is_opt_mode else [":rocksdb_lib"]

128 129 130
cpp_library(
    name = "rocksdb_lib",
    srcs = [
131
        "cache/cache.cc",
Y
Yi Wu 已提交
132 133 134
        "cache/clock_cache.cc",
        "cache/lru_cache.cc",
        "cache/sharded_cache.cc",
135
        "db/arena_wrapped_db_iter.cc",
136
        "db/blob/blob_file_addition.cc",
137
        "db/blob/blob_file_builder.cc",
138
        "db/blob/blob_file_garbage.cc",
139
        "db/blob/blob_file_meta.cc",
140 141 142
        "db/blob/blob_log_format.cc",
        "db/blob/blob_log_reader.cc",
        "db/blob/blob_log_writer.cc",
Y
Yi Wu 已提交
143 144 145 146
        "db/builder.cc",
        "db/c.cc",
        "db/column_family.cc",
        "db/compacted_db_impl.cc",
147 148 149 150 151 152 153
        "db/compaction/compaction.cc",
        "db/compaction/compaction_iterator.cc",
        "db/compaction/compaction_job.cc",
        "db/compaction/compaction_picker.cc",
        "db/compaction/compaction_picker_fifo.cc",
        "db/compaction/compaction_picker_level.cc",
        "db/compaction/compaction_picker_universal.cc",
154
        "db/compaction/sst_partitioner.cc",
Y
Yi Wu 已提交
155 156
        "db/convenience.cc",
        "db/db_filesnapshot.cc",
157 158 159 160 161 162 163 164 165
        "db/db_impl/db_impl.cc",
        "db/db_impl/db_impl_compaction_flush.cc",
        "db/db_impl/db_impl_debug.cc",
        "db/db_impl/db_impl_experimental.cc",
        "db/db_impl/db_impl_files.cc",
        "db/db_impl/db_impl_open.cc",
        "db/db_impl/db_impl_readonly.cc",
        "db/db_impl/db_impl_secondary.cc",
        "db/db_impl/db_impl_write.cc",
Y
Yi Wu 已提交
166 167 168
        "db/db_info_dumper.cc",
        "db/db_iter.cc",
        "db/dbformat.cc",
169
        "db/error_handler.cc",
Y
Yi Wu 已提交
170 171 172 173 174 175 176
        "db/event_helpers.cc",
        "db/experimental.cc",
        "db/external_sst_file_ingestion_job.cc",
        "db/file_indexer.cc",
        "db/flush_job.cc",
        "db/flush_scheduler.cc",
        "db/forward_iterator.cc",
177
        "db/import_column_family_job.cc",
Y
Yi Wu 已提交
178 179 180
        "db/internal_stats.cc",
        "db/log_reader.cc",
        "db/log_writer.cc",
S
Siying Dong 已提交
181
        "db/logs_with_prep_tracker.cc",
Y
Yi Wu 已提交
182 183 184 185 186 187
        "db/malloc_stats.cc",
        "db/memtable.cc",
        "db/memtable_list.cc",
        "db/merge_helper.cc",
        "db/merge_operator.cc",
        "db/range_del_aggregator.cc",
188
        "db/range_tombstone_fragmenter.cc",
Y
Yi Wu 已提交
189 190 191 192 193
        "db/repair.cc",
        "db/snapshot_impl.cc",
        "db/table_cache.cc",
        "db/table_properties_collector.cc",
        "db/transaction_log_impl.cc",
194
        "db/trim_history_scheduler.cc",
Y
Yi Wu 已提交
195 196
        "db/version_builder.cc",
        "db/version_edit.cc",
197
        "db/version_edit_handler.cc",
Y
Yi Wu 已提交
198
        "db/version_set.cc",
199
        "db/wal_edit.cc",
Y
Yi Wu 已提交
200 201 202 203 204 205 206 207 208 209
        "db/wal_manager.cc",
        "db/write_batch.cc",
        "db/write_batch_base.cc",
        "db/write_controller.cc",
        "db/write_thread.cc",
        "env/env.cc",
        "env/env_chroot.cc",
        "env/env_encryption.cc",
        "env/env_hdfs.cc",
        "env/env_posix.cc",
210
        "env/file_system.cc",
211
        "env/file_system_tracer.cc",
212
        "env/fs_posix.cc",
Y
Yi Wu 已提交
213 214
        "env/io_posix.cc",
        "env/mock_env.cc",
215
        "file/delete_scheduler.cc",
216
        "file/file_prefetch_buffer.cc",
217 218
        "file/file_util.cc",
        "file/filename.cc",
219 220 221 222
        "file/random_access_file_reader.cc",
        "file/read_write_util.cc",
        "file/readahead_raf.cc",
        "file/sequence_file_reader.cc",
223
        "file/sst_file_manager_impl.cc",
224
        "file/writable_file_writer.cc",
225 226 227
        "logging/auto_roll_logger.cc",
        "logging/event_logger.cc",
        "logging/log_buffer.cc",
228 229 230
        "memory/arena.cc",
        "memory/concurrent_arena.cc",
        "memory/jemalloc_nodump_allocator.cc",
231
        "memory/memkind_kmem_allocator.cc",
Y
Yi Wu 已提交
232 233 234 235 236 237 238 239
        "memtable/alloc_tracker.cc",
        "memtable/hash_linklist_rep.cc",
        "memtable/hash_skiplist_rep.cc",
        "memtable/skiplistrep.cc",
        "memtable/vectorrep.cc",
        "memtable/write_buffer_manager.cc",
        "monitoring/histogram.cc",
        "monitoring/histogram_windowing.cc",
240
        "monitoring/in_memory_stats_history.cc",
Y
Yi Wu 已提交
241 242 243 244
        "monitoring/instrumented_mutex.cc",
        "monitoring/iostats_context.cc",
        "monitoring/perf_context.cc",
        "monitoring/perf_level.cc",
245
        "monitoring/persistent_stats_history.cc",
Y
Yi Wu 已提交
246
        "monitoring/statistics.cc",
247
        "monitoring/stats_dump_scheduler.cc",
Y
Yi Wu 已提交
248 249 250 251 252 253
        "monitoring/thread_status_impl.cc",
        "monitoring/thread_status_updater.cc",
        "monitoring/thread_status_updater_debug.cc",
        "monitoring/thread_status_util.cc",
        "monitoring/thread_status_util_debug.cc",
        "options/cf_options.cc",
254
        "options/configurable.cc",
Y
Yi Wu 已提交
255 256 257 258 259 260
        "options/db_options.cc",
        "options/options.cc",
        "options/options_helper.cc",
        "options/options_parser.cc",
        "port/port_posix.cc",
        "port/stack_trace.cc",
261 262 263 264 265 266
        "port/win/env_default.cc",
        "port/win/env_win.cc",
        "port/win/io_win.cc",
        "port/win/port_win.cc",
        "port/win/win_logger.cc",
        "port/win/win_thread.cc",
267
        "table/adaptive/adaptive_table_factory.cc",
268
        "table/block_based/binary_search_index_reader.cc",
269 270 271 272
        "table/block_based/block.cc",
        "table/block_based/block_based_filter_block.cc",
        "table/block_based/block_based_table_builder.cc",
        "table/block_based/block_based_table_factory.cc",
273
        "table/block_based/block_based_table_iterator.cc",
274 275
        "table/block_based/block_based_table_reader.cc",
        "table/block_based/block_builder.cc",
276
        "table/block_based/block_prefetcher.cc",
277 278
        "table/block_based/block_prefix_index.cc",
        "table/block_based/data_block_footer.cc",
279
        "table/block_based/data_block_hash_index.cc",
280
        "table/block_based/filter_block_reader_common.cc",
281
        "table/block_based/filter_policy.cc",
282 283
        "table/block_based/flush_block_policy.cc",
        "table/block_based/full_filter_block.cc",
284
        "table/block_based/hash_index_reader.cc",
285
        "table/block_based/index_builder.cc",
286
        "table/block_based/index_reader_common.cc",
287
        "table/block_based/parsed_full_filter_block.cc",
288
        "table/block_based/partitioned_filter_block.cc",
289
        "table/block_based/partitioned_index_iterator.cc",
290 291
        "table/block_based/partitioned_index_reader.cc",
        "table/block_based/reader_common.cc",
292
        "table/block_based/uncompression_dict_reader.cc",
S
Siying Dong 已提交
293
        "table/block_fetcher.cc",
294 295 296
        "table/cuckoo/cuckoo_table_builder.cc",
        "table/cuckoo/cuckoo_table_factory.cc",
        "table/cuckoo/cuckoo_table_reader.cc",
Y
Yi Wu 已提交
297 298 299 300 301 302
        "table/format.cc",
        "table/get_context.cc",
        "table/iterator.cc",
        "table/merging_iterator.cc",
        "table/meta_blocks.cc",
        "table/persistent_cache_helper.cc",
303
        "table/plain/plain_table_bloom.cc",
304 305 306 307 308
        "table/plain/plain_table_builder.cc",
        "table/plain/plain_table_factory.cc",
        "table/plain/plain_table_index.cc",
        "table/plain/plain_table_key_coding.cc",
        "table/plain/plain_table_reader.cc",
309
        "table/sst_file_dumper.cc",
310
        "table/sst_file_reader.cc",
Y
Yi Wu 已提交
311
        "table/sst_file_writer.cc",
312
        "table/table_factory.cc",
Y
Yi Wu 已提交
313 314
        "table/table_properties.cc",
        "table/two_level_iterator.cc",
315 316 317
        "test_util/sync_point.cc",
        "test_util/sync_point_impl.cc",
        "test_util/transaction_test_util.cc",
Y
Yi Wu 已提交
318
        "tools/dump/db_dump_tool.cc",
A
Akanksha Mahajan 已提交
319
        "tools/io_tracer_parser_tool.cc",
Y
Yi Wu 已提交
320 321 322
        "tools/ldb_cmd.cc",
        "tools/ldb_tool.cc",
        "tools/sst_dump_tool.cc",
323
        "trace_replay/block_cache_tracer.cc",
324
        "trace_replay/io_tracer.cc",
325
        "trace_replay/trace_replay.cc",
Y
Yi Wu 已提交
326 327 328 329
        "util/build_version.cc",
        "util/coding.cc",
        "util/compaction_job_stats_impl.cc",
        "util/comparator.cc",
330
        "util/compression_context_cache.cc",
331
        "util/concurrent_task_limiter_impl.cc",
Y
Yi Wu 已提交
332 333
        "util/crc32c.cc",
        "util/dynamic_bloom.cc",
334
        "util/file_checksum_helper.cc",
Y
Yi Wu 已提交
335 336 337 338 339 340 341 342 343 344 345
        "util/hash.cc",
        "util/murmurhash.cc",
        "util/random.cc",
        "util/rate_limiter.cc",
        "util/slice.cc",
        "util/status.cc",
        "util/string_util.cc",
        "util/thread_local.cc",
        "util/threadpool_imp.cc",
        "util/xxhash.cc",
        "utilities/backupable/backupable_db.cc",
Y
Yi Wu 已提交
346
        "utilities/blob_db/blob_compaction_filter.cc",
Y
Yi Wu 已提交
347 348
        "utilities/blob_db/blob_db.cc",
        "utilities/blob_db/blob_db_impl.cc",
349
        "utilities/blob_db/blob_db_impl_filesnapshot.cc",
Y
Yi Wu 已提交
350 351 352 353 354 355 356 357 358 359 360
        "utilities/blob_db/blob_dump_tool.cc",
        "utilities/blob_db/blob_file.cc",
        "utilities/cassandra/cassandra_compaction_filter.cc",
        "utilities/cassandra/format.cc",
        "utilities/cassandra/merge_operator.cc",
        "utilities/checkpoint/checkpoint_impl.cc",
        "utilities/compaction_filters/remove_emptyvalue_compactionfilter.cc",
        "utilities/convenience/info_log_finder.cc",
        "utilities/debug.cc",
        "utilities/env_mirror.cc",
        "utilities/env_timed.cc",
M
mrambacher 已提交
361 362
        "utilities/fault_injection_env.cc",
        "utilities/fault_injection_fs.cc",
Y
Yi Wu 已提交
363 364
        "utilities/leveldb_options/leveldb_options.cc",
        "utilities/memory/memory_util.cc",
P
Pooya Shareghi 已提交
365
        "utilities/merge_operators/bytesxor.cc",
Y
Yi Wu 已提交
366 367
        "utilities/merge_operators/max.cc",
        "utilities/merge_operators/put.cc",
368
        "utilities/merge_operators/sortlist.cc",
Y
Yi Wu 已提交
369 370 371
        "utilities/merge_operators/string_append/stringappend.cc",
        "utilities/merge_operators/string_append/stringappend2.cc",
        "utilities/merge_operators/uint64add.cc",
372
        "utilities/object_registry.cc",
Y
Yi Wu 已提交
373 374 375 376 377 378 379
        "utilities/option_change_migration/option_change_migration.cc",
        "utilities/options/options_util.cc",
        "utilities/persistent_cache/block_cache_tier.cc",
        "utilities/persistent_cache/block_cache_tier_file.cc",
        "utilities/persistent_cache/block_cache_tier_metadata.cc",
        "utilities/persistent_cache/persistent_cache_tier.cc",
        "utilities/persistent_cache/volatile_tier_impl.cc",
380
        "utilities/simulator_cache/cache_simulator.cc",
Y
Yi Wu 已提交
381 382
        "utilities/simulator_cache/sim_cache.cc",
        "utilities/table_properties_collectors/compact_on_deletion_collector.cc",
383
        "utilities/trace/file_trace_reader_writer.cc",
384 385
        "utilities/transactions/lock/lock_tracker.cc",
        "utilities/transactions/lock/point_lock_tracker.cc",
Y
Yi Wu 已提交
386 387 388 389 390 391 392 393 394 395 396
        "utilities/transactions/optimistic_transaction.cc",
        "utilities/transactions/optimistic_transaction_db_impl.cc",
        "utilities/transactions/pessimistic_transaction.cc",
        "utilities/transactions/pessimistic_transaction_db.cc",
        "utilities/transactions/snapshot_checker.cc",
        "utilities/transactions/transaction_base.cc",
        "utilities/transactions/transaction_db_mutex_impl.cc",
        "utilities/transactions/transaction_lock_mgr.cc",
        "utilities/transactions/transaction_util.cc",
        "utilities/transactions/write_prepared_txn.cc",
        "utilities/transactions/write_prepared_txn_db.cc",
397 398
        "utilities/transactions/write_unprepared_txn.cc",
        "utilities/transactions/write_unprepared_txn_db.cc",
Y
Yi Wu 已提交
399 400 401
        "utilities/ttl/db_ttl_impl.cc",
        "utilities/write_batch_with_index/write_batch_with_index.cc",
        "utilities/write_batch_with_index/write_batch_with_index_internal.cc",
402
    ],
403
    auto_headers = AutoHeaders.RECURSIVE_GLOB,
404 405
    arch_preprocessor_flags = ROCKSDB_ARCH_PREPROCESSOR_FLAGS,
    compiler_flags = ROCKSDB_COMPILER_FLAGS,
C
Chad Austin 已提交
406 407
    os_deps = ROCKSDB_OS_DEPS,
    os_preprocessor_flags = ROCKSDB_OS_PREPROCESSOR_FLAGS,
408
    preprocessor_flags = ROCKSDB_PREPROCESSOR_FLAGS,
Y
Yi Wu 已提交
409
    deps = [],
410
    external_deps = ROCKSDB_EXTERNAL_DEPS,
411 412 413 414 415
)

cpp_library(
    name = "rocksdb_test_lib",
    srcs = [
Y
Yi Wu 已提交
416 417
        "db/db_test_util.cc",
        "table/mock_table.cc",
418
        "test_util/mock_time_env.cc",
419 420
        "test_util/testharness.cc",
        "test_util/testutil.cc",
421
        "tools/block_cache_analyzer/block_cache_trace_analyzer.cc",
422
        "tools/trace_analyzer_tool.cc",
Y
Yi Wu 已提交
423
        "utilities/cassandra/test_utils.cc",
424
    ],
425
    auto_headers = AutoHeaders.RECURSIVE_GLOB,
426 427
    arch_preprocessor_flags = ROCKSDB_ARCH_PREPROCESSOR_FLAGS,
    compiler_flags = ROCKSDB_COMPILER_FLAGS,
C
Chad Austin 已提交
428 429
    os_deps = ROCKSDB_OS_DEPS,
    os_preprocessor_flags = ROCKSDB_OS_PREPROCESSOR_FLAGS,
430
    preprocessor_flags = ROCKSDB_PREPROCESSOR_FLAGS,
431 432 433
    deps = [":rocksdb_lib"],
    external_deps = ROCKSDB_EXTERNAL_DEPS + [
        ("googletest", None, "gtest"),
434
    ],
435 436 437 438 439
)

cpp_library(
    name = "rocksdb_tools_lib",
    srcs = [
440
        "test_util/testutil.cc",
441
        "tools/block_cache_analyzer/block_cache_trace_analyzer.cc",
Y
Yi Wu 已提交
442
        "tools/db_bench_tool.cc",
Y
Yi Wu 已提交
443
        "tools/trace_analyzer_tool.cc",
444
    ],
445
    auto_headers = AutoHeaders.RECURSIVE_GLOB,
446 447
    arch_preprocessor_flags = ROCKSDB_ARCH_PREPROCESSOR_FLAGS,
    compiler_flags = ROCKSDB_COMPILER_FLAGS,
C
Chad Austin 已提交
448 449
    os_deps = ROCKSDB_OS_DEPS,
    os_preprocessor_flags = ROCKSDB_OS_PREPROCESSOR_FLAGS,
450
    preprocessor_flags = ROCKSDB_PREPROCESSOR_FLAGS,
Y
Yi Wu 已提交
451
    deps = [":rocksdb_lib"],
452
    external_deps = ROCKSDB_EXTERNAL_DEPS,
453 454
)

455 456 457
cpp_library(
    name = "rocksdb_stress_lib",
    srcs = [
458 459 460 461 462 463 464 465 466
        "db_stress_tool/batched_ops_stress.cc",
        "db_stress_tool/cf_consistency_stress.cc",
        "db_stress_tool/db_stress_common.cc",
        "db_stress_tool/db_stress_driver.cc",
        "db_stress_tool/db_stress_gflags.cc",
        "db_stress_tool/db_stress_shared_state.cc",
        "db_stress_tool/db_stress_test_base.cc",
        "db_stress_tool/db_stress_tool.cc",
        "db_stress_tool/no_batched_ops_stress.cc",
467 468 469 470 471 472 473 474 475 476
        "test_util/testutil.cc",
        "tools/block_cache_analyzer/block_cache_trace_analyzer.cc",
        "tools/trace_analyzer_tool.cc",
    ],
    auto_headers = AutoHeaders.RECURSIVE_GLOB,
    arch_preprocessor_flags = ROCKSDB_ARCH_PREPROCESSOR_FLAGS,
    compiler_flags = ROCKSDB_COMPILER_FLAGS,
    os_deps = ROCKSDB_OS_DEPS,
    os_preprocessor_flags = ROCKSDB_OS_PREPROCESSOR_FLAGS,
    preprocessor_flags = ROCKSDB_PREPROCESSOR_FLAGS,
477
    deps = ROCKSDB_LIB_DEPS,
478 479 480
    external_deps = ROCKSDB_EXTERNAL_DEPS,
)

481 482 483 484 485 486 487 488 489 490
if not is_opt_mode:
    cpp_binary(
        name = "c_test_bin",
        srcs = ["db/c_test.c"],
        arch_preprocessor_flags = ROCKSDB_ARCH_PREPROCESSOR_FLAGS,
        os_preprocessor_flags = ROCKSDB_OS_PREPROCESSOR_FLAGS,
        compiler_flags = ROCKSDB_COMPILER_FLAGS,
        preprocessor_flags = ROCKSDB_PREPROCESSOR_FLAGS,
        deps = [":rocksdb_test_lib"],
    )
S
sdong 已提交
491

492 493 494 495 496 497 498 499 500
if not is_opt_mode:
    custom_unittest(
        "c_test",
        command = [
            native.package_name() + "/buckifier/rocks_test_runner.sh",
            "$(location :{})".format("c_test_bin"),
        ],
        type = "simple",
    )
S
sdong 已提交
501

502 503
cpp_library(
    name = "env_basic_test_lib",
504
    srcs = ["env/env_basic_test.cc"],
505
    auto_headers = AutoHeaders.RECURSIVE_GLOB,
506 507
    arch_preprocessor_flags = ROCKSDB_ARCH_PREPROCESSOR_FLAGS,
    compiler_flags = ROCKSDB_COMPILER_FLAGS,
C
Chad Austin 已提交
508 509
    os_deps = ROCKSDB_OS_DEPS,
    os_preprocessor_flags = ROCKSDB_OS_PREPROCESSOR_FLAGS,
510
    preprocessor_flags = ROCKSDB_PREPROCESSOR_FLAGS,
Y
Yi Wu 已提交
511
    deps = [":rocksdb_test_lib"],
512
    external_deps = ROCKSDB_EXTERNAL_DEPS,
513 514
)

515
# [test_name, test_src, test_type, extra_deps, extra_compiler_flags]
Y
Yi Wu 已提交
516 517 518
ROCKS_TESTS = [
    [
        "arena_test",
519
        "memory/arena_test.cc",
Y
Yi Wu 已提交
520
        "serial",
521 522
        [],
        [],
Y
Yi Wu 已提交
523 524 525
    ],
    [
        "auto_roll_logger_test",
526
        "logging/auto_roll_logger_test.cc",
Y
Yi Wu 已提交
527
        "serial",
528 529
        [],
        [],
Y
Yi Wu 已提交
530 531 532 533 534
    ],
    [
        "autovector_test",
        "util/autovector_test.cc",
        "serial",
535 536
        [],
        [],
Y
Yi Wu 已提交
537 538 539 540 541
    ],
    [
        "backupable_db_test",
        "utilities/backupable/backupable_db_test.cc",
        "parallel",
542 543
        [],
        [],
Y
Yi Wu 已提交
544 545 546 547 548
    ],
    [
        "blob_db_test",
        "utilities/blob_db/blob_db_test.cc",
        "serial",
549 550 551 552
        [],
        [],
    ],
    [
553
        "blob_file_addition_test",
554
        "db/blob/blob_file_addition_test.cc",
555 556 557 558
        "serial",
        [],
        [],
    ],
559 560 561 562 563 564 565
    [
        "blob_file_builder_test",
        "db/blob/blob_file_builder_test.cc",
        "serial",
        [],
        [],
    ],
566 567
    [
        "blob_file_garbage_test",
568
        "db/blob/blob_file_garbage_test.cc",
569
        "serial",
570 571
        [],
        [],
Y
Yi Wu 已提交
572 573 574
    ],
    [
        "block_based_filter_block_test",
575
        "table/block_based/block_based_filter_block_test.cc",
Y
Yi Wu 已提交
576
        "serial",
577 578
        [],
        [],
Y
Yi Wu 已提交
579
    ],
580 581 582 583 584 585 586
    [
        "block_based_table_reader_test",
        "table/block_based/block_based_table_reader_test.cc",
        "serial",
        [],
        [],
    ],
587 588
    [
        "block_cache_trace_analyzer_test",
589
        "tools/block_cache_analyzer/block_cache_trace_analyzer_test.cc",
590
        "serial",
591 592
        [],
        [],
593 594 595 596 597
    ],
    [
        "block_cache_tracer_test",
        "trace_replay/block_cache_tracer_test.cc",
        "serial",
598 599
        [],
        [],
600
    ],
601 602 603 604 605 606 607
    [
        "block_fetcher_test",
        "table/block_fetcher_test.cc",
        "serial",
        [],
        [],
    ],
Y
Yi Wu 已提交
608 609
    [
        "block_test",
610
        "table/block_based/block_test.cc",
Y
Yi Wu 已提交
611
        "serial",
612 613
        [],
        [],
Y
Yi Wu 已提交
614 615 616 617 618
    ],
    [
        "bloom_test",
        "util/bloom_test.cc",
        "serial",
619 620
        [],
        [],
Y
Yi Wu 已提交
621 622
    ],
    [
623 624
        "cache_simulator_test",
        "utilities/simulator_cache/cache_simulator_test.cc",
Y
Yi Wu 已提交
625
        "serial",
626 627
        [],
        [],
Y
Yi Wu 已提交
628
    ],
629
    [
630 631
        "cache_test",
        "cache/cache_test.cc",
632
        "serial",
633 634
        [],
        [],
635
    ],
Y
Yi Wu 已提交
636 637 638 639
    [
        "cassandra_format_test",
        "utilities/cassandra/cassandra_format_test.cc",
        "serial",
640 641
        [],
        [],
Y
Yi Wu 已提交
642 643 644 645 646
    ],
    [
        "cassandra_functional_test",
        "utilities/cassandra/cassandra_functional_test.cc",
        "serial",
647 648
        [],
        [],
Y
Yi Wu 已提交
649 650 651 652 653
    ],
    [
        "cassandra_row_merge_test",
        "utilities/cassandra/cassandra_row_merge_test.cc",
        "serial",
654 655
        [],
        [],
Y
Yi Wu 已提交
656 657 658 659 660
    ],
    [
        "cassandra_serialize_test",
        "utilities/cassandra/cassandra_serialize_test.cc",
        "serial",
661 662
        [],
        [],
Y
Yi Wu 已提交
663 664 665 666 667
    ],
    [
        "checkpoint_test",
        "utilities/checkpoint/checkpoint_test.cc",
        "serial",
668 669
        [],
        [],
Y
Yi Wu 已提交
670 671 672 673 674
    ],
    [
        "cleanable_test",
        "table/cleanable_test.cc",
        "serial",
675 676
        [],
        [],
Y
Yi Wu 已提交
677 678 679 680 681
    ],
    [
        "coding_test",
        "util/coding_test.cc",
        "serial",
682 683
        [],
        [],
Y
Yi Wu 已提交
684 685 686 687
    ],
    [
        "column_family_test",
        "db/column_family_test.cc",
688
        "parallel",
689 690
        [],
        [],
Y
Yi Wu 已提交
691 692 693 694 695
    ],
    [
        "compact_files_test",
        "db/compact_files_test.cc",
        "serial",
696 697
        [],
        [],
Y
Yi Wu 已提交
698 699 700 701 702
    ],
    [
        "compact_on_deletion_collector_test",
        "utilities/table_properties_collectors/compact_on_deletion_collector_test.cc",
        "serial",
703 704
        [],
        [],
Y
Yi Wu 已提交
705 706 707
    ],
    [
        "compaction_iterator_test",
708
        "db/compaction/compaction_iterator_test.cc",
Y
Yi Wu 已提交
709
        "serial",
710 711
        [],
        [],
Y
Yi Wu 已提交
712 713 714
    ],
    [
        "compaction_job_stats_test",
715
        "db/compaction/compaction_job_stats_test.cc",
Y
Yi Wu 已提交
716
        "serial",
717 718
        [],
        [],
Y
Yi Wu 已提交
719 720 721
    ],
    [
        "compaction_job_test",
722
        "db/compaction/compaction_job_test.cc",
Y
Yi Wu 已提交
723
        "serial",
724 725
        [],
        [],
Y
Yi Wu 已提交
726 727 728
    ],
    [
        "compaction_picker_test",
729
        "db/compaction/compaction_picker_test.cc",
Y
Yi Wu 已提交
730
        "serial",
731 732
        [],
        [],
Y
Yi Wu 已提交
733 734 735 736 737
    ],
    [
        "comparator_db_test",
        "db/comparator_db_test.cc",
        "serial",
738 739
        [],
        [],
Y
Yi Wu 已提交
740
    ],
741 742 743 744 745 746 747
    [
        "configurable_test",
        "options/configurable_test.cc",
        "serial",
        [],
        [],
    ],
Y
Yi Wu 已提交
748 749 750 751
    [
        "corruption_test",
        "db/corruption_test.cc",
        "serial",
752 753
        [],
        [],
Y
Yi Wu 已提交
754 755 756 757 758
    ],
    [
        "crc32c_test",
        "util/crc32c_test.cc",
        "serial",
759 760
        [],
        [],
Y
Yi Wu 已提交
761 762 763
    ],
    [
        "cuckoo_table_builder_test",
764
        "table/cuckoo/cuckoo_table_builder_test.cc",
Y
Yi Wu 已提交
765
        "serial",
766 767
        [],
        [],
Y
Yi Wu 已提交
768 769 770 771 772
    ],
    [
        "cuckoo_table_db_test",
        "db/cuckoo_table_db_test.cc",
        "serial",
773 774
        [],
        [],
Y
Yi Wu 已提交
775 776 777
    ],
    [
        "cuckoo_table_reader_test",
778
        "table/cuckoo/cuckoo_table_reader_test.cc",
Y
Yi Wu 已提交
779
        "serial",
780 781
        [],
        [],
Y
Yi Wu 已提交
782
    ],
783 784
    [
        "data_block_hash_index_test",
785
        "table/block_based/data_block_hash_index_test.cc",
786
        "serial",
787 788
        [],
        [],
789
    ],
Y
Yi Wu 已提交
790 791 792 793
    [
        "db_basic_test",
        "db/db_basic_test.cc",
        "serial",
794 795
        [],
        [],
Y
Yi Wu 已提交
796 797 798
    ],
    [
        "db_blob_index_test",
799
        "db/blob/db_blob_index_test.cc",
Y
Yi Wu 已提交
800
        "serial",
801 802
        [],
        [],
Y
Yi Wu 已提交
803 804 805 806 807
    ],
    [
        "db_block_cache_test",
        "db/db_block_cache_test.cc",
        "serial",
808 809
        [],
        [],
Y
Yi Wu 已提交
810 811 812 813
    ],
    [
        "db_bloom_filter_test",
        "db/db_bloom_filter_test.cc",
814
        "parallel",
815 816
        [],
        [],
Y
Yi Wu 已提交
817 818 819 820 821
    ],
    [
        "db_compaction_filter_test",
        "db/db_compaction_filter_test.cc",
        "parallel",
822 823
        [],
        [],
Y
Yi Wu 已提交
824 825 826 827 828
    ],
    [
        "db_compaction_test",
        "db/db_compaction_test.cc",
        "parallel",
829 830
        [],
        [],
Y
Yi Wu 已提交
831 832 833 834 835
    ],
    [
        "db_dynamic_level_test",
        "db/db_dynamic_level_test.cc",
        "serial",
836 837
        [],
        [],
Y
Yi Wu 已提交
838 839 840 841 842
    ],
    [
        "db_encryption_test",
        "db/db_encryption_test.cc",
        "serial",
843 844
        [],
        [],
Y
Yi Wu 已提交
845 846 847 848 849
    ],
    [
        "db_flush_test",
        "db/db_flush_test.cc",
        "serial",
850 851
        [],
        [],
Y
Yi Wu 已提交
852 853 854 855 856
    ],
    [
        "db_inplace_update_test",
        "db/db_inplace_update_test.cc",
        "serial",
857 858
        [],
        [],
Y
Yi Wu 已提交
859 860 861 862 863
    ],
    [
        "db_io_failure_test",
        "db/db_io_failure_test.cc",
        "serial",
864 865
        [],
        [],
Y
Yi Wu 已提交
866 867
    ],
    [
Y
Yi Wu 已提交
868 869
        "db_iter_stress_test",
        "db/db_iter_stress_test.cc",
Y
Yi Wu 已提交
870
        "serial",
871 872
        [],
        [],
Y
Yi Wu 已提交
873
    ],
874
    [
Y
Yi Wu 已提交
875 876
        "db_iter_test",
        "db/db_iter_test.cc",
877
        "serial",
878 879
        [],
        [],
880
    ],
Y
Yi Wu 已提交
881 882 883 884
    [
        "db_iterator_test",
        "db/db_iterator_test.cc",
        "serial",
885 886
        [],
        [],
Y
Yi Wu 已提交
887 888 889 890 891
    ],
    [
        "db_log_iter_test",
        "db/db_log_iter_test.cc",
        "serial",
892 893
        [],
        [],
Y
Yi Wu 已提交
894
    ],
895 896 897 898 899 900 901
    [
        "db_logical_block_size_cache_test",
        "db/db_logical_block_size_cache_test.cc",
        "serial",
        [],
        [],
    ],
Y
Yi Wu 已提交
902 903 904 905
    [
        "db_memtable_test",
        "db/db_memtable_test.cc",
        "serial",
906 907
        [],
        [],
Y
Yi Wu 已提交
908 909
    ],
    [
910 911 912
        "db_merge_operand_test",
        "db/db_merge_operand_test.cc",
        "serial",
913 914
        [],
        [],
Y
Yi Wu 已提交
915
    ],
916
    [
917 918
        "db_merge_operator_test",
        "db/db_merge_operator_test.cc",
919 920 921 922
        "parallel",
        [],
        [],
    ],
Y
Yi Wu 已提交
923 924 925 926
    [
        "db_options_test",
        "db/db_options_test.cc",
        "serial",
927 928
        [],
        [],
Y
Yi Wu 已提交
929 930 931 932 933
    ],
    [
        "db_properties_test",
        "db/db_properties_test.cc",
        "serial",
934 935
        [],
        [],
Y
Yi Wu 已提交
936 937 938 939 940
    ],
    [
        "db_range_del_test",
        "db/db_range_del_test.cc",
        "serial",
941 942
        [],
        [],
Y
Yi Wu 已提交
943
    ],
944 945
    [
        "db_secondary_test",
946
        "db/db_impl/db_secondary_test.cc",
947
        "serial",
948 949
        [],
        [],
950
    ],
Y
Yi Wu 已提交
951 952 953 954
    [
        "db_sst_test",
        "db/db_sst_test.cc",
        "parallel",
955 956
        [],
        [],
Y
Yi Wu 已提交
957 958 959 960 961
    ],
    [
        "db_statistics_test",
        "db/db_statistics_test.cc",
        "serial",
962 963
        [],
        [],
Y
Yi Wu 已提交
964 965 966 967 968
    ],
    [
        "db_table_properties_test",
        "db/db_table_properties_test.cc",
        "serial",
969 970
        [],
        [],
Y
Yi Wu 已提交
971 972 973 974 975
    ],
    [
        "db_tailing_iter_test",
        "db/db_tailing_iter_test.cc",
        "serial",
976 977
        [],
        [],
Y
Yi Wu 已提交
978 979 980 981 982
    ],
    [
        "db_test",
        "db/db_test.cc",
        "parallel",
983 984
        [],
        [],
Y
Yi Wu 已提交
985 986 987 988
    ],
    [
        "db_test2",
        "db/db_test2.cc",
989
        "parallel",
990 991
        [],
        [],
Y
Yi Wu 已提交
992 993 994 995 996
    ],
    [
        "db_universal_compaction_test",
        "db/db_universal_compaction_test.cc",
        "parallel",
997 998
        [],
        [],
Y
Yi Wu 已提交
999 1000 1001 1002 1003
    ],
    [
        "db_wal_test",
        "db/db_wal_test.cc",
        "parallel",
1004 1005
        [],
        [],
Y
Yi Wu 已提交
1006
    ],
1007 1008 1009 1010 1011 1012 1013
    [
        "db_with_timestamp_basic_test",
        "db/db_with_timestamp_basic_test.cc",
        "serial",
        [],
        [],
    ],
1014 1015 1016 1017 1018 1019 1020
    [
        "db_with_timestamp_compaction_test",
        "db/db_with_timestamp_compaction_test.cc",
        "serial",
        [],
        [],
    ],
Y
Yi Wu 已提交
1021 1022 1023 1024
    [
        "db_write_test",
        "db/db_write_test.cc",
        "serial",
1025 1026
        [],
        [],
Y
Yi Wu 已提交
1027 1028 1029 1030 1031
    ],
    [
        "dbformat_test",
        "db/dbformat_test.cc",
        "serial",
1032 1033
        [],
        [],
Y
Yi Wu 已提交
1034
    ],
C
Cheng Chang 已提交
1035 1036 1037 1038 1039 1040 1041
    [
        "defer_test",
        "util/defer_test.cc",
        "serial",
        [],
        [],
    ],
Y
Yi Wu 已提交
1042 1043
    [
        "delete_scheduler_test",
1044
        "file/delete_scheduler_test.cc",
Y
Yi Wu 已提交
1045
        "serial",
1046 1047
        [],
        [],
Y
Yi Wu 已提交
1048 1049 1050 1051 1052
    ],
    [
        "deletefile_test",
        "db/deletefile_test.cc",
        "serial",
1053 1054
        [],
        [],
Y
Yi Wu 已提交
1055 1056 1057 1058 1059
    ],
    [
        "dynamic_bloom_test",
        "util/dynamic_bloom_test.cc",
        "serial",
1060 1061
        [],
        [],
Y
Yi Wu 已提交
1062 1063 1064 1065 1066
    ],
    [
        "env_basic_test",
        "env/env_basic_test.cc",
        "serial",
1067 1068
        [],
        [],
Y
Yi Wu 已提交
1069
    ],
1070 1071 1072 1073
    [
        "env_logger_test",
        "logging/env_logger_test.cc",
        "serial",
1074 1075
        [],
        [],
1076
    ],
Y
Yi Wu 已提交
1077 1078 1079 1080
    [
        "env_test",
        "env/env_test.cc",
        "serial",
1081 1082
        [],
        [],
Y
Yi Wu 已提交
1083 1084 1085 1086 1087
    ],
    [
        "env_timed_test",
        "utilities/env_timed_test.cc",
        "serial",
1088 1089
        [],
        [],
Y
Yi Wu 已提交
1090
    ],
S
Siying Dong 已提交
1091
    [
1092 1093
        "error_handler_fs_test",
        "db/error_handler_fs_test.cc",
S
Siying Dong 已提交
1094
        "serial",
1095 1096
        [],
        [],
S
Siying Dong 已提交
1097
    ],
Y
Yi Wu 已提交
1098 1099
    [
        "event_logger_test",
1100
        "logging/event_logger_test.cc",
Y
Yi Wu 已提交
1101
        "serial",
1102 1103
        [],
        [],
Y
Yi Wu 已提交
1104 1105 1106 1107 1108
    ],
    [
        "external_sst_file_basic_test",
        "db/external_sst_file_basic_test.cc",
        "serial",
1109 1110
        [],
        [],
Y
Yi Wu 已提交
1111 1112 1113 1114 1115
    ],
    [
        "external_sst_file_test",
        "db/external_sst_file_test.cc",
        "parallel",
1116 1117
        [],
        [],
Y
Yi Wu 已提交
1118 1119 1120 1121 1122
    ],
    [
        "fault_injection_test",
        "db/fault_injection_test.cc",
        "parallel",
1123 1124
        [],
        [],
Y
Yi Wu 已提交
1125 1126 1127 1128 1129
    ],
    [
        "file_indexer_test",
        "db/file_indexer_test.cc",
        "serial",
1130 1131
        [],
        [],
Y
Yi Wu 已提交
1132 1133 1134 1135
    ],
    [
        "file_reader_writer_test",
        "util/file_reader_writer_test.cc",
1136
        "parallel",
1137 1138
        [],
        [],
Y
Yi Wu 已提交
1139 1140 1141 1142 1143
    ],
    [
        "filelock_test",
        "util/filelock_test.cc",
        "serial",
1144 1145
        [],
        [],
Y
Yi Wu 已提交
1146 1147 1148 1149 1150
    ],
    [
        "filename_test",
        "db/filename_test.cc",
        "serial",
1151 1152
        [],
        [],
Y
Yi Wu 已提交
1153 1154 1155 1156 1157
    ],
    [
        "flush_job_test",
        "db/flush_job_test.cc",
        "serial",
1158 1159
        [],
        [],
Y
Yi Wu 已提交
1160 1161 1162
    ],
    [
        "full_filter_block_test",
1163
        "table/block_based/full_filter_block_test.cc",
Y
Yi Wu 已提交
1164
        "serial",
1165 1166
        [],
        [],
Y
Yi Wu 已提交
1167 1168 1169 1170 1171
    ],
    [
        "hash_table_test",
        "utilities/persistent_cache/hash_table_test.cc",
        "serial",
1172 1173
        [],
        [],
Y
Yi Wu 已提交
1174 1175 1176 1177 1178
    ],
    [
        "hash_test",
        "util/hash_test.cc",
        "serial",
1179 1180
        [],
        [],
Y
Yi Wu 已提交
1181 1182 1183 1184 1185
    ],
    [
        "heap_test",
        "util/heap_test.cc",
        "serial",
1186 1187
        [],
        [],
Y
Yi Wu 已提交
1188 1189 1190 1191 1192
    ],
    [
        "histogram_test",
        "monitoring/histogram_test.cc",
        "serial",
1193 1194
        [],
        [],
Y
Yi Wu 已提交
1195
    ],
1196 1197 1198 1199
    [
        "import_column_family_test",
        "db/import_column_family_test.cc",
        "parallel",
1200 1201
        [],
        [],
1202
    ],
Y
Yi Wu 已提交
1203 1204 1205 1206
    [
        "inlineskiplist_test",
        "memtable/inlineskiplist_test.cc",
        "parallel",
1207 1208
        [],
        [],
Y
Yi Wu 已提交
1209
    ],
1210 1211 1212 1213 1214 1215 1216
    [
        "io_posix_test",
        "env/io_posix_test.cc",
        "serial",
        [],
        [],
    ],
A
Akanksha Mahajan 已提交
1217 1218 1219 1220 1221 1222 1223
    [
        "io_tracer_parser_test",
        "tools/io_tracer_parser_test.cc",
        "serial",
        [],
        [],
    ],
1224 1225 1226 1227 1228 1229 1230
    [
        "io_tracer_test",
        "trace_replay/io_tracer_test.cc",
        "serial",
        [],
        [],
    ],
Y
Yi Wu 已提交
1231 1232 1233 1234
    [
        "iostats_context_test",
        "monitoring/iostats_context_test.cc",
        "serial",
1235 1236
        [],
        [],
Y
Yi Wu 已提交
1237 1238 1239 1240 1241
    ],
    [
        "ldb_cmd_test",
        "tools/ldb_cmd_test.cc",
        "serial",
1242 1243
        [],
        [],
Y
Yi Wu 已提交
1244 1245 1246 1247 1248
    ],
    [
        "listener_test",
        "db/listener_test.cc",
        "serial",
1249 1250
        [],
        [],
Y
Yi Wu 已提交
1251 1252 1253 1254 1255
    ],
    [
        "log_test",
        "db/log_test.cc",
        "serial",
1256 1257
        [],
        [],
Y
Yi Wu 已提交
1258 1259 1260 1261 1262
    ],
    [
        "lru_cache_test",
        "cache/lru_cache_test.cc",
        "serial",
1263 1264
        [],
        [],
Y
Yi Wu 已提交
1265 1266 1267 1268 1269
    ],
    [
        "manual_compaction_test",
        "db/manual_compaction_test.cc",
        "parallel",
1270 1271
        [],
        [],
Y
Yi Wu 已提交
1272
    ],
1273 1274 1275 1276 1277 1278 1279
    [
        "memkind_kmem_allocator_test",
        "memory/memkind_kmem_allocator_test.cc",
        "serial",
        [],
        [],
    ],
Y
Yi Wu 已提交
1280 1281 1282 1283
    [
        "memory_test",
        "utilities/memory/memory_test.cc",
        "serial",
1284 1285
        [],
        [],
Y
Yi Wu 已提交
1286 1287 1288 1289 1290
    ],
    [
        "memtable_list_test",
        "db/memtable_list_test.cc",
        "serial",
1291 1292
        [],
        [],
Y
Yi Wu 已提交
1293 1294 1295 1296 1297
    ],
    [
        "merge_helper_test",
        "db/merge_helper_test.cc",
        "serial",
1298 1299
        [],
        [],
Y
Yi Wu 已提交
1300 1301 1302 1303 1304
    ],
    [
        "merge_test",
        "db/merge_test.cc",
        "serial",
1305 1306
        [],
        [],
Y
Yi Wu 已提交
1307 1308 1309 1310 1311
    ],
    [
        "merger_test",
        "table/merger_test.cc",
        "serial",
1312 1313
        [],
        [],
Y
Yi Wu 已提交
1314 1315 1316 1317 1318
    ],
    [
        "mock_env_test",
        "env/mock_env_test.cc",
        "serial",
1319 1320
        [],
        [],
Y
Yi Wu 已提交
1321 1322 1323 1324 1325
    ],
    [
        "object_registry_test",
        "utilities/object_registry_test.cc",
        "serial",
1326 1327
        [],
        [],
Y
Yi Wu 已提交
1328
    ],
S
Siying Dong 已提交
1329 1330 1331 1332
    [
        "obsolete_files_test",
        "db/obsolete_files_test.cc",
        "serial",
1333 1334
        [],
        [],
S
Siying Dong 已提交
1335
    ],
Y
Yi Wu 已提交
1336 1337 1338 1339
    [
        "optimistic_transaction_test",
        "utilities/transactions/optimistic_transaction_test.cc",
        "serial",
1340 1341
        [],
        [],
Y
Yi Wu 已提交
1342 1343 1344 1345 1346
    ],
    [
        "option_change_migration_test",
        "utilities/option_change_migration/option_change_migration_test.cc",
        "serial",
1347 1348
        [],
        [],
Y
Yi Wu 已提交
1349 1350 1351 1352 1353
    ],
    [
        "options_file_test",
        "db/options_file_test.cc",
        "serial",
1354 1355
        [],
        [],
Y
Yi Wu 已提交
1356 1357 1358 1359 1360
    ],
    [
        "options_settable_test",
        "options/options_settable_test.cc",
        "serial",
1361 1362
        [],
        [],
Y
Yi Wu 已提交
1363 1364 1365 1366 1367
    ],
    [
        "options_test",
        "options/options_test.cc",
        "serial",
1368 1369
        [],
        [],
Y
Yi Wu 已提交
1370 1371 1372 1373 1374
    ],
    [
        "options_util_test",
        "utilities/options/options_util_test.cc",
        "serial",
1375 1376
        [],
        [],
Y
Yi Wu 已提交
1377 1378 1379
    ],
    [
        "partitioned_filter_block_test",
1380
        "table/block_based/partitioned_filter_block_test.cc",
Y
Yi Wu 已提交
1381
        "serial",
1382 1383
        [],
        [],
Y
Yi Wu 已提交
1384 1385 1386 1387 1388
    ],
    [
        "perf_context_test",
        "db/perf_context_test.cc",
        "serial",
1389 1390
        [],
        [],
Y
Yi Wu 已提交
1391 1392 1393 1394 1395
    ],
    [
        "persistent_cache_test",
        "utilities/persistent_cache/persistent_cache_test.cc",
        "parallel",
1396 1397
        [],
        [],
Y
Yi Wu 已提交
1398 1399 1400 1401 1402
    ],
    [
        "plain_table_db_test",
        "db/plain_table_db_test.cc",
        "serial",
1403 1404
        [],
        [],
Y
Yi Wu 已提交
1405
    ],
1406 1407 1408 1409 1410 1411 1412
    [
        "prefetch_test",
        "file/prefetch_test.cc",
        "serial",
        [],
        [],
    ],
Y
Yi Wu 已提交
1413 1414 1415 1416
    [
        "prefix_test",
        "db/prefix_test.cc",
        "serial",
1417 1418
        [],
        [],
Y
Yi Wu 已提交
1419
    ],
1420 1421 1422 1423 1424 1425 1426
    [
        "random_access_file_reader_test",
        "file/random_access_file_reader_test.cc",
        "serial",
        [],
        [],
    ],
1427 1428 1429 1430 1431 1432 1433
    [
        "random_test",
        "util/random_test.cc",
        "serial",
        [],
        [],
    ],
Y
Yi Wu 已提交
1434 1435 1436 1437
    [
        "range_del_aggregator_test",
        "db/range_del_aggregator_test.cc",
        "serial",
1438 1439
        [],
        [],
Y
Yi Wu 已提交
1440
    ],
1441 1442 1443 1444
    [
        "range_tombstone_fragmenter_test",
        "db/range_tombstone_fragmenter_test.cc",
        "serial",
1445 1446
        [],
        [],
1447
    ],
Y
Yi Wu 已提交
1448 1449 1450 1451
    [
        "rate_limiter_test",
        "util/rate_limiter_test.cc",
        "serial",
1452 1453
        [],
        [],
Y
Yi Wu 已提交
1454 1455 1456 1457 1458
    ],
    [
        "reduce_levels_test",
        "tools/reduce_levels_test.cc",
        "serial",
1459 1460
        [],
        [],
Y
Yi Wu 已提交
1461 1462 1463 1464 1465
    ],
    [
        "repair_test",
        "db/repair_test.cc",
        "serial",
1466 1467
        [],
        [],
Y
Yi Wu 已提交
1468
    ],
1469 1470 1471 1472
    [
        "repeatable_thread_test",
        "util/repeatable_thread_test.cc",
        "serial",
1473 1474
        [],
        [],
1475
    ],
Y
Yi Wu 已提交
1476 1477 1478 1479
    [
        "sim_cache_test",
        "utilities/simulator_cache/sim_cache_test.cc",
        "serial",
1480 1481
        [],
        [],
Y
Yi Wu 已提交
1482 1483 1484 1485 1486
    ],
    [
        "skiplist_test",
        "memtable/skiplist_test.cc",
        "serial",
1487 1488
        [],
        [],
Y
Yi Wu 已提交
1489
    ],
1490 1491 1492 1493 1494 1495 1496
    [
        "slice_test",
        "util/slice_test.cc",
        "serial",
        [],
        [],
    ],
Y
Yi Wu 已提交
1497 1498 1499 1500
    [
        "slice_transform_test",
        "util/slice_transform_test.cc",
        "serial",
1501 1502
        [],
        [],
Y
Yi Wu 已提交
1503 1504 1505 1506 1507
    ],
    [
        "sst_dump_test",
        "tools/sst_dump_test.cc",
        "serial",
1508 1509
        [],
        [],
Y
Yi Wu 已提交
1510
    ],
A
anand76 已提交
1511 1512 1513 1514
    [
        "sst_file_reader_test",
        "table/sst_file_reader_test.cc",
        "serial",
1515 1516
        [],
        [],
A
anand76 已提交
1517
    ],
Y
Yi Wu 已提交
1518 1519 1520 1521
    [
        "statistics_test",
        "monitoring/statistics_test.cc",
        "serial",
1522 1523
        [],
        [],
Y
Yi Wu 已提交
1524
    ],
1525 1526 1527 1528 1529 1530 1531
    [
        "stats_dump_scheduler_test",
        "monitoring/stats_dump_scheduler_test.cc",
        "serial",
        [],
        [],
    ],
1532 1533 1534 1535
    [
        "stats_history_test",
        "monitoring/stats_history_test.cc",
        "serial",
1536 1537
        [],
        [],
1538
    ],
Y
Yi Wu 已提交
1539 1540 1541 1542
    [
        "stringappend_test",
        "utilities/merge_operators/string_append/stringappend_test.cc",
        "serial",
1543 1544
        [],
        [],
Y
Yi Wu 已提交
1545 1546 1547 1548 1549
    ],
    [
        "table_properties_collector_test",
        "db/table_properties_collector_test.cc",
        "serial",
1550 1551
        [],
        [],
Y
Yi Wu 已提交
1552 1553 1554 1555 1556
    ],
    [
        "table_test",
        "table/table_test.cc",
        "parallel",
1557 1558
        [],
        [],
Y
Yi Wu 已提交
1559
    ],
1560 1561 1562 1563 1564 1565 1566
    [
        "testutil_test",
        "test_util/testutil_test.cc",
        "serial",
        [],
        [],
    ],
Y
Yi Wu 已提交
1567 1568 1569 1570
    [
        "thread_list_test",
        "util/thread_list_test.cc",
        "serial",
1571 1572
        [],
        [],
Y
Yi Wu 已提交
1573 1574 1575 1576 1577
    ],
    [
        "thread_local_test",
        "util/thread_local_test.cc",
        "serial",
1578 1579
        [],
        [],
Y
Yi Wu 已提交
1580 1581 1582 1583 1584
    ],
    [
        "timer_queue_test",
        "util/timer_queue_test.cc",
        "serial",
1585 1586
        [],
        [],
Y
Yi Wu 已提交
1587
    ],
1588 1589 1590 1591 1592 1593 1594
    [
        "timer_test",
        "util/timer_test.cc",
        "serial",
        [],
        [],
    ],
1595 1596 1597 1598
    [
        "trace_analyzer_test",
        "tools/trace_analyzer_test.cc",
        "serial",
1599 1600
        [],
        [],
1601
    ],
1602 1603 1604 1605 1606 1607 1608
    [
        "transaction_lock_mgr_test",
        "utilities/transactions/transaction_lock_mgr_test.cc",
        "parallel",
        [],
        [],
    ],
Y
Yi Wu 已提交
1609 1610 1611 1612
    [
        "transaction_test",
        "utilities/transactions/transaction_test.cc",
        "parallel",
1613 1614
        [],
        [],
Y
Yi Wu 已提交
1615 1616 1617 1618 1619
    ],
    [
        "ttl_test",
        "utilities/ttl/ttl_test.cc",
        "serial",
1620 1621
        [],
        [],
Y
Yi Wu 已提交
1622 1623 1624 1625 1626
    ],
    [
        "util_merge_operators_test",
        "utilities/util_merge_operators_test.cc",
        "serial",
1627 1628
        [],
        [],
Y
Yi Wu 已提交
1629 1630 1631 1632 1633
    ],
    [
        "version_builder_test",
        "db/version_builder_test.cc",
        "serial",
1634 1635
        [],
        [],
Y
Yi Wu 已提交
1636 1637 1638 1639 1640
    ],
    [
        "version_edit_test",
        "db/version_edit_test.cc",
        "serial",
1641 1642
        [],
        [],
Y
Yi Wu 已提交
1643 1644 1645 1646 1647
    ],
    [
        "version_set_test",
        "db/version_set_test.cc",
        "serial",
1648 1649
        [],
        [],
Y
Yi Wu 已提交
1650 1651 1652 1653 1654
    ],
    [
        "wal_manager_test",
        "db/wal_manager_test.cc",
        "serial",
1655 1656
        [],
        [],
Y
Yi Wu 已提交
1657
    ],
1658 1659 1660 1661 1662 1663 1664
    [
        "work_queue_test",
        "util/work_queue_test.cc",
        "serial",
        [],
        [],
    ],
Y
Yi Wu 已提交
1665 1666 1667 1668
    [
        "write_batch_test",
        "db/write_batch_test.cc",
        "serial",
1669 1670
        [],
        [],
Y
Yi Wu 已提交
1671 1672 1673 1674 1675
    ],
    [
        "write_batch_with_index_test",
        "utilities/write_batch_with_index/write_batch_with_index_test.cc",
        "serial",
1676 1677
        [],
        [],
Y
Yi Wu 已提交
1678 1679 1680 1681 1682
    ],
    [
        "write_buffer_manager_test",
        "memtable/write_buffer_manager_test.cc",
        "serial",
1683 1684
        [],
        [],
Y
Yi Wu 已提交
1685 1686 1687 1688 1689
    ],
    [
        "write_callback_test",
        "db/write_callback_test.cc",
        "serial",
1690 1691
        [],
        [],
Y
Yi Wu 已提交
1692 1693 1694 1695 1696
    ],
    [
        "write_controller_test",
        "db/write_controller_test.cc",
        "serial",
1697 1698
        [],
        [],
Y
Yi Wu 已提交
1699 1700 1701 1702
    ],
    [
        "write_prepared_transaction_test",
        "utilities/transactions/write_prepared_transaction_test.cc",
1703
        "parallel",
1704 1705
        [],
        [],
Y
Yi Wu 已提交
1706
    ],
1707 1708 1709 1710
    [
        "write_unprepared_transaction_test",
        "utilities/transactions/write_unprepared_transaction_test.cc",
        "parallel",
1711 1712
        [],
        [],
1713
    ],
Y
Yi Wu 已提交
1714
]
1715 1716

# Generate a test rule for each entry in ROCKS_TESTS
Y
Yi Wu 已提交
1717 1718
# Do not build the tests in opt mode, since SyncPoint and other test code
# will not be included.
1719
[
1720 1721 1722 1723 1724
    cpp_unittest(
        name = test_name,
        srcs = [test_cc],
        arch_preprocessor_flags = ROCKSDB_ARCH_PREPROCESSOR_FLAGS,
        os_preprocessor_flags = ROCKSDB_OS_PREPROCESSOR_FLAGS,
1725
        compiler_flags = ROCKSDB_COMPILER_FLAGS + extra_compiler_flags,
1726 1727 1728 1729 1730
        preprocessor_flags = ROCKSDB_PREPROCESSOR_FLAGS,
        deps = [":rocksdb_test_lib"] + extra_deps,
        external_deps = ROCKSDB_EXTERNAL_DEPS + [
            ("googletest", None, "gtest"),
        ],
1731
    )
1732
    for test_name, test_cc, parallelism, extra_deps, extra_compiler_flags in ROCKS_TESTS
1733 1734
    if not is_opt_mode
]