You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by mp...@apache.org on 2016/08/30 06:25:36 UTC

[3/3] kudu git commit: raft_consensus-itest: workaround flakiness due to KUDU-1580

raft_consensus-itest: workaround flakiness due to KUDU-1580

KUDU-1580 is a bug in which the client doesn't properly fail over in the
case that the RPC connection negotiation times out. In the
MultiThreadedInsertWithFailovers test case, the client is frequently
timing out with such errors causing flakiness.

This workaround just bumps the connection negotiation timeout.

Change-Id: If8f375654b954701ab8d23c07bd133ba393e222d
Reviewed-on: http://gerrit.cloudera.org:8080/4142
Tested-by: Kudu Jenkins
Reviewed-by: Mike Percy <mp...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/kudu/repo
Commit: http://git-wip-us.apache.org/repos/asf/kudu/commit/0d18a0b0
Tree: http://git-wip-us.apache.org/repos/asf/kudu/tree/0d18a0b0
Diff: http://git-wip-us.apache.org/repos/asf/kudu/diff/0d18a0b0

Branch: refs/heads/master
Commit: 0d18a0b026f850ded6647814e63183d897616535
Parents: 5e36848
Author: Todd Lipcon <to...@apache.org>
Authored: Fri Aug 26 17:37:42 2016 -0700
Committer: Mike Percy <mp...@apache.org>
Committed: Tue Aug 30 06:25:06 2016 +0000

----------------------------------------------------------------------
 src/kudu/integration-tests/raft_consensus-itest.cc | 5 +++++
 1 file changed, 5 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kudu/blob/0d18a0b0/src/kudu/integration-tests/raft_consensus-itest.cc
----------------------------------------------------------------------
diff --git a/src/kudu/integration-tests/raft_consensus-itest.cc b/src/kudu/integration-tests/raft_consensus-itest.cc
index 9fc74ef..387c048 100644
--- a/src/kudu/integration-tests/raft_consensus-itest.cc
+++ b/src/kudu/integration-tests/raft_consensus-itest.cc
@@ -50,6 +50,7 @@ DEFINE_int64(client_inserts_per_thread, 50,
 DEFINE_int64(client_num_batches_per_thread, 5,
              "In how many batches to group the rows, for each client");
 DECLARE_int32(consensus_rpc_timeout_ms);
+DECLARE_int64(rpc_negotiation_timeout_ms);
 
 METRIC_DECLARE_entity(tablet);
 METRIC_DECLARE_counter(transaction_memory_pressure_rejections);
@@ -932,6 +933,10 @@ TEST_F(RaftConsensusITest, MultiThreadedInsertWithFailovers) {
   // Reset consensus rpc timeout to the default value or the election might fail often.
   FLAGS_consensus_rpc_timeout_ms = 1000;
 
+  // TODO(KUDU-1580): this test seems to frequently trigger RPC negotiation timeouts,
+  // and the client doesn't properly fail over in this case.
+  FLAGS_rpc_negotiation_timeout_ms = 10000;
+
   // Start a 7 node configuration cluster (since we can't bring leaders back we start with a
   // higher replica count so that we kill more leaders).