Feat support win64 (vcpkg+CMake) for rocksdb#8
Conversation
e.g. len(k), len(v) = 8B, 24B: -p fixedkey8b=true -p fixedfieldlen=true -p fieldcount=1 -p fieldlength=24
YCSB-cpp can now be built on windows, using vcpkg and CMake. See README.md for usage.
|
The PR is not intended to merge into this repo. Sorry for the missing. I'll close the PR. |
|
Looks great. :) |
Thanks. Yes, I observed I tried this change: // countdown_latch.h:26
return cv_.wait_for(lock, std::chrono::seconds(timeout_sec), [this]{return count_ <= 0;});
// return cv_.wait_for(lock, std::chrono::seconds(timeout_sec)) == std::cv_status::no_timeout;I run the test another 5 times and the problem didn't appear. I cannot explain why. Is this a coincide? Am I missing something? |
|
CV is notified only when all ClientThread are terminated, so I think StatusThread should not wake up for reason other than timeout. Still, it might be safe to check the count after wake up. |
You're right. We need to check the count on windows. and from cplusplus/wait_for :
|
|
Thanks! I didn't know that since I've never tested it in a Windows environment. I'll fix it soon, or please feel free to submit PR. |
OK. I've run heavy tests(1G record count and 100M opcount) with rocksdb on windows all day today. It seems there's no problem. |
YCSB-cpp can now be built on windows, using vcpkg and CMake.
See README.md for usage.