fix several MSVC build errors (#8519)
Summary: Fixed a few MSVC (VCToolsVersion=14.0) build errors and warnings * `DEFINE_string` is a macro and VC compiler complains that it cannot put [ifdef-inside-define](https://stackoverflow.com/questions/5586429/ifdef-inside-define) * `sleep()` is not a recognizable function. Use `FLAGS_env->SleepForMicroseconds` instead * Define precise type in comparison to avoid mismatch warning Pull Request resolved: https://github.com/facebook/rocksdb/pull/8519 Reviewed By: jay-zhuang Differential Revision: D29683086 fbshipit-source-id: 8c80941472089f8daba84ae29597e75e603850e4
This commit is contained in:
parent
e8e911a11c
commit
7b9ecd4067
@ -96,6 +96,7 @@ using GFLAGS_NAMESPACE::ParseCommandLineFlags;
|
||||
using GFLAGS_NAMESPACE::RegisterFlagValidator;
|
||||
using GFLAGS_NAMESPACE::SetUsageMessage;
|
||||
|
||||
#ifndef ROCKSDB_LITE
|
||||
DEFINE_string(
|
||||
benchmarks,
|
||||
"fillseq,"
|
||||
@ -115,11 +116,9 @@ DEFINE_string(
|
||||
"compact,"
|
||||
"compactall,"
|
||||
"flush,"
|
||||
#ifndef ROCKSDB_LITE
|
||||
"compact0,"
|
||||
"compact1,"
|
||||
"waitforcompaction,"
|
||||
#endif
|
||||
"multireadrandom,"
|
||||
"mixgraph,"
|
||||
"readseq,"
|
||||
@ -209,11 +208,9 @@ DEFINE_string(
|
||||
"Meta operations:\n"
|
||||
"\tcompact -- Compact the entire DB; If multiple, randomly choose one\n"
|
||||
"\tcompactall -- Compact the entire DB\n"
|
||||
#ifndef ROCKSDB_LITE
|
||||
"\tcompact0 -- compact L0 into L1\n"
|
||||
"\tcompact1 -- compact L1 into L2\n"
|
||||
"\twaitforcompaction - pause until compaction is (probably) done\n"
|
||||
#endif
|
||||
"\tflush - flush the memtable\n"
|
||||
"\tstats -- Print DB stats\n"
|
||||
"\tresetstats -- Reset DB stats\n"
|
||||
@ -228,6 +225,130 @@ DEFINE_string(
|
||||
"by doing a Get followed by binary searching in the large sorted list vs "
|
||||
"doing a GetMergeOperands and binary searching in the operands which are"
|
||||
"sorted sub-lists. The MergeOperator used is sortlist.h\n");
|
||||
#else
|
||||
DEFINE_string(
|
||||
benchmarks,
|
||||
"fillseq,"
|
||||
"fillseqdeterministic,"
|
||||
"fillsync,"
|
||||
"fillrandom,"
|
||||
"filluniquerandomdeterministic,"
|
||||
"overwrite,"
|
||||
"readrandom,"
|
||||
"newiterator,"
|
||||
"newiteratorwhilewriting,"
|
||||
"seekrandom,"
|
||||
"seekrandomwhilewriting,"
|
||||
"seekrandomwhilemerging,"
|
||||
"readseq,"
|
||||
"readreverse,"
|
||||
"compact,"
|
||||
"compactall,"
|
||||
"flush,"
|
||||
"multireadrandom,"
|
||||
"mixgraph,"
|
||||
"readseq,"
|
||||
"readtorowcache,"
|
||||
"readtocache,"
|
||||
"readreverse,"
|
||||
"readwhilewriting,"
|
||||
"readwhilemerging,"
|
||||
"readwhilescanning,"
|
||||
"readrandomwriterandom,"
|
||||
"updaterandom,"
|
||||
"xorupdaterandom,"
|
||||
"approximatesizerandom,"
|
||||
"randomwithverify,"
|
||||
"fill100K,"
|
||||
"crc32c,"
|
||||
"xxhash,"
|
||||
"compress,"
|
||||
"uncompress,"
|
||||
"acquireload,"
|
||||
"fillseekseq,"
|
||||
"randomtransaction,"
|
||||
"randomreplacekeys,"
|
||||
"timeseries,"
|
||||
"getmergeoperands",
|
||||
|
||||
"Comma-separated list of operations to run in the specified"
|
||||
" order. Available benchmarks:\n"
|
||||
"\tfillseq -- write N values in sequential key"
|
||||
" order in async mode\n"
|
||||
"\tfillseqdeterministic -- write N values in the specified"
|
||||
" key order and keep the shape of the LSM tree\n"
|
||||
"\tfillrandom -- write N values in random key order in async"
|
||||
" mode\n"
|
||||
"\tfilluniquerandomdeterministic -- write N values in a random"
|
||||
" key order and keep the shape of the LSM tree\n"
|
||||
"\toverwrite -- overwrite N values in random key order in"
|
||||
" async mode\n"
|
||||
"\tfillsync -- write N/1000 values in random key order in "
|
||||
"sync mode\n"
|
||||
"\tfill100K -- write N/1000 100K values in random order in"
|
||||
" async mode\n"
|
||||
"\tdeleteseq -- delete N keys in sequential order\n"
|
||||
"\tdeleterandom -- delete N keys in random order\n"
|
||||
"\treadseq -- read N times sequentially\n"
|
||||
"\treadtocache -- 1 thread reading database sequentially\n"
|
||||
"\treadreverse -- read N times in reverse order\n"
|
||||
"\treadrandom -- read N times in random order\n"
|
||||
"\treadmissing -- read N missing keys in random order\n"
|
||||
"\treadwhilewriting -- 1 writer, N threads doing random "
|
||||
"reads\n"
|
||||
"\treadwhilemerging -- 1 merger, N threads doing random "
|
||||
"reads\n"
|
||||
"\treadwhilescanning -- 1 thread doing full table scan, "
|
||||
"N threads doing random reads\n"
|
||||
"\treadrandomwriterandom -- N threads doing random-read, "
|
||||
"random-write\n"
|
||||
"\tupdaterandom -- N threads doing read-modify-write for random "
|
||||
"keys\n"
|
||||
"\txorupdaterandom -- N threads doing read-XOR-write for "
|
||||
"random keys\n"
|
||||
"\tappendrandom -- N threads doing read-modify-write with "
|
||||
"growing values\n"
|
||||
"\tmergerandom -- same as updaterandom/appendrandom using merge"
|
||||
" operator. "
|
||||
"Must be used with merge_operator\n"
|
||||
"\treadrandommergerandom -- perform N random read-or-merge "
|
||||
"operations. Must be used with merge_operator\n"
|
||||
"\tnewiterator -- repeated iterator creation\n"
|
||||
"\tseekrandom -- N random seeks, call Next seek_nexts times "
|
||||
"per seek\n"
|
||||
"\tseekrandomwhilewriting -- seekrandom and 1 thread doing "
|
||||
"overwrite\n"
|
||||
"\tseekrandomwhilemerging -- seekrandom and 1 thread doing "
|
||||
"merge\n"
|
||||
"\tcrc32c -- repeated crc32c of 4K of data\n"
|
||||
"\txxhash -- repeated xxHash of 4K of data\n"
|
||||
"\tacquireload -- load N*1000 times\n"
|
||||
"\tfillseekseq -- write N values in sequential key, then read "
|
||||
"them by seeking to each key\n"
|
||||
"\trandomtransaction -- execute N random transactions and "
|
||||
"verify correctness\n"
|
||||
"\trandomreplacekeys -- randomly replaces N keys by deleting "
|
||||
"the old version and putting the new version\n\n"
|
||||
"\ttimeseries -- 1 writer generates time series data "
|
||||
"and multiple readers doing random reads on id\n\n"
|
||||
"Meta operations:\n"
|
||||
"\tcompact -- Compact the entire DB; If multiple, randomly choose one\n"
|
||||
"\tcompactall -- Compact the entire DB\n"
|
||||
"\tflush - flush the memtable\n"
|
||||
"\tstats -- Print DB stats\n"
|
||||
"\tresetstats -- Reset DB stats\n"
|
||||
"\tlevelstats -- Print the number of files and bytes per level\n"
|
||||
"\tmemstats -- Print memtable stats\n"
|
||||
"\tsstables -- Print sstable info\n"
|
||||
"\theapprofile -- Dump a heap profile (if supported by this port)\n"
|
||||
"\treplay -- replay the trace file specified with trace_file\n"
|
||||
"\tgetmergeoperands -- Insert lots of merge records which are a list of "
|
||||
"sorted ints for a key and then compare performance of lookup for another "
|
||||
"key "
|
||||
"by doing a Get followed by binary searching in the large sorted list vs "
|
||||
"doing a GetMergeOperands and binary searching in the operands which are"
|
||||
"sorted sub-lists. The MergeOperator used is sortlist.h\n");
|
||||
#endif
|
||||
|
||||
DEFINE_int64(num, 1000000, "Number of key/values to place in database");
|
||||
|
||||
@ -7459,7 +7580,7 @@ class Benchmark {
|
||||
fprintf(stdout,
|
||||
"waitforcompaction(%s): active(%s). Sleep 10 seconds\n",
|
||||
db.db->GetName().c_str(), k.c_str());
|
||||
sleep(10);
|
||||
FLAGS_env->SleepForMicroseconds(10 * 1000000);
|
||||
retry = true;
|
||||
break;
|
||||
}
|
||||
@ -7475,7 +7596,7 @@ class Benchmark {
|
||||
|
||||
void WaitForCompaction() {
|
||||
// Give background threads a chance to wake
|
||||
sleep(5);
|
||||
FLAGS_env->SleepForMicroseconds(5 * 1000000);
|
||||
|
||||
// I am skeptical that this check race free. I hope that checking twice
|
||||
// reduces the chance.
|
||||
|
@ -689,7 +689,7 @@ TEST_P(FullBloomTest, Schema) {
|
||||
BloomHash(FilterData()),
|
||||
SelectByCacheLineSize(1567096579, 1964771444, 2659542661U));
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 3817481309U);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1705851228);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1705851228U);
|
||||
|
||||
EXPECT_EQ_FastBloom("11,13,17,25,29,30,35,37,45,53", FirstFPs(10));
|
||||
EXPECT_EQ_Ribbon("3,8,10,17,19,20,23,28,31,32", FirstFPs(10));
|
||||
@ -706,7 +706,7 @@ TEST_P(FullBloomTest, Schema) {
|
||||
BloomHash(FilterData()),
|
||||
SelectByCacheLineSize(2707206547U, 2571983456U, 218344685));
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 2807269961U);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1095342358);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1095342358U);
|
||||
|
||||
EXPECT_EQ_FastBloom("4,15,17,24,27,28,29,53,63,70", FirstFPs(10));
|
||||
EXPECT_EQ_Ribbon("3,17,20,28,32,33,36,43,49,54", FirstFPs(10));
|
||||
@ -722,7 +722,7 @@ TEST_P(FullBloomTest, Schema) {
|
||||
EXPECT_EQ_LegacyBloom(
|
||||
BloomHash(FilterData()),
|
||||
SelectByCacheLineSize(515748486, 94611728, 2436112214U));
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 204628445);
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 204628445U);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 3971337699U);
|
||||
|
||||
EXPECT_EQ_FastBloom("15,24,29,39,53,87,89,100,103,104", FirstFPs(10));
|
||||
@ -739,7 +739,7 @@ TEST_P(FullBloomTest, Schema) {
|
||||
EXPECT_EQ_LegacyBloom(
|
||||
BloomHash(FilterData()),
|
||||
SelectByCacheLineSize(1302145999, 2811644657U, 756553699));
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 355564975);
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 355564975U);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 3651449053U);
|
||||
|
||||
EXPECT_EQ_FastBloom("16,60,66,126,220,238,244,256,265,287", FirstFPs(10));
|
||||
@ -757,7 +757,7 @@ TEST_P(FullBloomTest, Schema) {
|
||||
BloomHash(FilterData()),
|
||||
SelectByCacheLineSize(2092755149, 661139132, 1182970461));
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 2137566013U);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1005676675);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1005676675U);
|
||||
|
||||
EXPECT_EQ_FastBloom("156,367,791,872,945,1015,1139,1159,1265", FirstFPs(9));
|
||||
EXPECT_EQ_Ribbon("33,187,203,296,411,419,604,612,615,619", FirstFPs(10));
|
||||
@ -798,7 +798,7 @@ TEST_P(FullBloomTest, Schema) {
|
||||
BloomHash(FilterData()),
|
||||
SelectByCacheLineSize(178861123, 379087593, 2574136516U));
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 3709876890U);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1855638875);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1855638875U);
|
||||
|
||||
EXPECT_EQ_FastBloom("130,240,522,565,989,2002,2526,3147,3543", FirstFPs(9));
|
||||
EXPECT_EQ_Ribbon("665,727,1323,1755,3866,4232,4442,4492,4736", FirstFPs(9));
|
||||
@ -820,8 +820,8 @@ TEST_P(FullBloomTest, Schema) {
|
||||
EXPECT_EQ_LegacyBloom(
|
||||
BloomHash(FilterData()),
|
||||
SelectByCacheLineSize(1129406313, 3049154394U, 1727750964));
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 1087138490);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 459379967);
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 1087138490U);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 459379967U);
|
||||
|
||||
EXPECT_EQ_FastBloom("3299,3611,3916,6620,7822,8079,8482,8942", FirstFPs(8));
|
||||
EXPECT_EQ_Ribbon("727,1323,1755,4442,4736,5386,6974,7154,8222", FirstFPs(9));
|
||||
@ -838,7 +838,7 @@ TEST_P(FullBloomTest, Schema) {
|
||||
BloomHash(FilterData()),
|
||||
SelectByCacheLineSize(1478976371, 2910591341U, 1182970461));
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 2498541272U);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1273231667);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1273231667U);
|
||||
|
||||
EXPECT_EQ_FastBloom("16,126,133,422,466,472,813,1002,1035", FirstFPs(9));
|
||||
EXPECT_EQ_Ribbon("296,411,419,612,619,623,630,665,686,727", FirstFPs(10));
|
||||
@ -871,8 +871,8 @@ TEST_P(FullBloomTest, Schema) {
|
||||
EXPECT_EQ_LegacyBloom(
|
||||
BloomHash(FilterData()),
|
||||
SelectByCacheLineSize(2885052954U, 769447944, 4175124908U));
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 23699164);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1942323379);
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 23699164U);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1942323379U);
|
||||
|
||||
EXPECT_EQ_FastBloom("16,126,133,422,466,472,813,1002,1035", FirstFPs(9));
|
||||
EXPECT_EQ_Ribbon("33,95,360,589,737,911,990,1048,1081,1414", FirstFPs(10));
|
||||
@ -892,7 +892,7 @@ TEST_P(FullBloomTest, Schema) {
|
||||
BloomHash(FilterData()),
|
||||
/*SAME*/ SelectByCacheLineSize(2885052954U, 769447944, 4175124908U));
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 3166884174U);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1148258663);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 1148258663U);
|
||||
|
||||
EXPECT_EQ_FastBloom("126,156,367,444,458,791,813,976,1015", FirstFPs(9));
|
||||
EXPECT_EQ_Ribbon("33,54,95,360,589,693,737,911,990,1048", FirstFPs(10));
|
||||
@ -910,7 +910,7 @@ TEST_P(FullBloomTest, Schema) {
|
||||
BloomHash(FilterData()),
|
||||
/*SAME*/ SelectByCacheLineSize(2885052954U, 769447944, 4175124908U));
|
||||
EXPECT_EQ_FastBloom(BloomHash(FilterData()), 4098502778U);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 792138188);
|
||||
EXPECT_EQ_Ribbon(BloomHash(FilterData()), 792138188U);
|
||||
|
||||
EXPECT_EQ_FastBloom("16,236,240,472,1015,1045,1111,1409,1465", FirstFPs(9));
|
||||
EXPECT_EQ_Ribbon("33,95,360,589,737,990,1048,1081,1414,1643", FirstFPs(10));
|
||||
|
Loading…
Reference in New Issue
Block a user