Enable io_uring in stress test (#12313)

Summary:
Enable io_uring in stress test

Pull Request resolved: https://github.com/facebook/rocksdb/pull/12313

Test Plan: Crash test

Reviewed By: anand1976

Differential Revision: D53238319

Pulled By: akankshamahajan15

fbshipit-source-id: c0c8e6a6479f6977210370606e9d551c1299ba62
This commit is contained in:
Akanksha Mahajan 2024-01-31 12:37:42 -08:00 committed by Facebook GitHub Bot
parent d11584e42e
commit 95d582e0cc
5 changed files with 5 additions and 19 deletions

View File

@ -547,7 +547,7 @@ jobs:
resource_class: large resource_class: large
steps: steps:
- pre-steps - pre-steps
- run: ulimit -S -n `ulimit -H -n` && make V=1 -j8 CRASH_TEST_EXT_ARGS='--duration=960 --max_key=2500000 --use_io_uring=0' blackbox_crash_test_with_atomic_flush - run: ulimit -S -n `ulimit -H -n` && make V=1 -j8 CRASH_TEST_EXT_ARGS='--duration=960 --max_key=2500000' blackbox_crash_test_with_atomic_flush
- post-steps - post-steps
build-linux-crashtest-tiered-storage-bb: build-linux-crashtest-tiered-storage-bb:
@ -557,7 +557,7 @@ jobs:
- pre-steps - pre-steps
- run: - run:
name: "run crashtest" name: "run crashtest"
command: ulimit -S -n `ulimit -H -n` && make V=1 -j32 CRASH_TEST_EXT_ARGS='--duration=10800 --use_io_uring=0' blackbox_crash_test_with_tiered_storage command: ulimit -S -n `ulimit -H -n` && make V=1 -j32 CRASH_TEST_EXT_ARGS='--duration=10800' blackbox_crash_test_with_tiered_storage
no_output_timeout: 100m no_output_timeout: 100m
- post-steps - post-steps
@ -568,7 +568,7 @@ jobs:
- pre-steps - pre-steps
- run: - run:
name: "run crashtest" name: "run crashtest"
command: ulimit -S -n `ulimit -H -n` && make V=1 -j32 CRASH_TEST_EXT_ARGS='--duration=10800 --use_io_uring=0' whitebox_crash_test_with_tiered_storage command: ulimit -S -n `ulimit -H -n` && make V=1 -j32 CRASH_TEST_EXT_ARGS='--duration=10800' whitebox_crash_test_with_tiered_storage
no_output_timeout: 100m no_output_timeout: 100m
- post-steps - post-steps

View File

@ -352,7 +352,7 @@ jobs:
steps: steps:
- uses: actions/checkout@v4.1.0 - uses: actions/checkout@v4.1.0
- uses: "./.github/actions/pre-steps" - uses: "./.github/actions/pre-steps"
- run: ulimit -S -n `ulimit -H -n` && make V=1 -j8 CRASH_TEST_EXT_ARGS='--duration=960 --max_key=2500000 --use_io_uring=0' blackbox_crash_test_with_atomic_flush - run: ulimit -S -n `ulimit -H -n` && make V=1 -j8 CRASH_TEST_EXT_ARGS='--duration=960 --max_key=2500000' blackbox_crash_test_with_atomic_flush
- uses: "./.github/actions/post-steps" - uses: "./.github/actions/post-steps"
# ======================= Linux with Sanitizers ===================== # # ======================= Linux with Sanitizers ===================== #
build-linux-clang10-asan: build-linux-clang10-asan:

View File

@ -351,7 +351,6 @@ DECLARE_uint64(readahead_size);
DECLARE_uint64(initial_auto_readahead_size); DECLARE_uint64(initial_auto_readahead_size);
DECLARE_uint64(max_auto_readahead_size); DECLARE_uint64(max_auto_readahead_size);
DECLARE_uint64(num_file_reads_for_auto_readahead); DECLARE_uint64(num_file_reads_for_auto_readahead);
DECLARE_bool(use_io_uring);
DECLARE_bool(auto_readahead_size); DECLARE_bool(auto_readahead_size);
constexpr long KB = 1024; constexpr long KB = 1024;

View File

@ -1129,11 +1129,9 @@ DEFINE_uint64(stats_dump_period_sec,
ROCKSDB_NAMESPACE::Options().stats_dump_period_sec, ROCKSDB_NAMESPACE::Options().stats_dump_period_sec,
"Gap between printing stats to log in seconds"); "Gap between printing stats to log in seconds");
DEFINE_bool(use_io_uring, false, "Enable the use of IO uring on Posix");
DEFINE_bool(verification_only, false, DEFINE_bool(verification_only, false,
"If true, tests will only execute verification step"); "If true, tests will only execute verification step");
extern "C" bool RocksDbIOUringEnable() { return FLAGS_use_io_uring; } extern "C" bool RocksDbIOUringEnable() { return true; }
DEFINE_uint32(memtable_max_range_deletions, 0, DEFINE_uint32(memtable_max_range_deletions, 0,
"If nonzero, RocksDB will try to flush the current memtable" "If nonzero, RocksDB will try to flush the current memtable"

View File

@ -100,17 +100,6 @@ int db_stress_tool(int argc, char** argv) {
env_wrapper_guard = std::make_shared<CompositeEnvWrapper>( env_wrapper_guard = std::make_shared<CompositeEnvWrapper>(
raw_env, std::make_shared<DbStressFSWrapper>(raw_env->GetFileSystem())); raw_env, std::make_shared<DbStressFSWrapper>(raw_env->GetFileSystem()));
if (!env_opts && !FLAGS_use_io_uring) {
// If using the default Env (Posix), wrap DbStressEnvWrapper with the
// legacy EnvWrapper. This is a workaround to prevent MultiGet and scans
// from failing when IO uring is disabled. The EnvWrapper
// has a default implementation of ReadAsync that redirects to Read.
legacy_env_wrapper_guard = std::make_shared<EnvWrapper>(raw_env);
env_wrapper_guard = std::make_shared<CompositeEnvWrapper>(
legacy_env_wrapper_guard,
std::make_shared<DbStressFSWrapper>(
legacy_env_wrapper_guard->GetFileSystem()));
}
db_stress_env = env_wrapper_guard.get(); db_stress_env = env_wrapper_guard.get();
FLAGS_rep_factory = StringToRepFactory(FLAGS_memtablerep.c_str()); FLAGS_rep_factory = StringToRepFactory(FLAGS_memtablerep.c_str());