Repository: kudu Updated Branches: refs/heads/master 2eba7001a -> 9badc5003
[mini-cluster] allow more time for masters start up In case of sanitizer-enabled builds running on slow VMs it might take more than 5 seconds to start Kudu master. This patch is to fix master_cert_authority-itest flakiness. Change-Id: Ic3dd9aa9c1620d69b6ae4a877912e5d63e4d5a85 Reviewed-on: http://gerrit.cloudera.org:8080/6571 Reviewed-by: Adar Dembo <[email protected]> Tested-by: Kudu Jenkins Project: http://git-wip-us.apache.org/repos/asf/kudu/repo Commit: http://git-wip-us.apache.org/repos/asf/kudu/commit/9badc500 Tree: http://git-wip-us.apache.org/repos/asf/kudu/tree/9badc500 Diff: http://git-wip-us.apache.org/repos/asf/kudu/diff/9badc500 Branch: refs/heads/master Commit: 9badc5003adc6312469c9256b34f325a74bedb24 Parents: 2eba700 Author: Alexey Serbin <[email protected]> Authored: Thu Apr 6 14:30:02 2017 -0700 Committer: Alexey Serbin <[email protected]> Committed: Thu Apr 6 22:33:39 2017 +0000 ---------------------------------------------------------------------- src/kudu/integration-tests/mini_cluster.cc | 10 +++++----- src/kudu/integration-tests/mini_cluster.h | 1 + 2 files changed, 6 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kudu/blob/9badc500/src/kudu/integration-tests/mini_cluster.cc ---------------------------------------------------------------------- diff --git a/src/kudu/integration-tests/mini_cluster.cc b/src/kudu/integration-tests/mini_cluster.cc index c910502..549d2f2 100644 --- a/src/kudu/integration-tests/mini_cluster.cc +++ b/src/kudu/integration-tests/mini_cluster.cc @@ -299,10 +299,11 @@ Status MiniCluster::CreateClient(KuduClientBuilder* builder, } Status MiniCluster::GetLeaderMasterIndex(int* idx) const { - const MonoTime kDeadline = MonoTime::Now() + MonoDelta::FromSeconds(5); + const MonoTime deadline = MonoTime::Now() + + MonoDelta::FromSeconds(kMasterStartupWaitTimeSeconds); int leader_idx = -1; - while (MonoTime::Now() < kDeadline) { + while (MonoTime::Now() < deadline) { for (int i = 0; i < num_masters(); i++) { master::MiniMaster* mm = mini_master(i); if (!mm->is_running() || mm->master()->IsShutdown()) { @@ -315,11 +316,10 @@ Status MiniCluster::GetLeaderMasterIndex(int* idx) const { break; } } - if (leader_idx == -1) { - SleepFor(MonoDelta::FromMilliseconds(100)); - } else { + if (leader_idx != -1) { break; } + SleepFor(MonoDelta::FromMilliseconds(100)); } if (leader_idx == -1) { return Status::NotFound("Leader master was not found within deadline"); http://git-wip-us.apache.org/repos/asf/kudu/blob/9badc500/src/kudu/integration-tests/mini_cluster.h ---------------------------------------------------------------------- diff --git a/src/kudu/integration-tests/mini_cluster.h b/src/kudu/integration-tests/mini_cluster.h index cf49aee..a372e48 100644 --- a/src/kudu/integration-tests/mini_cluster.h +++ b/src/kudu/integration-tests/mini_cluster.h @@ -169,6 +169,7 @@ class MiniCluster : public MiniClusterBase { private: enum { kRegistrationWaitTimeSeconds = 15, + kMasterStartupWaitTimeSeconds = 30, }; bool running_;
