-
Notifications
You must be signed in to change notification settings - Fork 3.9k
Take ha-mode into account in choosing queue master #1372
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
Conversation
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.
This looks correct but breaks queue_master_locator_SUITE
which can be executed with gmake; gmake ct-queue_master_location
.
Please add a couple of tests that limit queue replication to 2 nodes out of 3 and e.g. retrieve
next suggested node 200 times, making sure the 3rd node is never returned.
@michaelklishin on it |
@michaelklishin ready for round two |
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 still getting one cluster_size_3 > declare_policy_exactly
failure out of 5 runs:
gmake distclean; gmake
for i in {1..5}; do gmake ct-queue_master_location; done
queue_master_location_SUITE > cluster_size_3 > declare_policy_exactly
#1. {error,
{{assertEqual,
[{module,queue_master_location_SUITE},
{line,309},
{expression,"Rpc"},
{expected,{ok,'declare_policy_exactly-2@localhost'}},
{value,{ok,'declare_policy_exactly-3@localhost'}}]},
[{queue_master_location_SUITE,'-verify_min_master/3-fun-0-',2,
[{file,"test/queue_master_location_SUITE.erl"},{line,309}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1529}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1045}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,977}]}]}}
@michaelklishin OK that's good to know ... |
a6263c8
to
3abf897
Compare
@michaelklishin all set for round three. Thanks! |
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.
The node index assertion fails from time to time:
for i in {1..20}; do gmake ct-queue_master_location t=cluster_size_3:declare_policy_exactly; done
queue_master_location_SUITE > cluster_size_3 > declare_policy_exactly
#1. {error,
{{assert,
[{module,queue_master_location_SUITE},
{line,195},
{expression,"MIdx > SIdx"},
{expected,true},
{value,false}]},
[{queue_master_location_SUITE,
'-declare_policy_exactly/1-fun-2-',2,
[{file,"test/queue_master_location_SUITE.erl"},{line,195}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1529}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1045}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,977}]}]}}
@michaelklishin - yeah, on my run I thought of one other thing ... |
@michaelklishin alright, turns out some smarter behavior around the initial queue master node was needed. I was able to reproduce the failure you saw and can confirm that I can run the |
They produce more informative match failure reports.
…slave pids are started
…d by ha-mode:nodes when picking initial queue master node
cd7e8b3
to
6b1b2f2
Compare
Fixes #1371