-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable emulated multi-node testing in CI #141
Conversation
Pull Request Test Coverage Report for Build 624790611
💛 - Coveralls |
I'm going to remove the global mutex and implement Hari's single-RPC suggestion. I'll open a new PR. |
I've changed my mind. I'm reopening this PR because the RPC refactor to avoid global mutexes will be somewhat significant. I'd rather focus on getting the automated cluster testing in now, and have a separate branch for the RPC work. |
* Should only be accessed via BeginGlobalTicketMutex() and | ||
* EndGlobalTicketMutex(). | ||
*/ | ||
TicketMutex global_mutex; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am thinking if mutex can be named with the desired operation, for example, global_***_mutex
for better understanding. Current local mutex is named as blob_***
, bucket_***
, vbucket_***
. It might be better name the global mutex the same way with global_
prefix.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can change it if you want, but I plan on removing the global mutex altogether in my next PR. This is temporary just to get the multi-node testing code into the repo.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see. That's sounds good.
Closes #116.
For local cluster emulation:
Currently this only runs
test/end_to_end_test.cc
on 2 nodes, but in the future I plan to integrate this into a custom CMake target to make it easy to run any test on the cluster. We can add a whole suite of cluster tests.GetOrCreateBucketId
.