Hello Jean-Daniel Cryans, Matthew Jacobs,
I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/6516
to look at the new patch set (#2).
Change subject: KUDU-1962. Fix NPE when master returns SERVER_TOO_BUSY
......................................................................
KUDU-1962. Fix NPE when master returns SERVER_TOO_BUSY
If the master's RPC queue overflows, it returns a TOO_BUSY error to the
clients. We were not properly handling this in the case of
ConnectToMaster RPCs.
This adds a new unit test which provokes the behavior by setting a short
queue and injecting latency into tablet location lookups while starting
several threads which make clients and perform lookups. This also fixes
the issue by reverting back to passing the placeholder 'masterTable'
into these RPCs.
Longer term we should avoid this 'masterTable' hack, since the master is
not a table, but given that this causes serious problems, a more
targeted fix is desirable for 1.3.1 and 1.4.0.
Change-Id: Ic4aba2e39f05488da500c18247c72181c8e9dceb
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
M java/kudu-client/src/main/java/org/apache/kudu/client/ConnectToCluster.java
M
java/kudu-client/src/main/java/org/apache/kudu/client/ConnectToMasterRequest.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduClient.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduRpc.java
M java/kudu-client/src/test/java/org/apache/kudu/client/BaseKuduTest.java
A java/kudu-client/src/test/java/org/apache/kudu/client/TestHandleTooBusy.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestMasterFailover.java
8 files changed, 145 insertions(+), 34 deletions(-)
git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/16/6516/2
--
To view, visit http://gerrit.cloudera.org:8080/6516
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ic4aba2e39f05488da500c18247c72181c8e9dceb
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Todd Lipcon <[email protected]>
Gerrit-Reviewer: Jean-Daniel Cryans <[email protected]>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Matthew Jacobs <[email protected]>
Gerrit-Reviewer: Todd Lipcon <[email protected]>