Skip to content

Commit fa43a41

Browse files
author
MarcoFalke
committed
bench_bitcoin: Avoid read/write to default datadir
1 parent ea80b81 commit fa43a41

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

src/bench/bench_bitcoin.cpp

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,14 @@ static void SetupBenchArgs()
3838
gArgs.AddArg("-help", "", false, OptionsCategory::HIDDEN);
3939
}
4040

41+
static fs::path SetDataDir()
42+
{
43+
fs::path ret = fs::temp_directory_path() / "bench_bitcoin" / fs::unique_path();
44+
fs::create_directories(ret);
45+
gArgs.ForceSetArg("-datadir", ret.string());
46+
return ret;
47+
}
48+
4149
int main(int argc, char** argv)
4250
{
4351
SetupBenchArgs();
@@ -53,6 +61,9 @@ int main(int argc, char** argv)
5361
return EXIT_SUCCESS;
5462
}
5563

64+
// Set the datadir after parsing the bench options
65+
const fs::path bench_datadir{SetDataDir()};
66+
5667
SHA256AutoDetect();
5768
RandomInit();
5869
ECC_Start();
@@ -80,6 +91,8 @@ int main(int argc, char** argv)
8091

8192
benchmark::BenchRunner::RunAll(*printer, evaluations, scaling_factor, regex_filter, is_list_only);
8293

94+
fs::remove_all(bench_datadir);
95+
8396
ECC_Stop();
8497

8598
return EXIT_SUCCESS;

0 commit comments

Comments
 (0)