HBASE-8719 Fix responseTooSlow formatting

git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1514036 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Jean-Daniel Cryans 2013-08-14 20:48:54 +00:00
parent 50c3e3a6da
commit 17c120f08c
4 changed files with 26 additions and 5 deletions

View File

@ -2227,10 +2227,29 @@ public final class ProtobufUtil {
return TextFormat.shortDebugString(m);
} else if (m instanceof MutationProto) {
return toShortString((MutationProto)m);
} else if (m instanceof GetRequest) {
GetRequest r = (GetRequest) m;
return "region= " + getStringForByteString(r.getRegion().getValue()) +
", row=" + getStringForByteString(r.getGet().getRow());
} else if (m instanceof ClientProtos.MultiRequest) {
ClientProtos.MultiRequest r = (ClientProtos.MultiRequest) m;
ClientProtos.MultiAction action = r.getActionList().get(0);
return "region= " + getStringForByteString(r.getRegion().getValue()) +
", for " + r.getActionCount() +
" actions and 1st row key=" + getStringForByteString(action.hasMutation() ?
action.getMutation().getRow() : action.getGet().getRow());
} else if (m instanceof ClientProtos.MutateRequest) {
ClientProtos.MutateRequest r = (ClientProtos.MutateRequest) m;
return "region= " + getStringForByteString(r.getRegion().getValue()) +
", row=" + getStringForByteString(r.getMutation().getRow());
}
return "TODO: " + m.getClass().toString();
}
private static String getStringForByteString(ByteString bs) {
return Bytes.toStringBinary(bs.toByteArray());
}
/**
* Print out some subset of a MutationProto rather than all of it and its data
* @param proto Protobuf to print out

View File

@ -24,5 +24,5 @@ public interface RpcCallContext extends Delayable {
* If called from outside the context of IPC, this does nothing.
* @throws CallerDisconnectedException
*/
void throwExceptionIfCallerDisconnected() throws CallerDisconnectedException;
void throwExceptionIfCallerDisconnected(String regionName) throws CallerDisconnectedException;
}

View File

@ -437,12 +437,14 @@ public class RpcServer implements RpcServerInterface {
}
@Override
public void throwExceptionIfCallerDisconnected() throws CallerDisconnectedException {
public void throwExceptionIfCallerDisconnected(String regionName)
throws CallerDisconnectedException {
if (!connection.channel.isOpen()) {
long afterTime = System.currentTimeMillis() - timestamp;
throw new CallerDisconnectedException(
"Aborting call " + this + " after " + afterTime + " ms, since " +
"caller disconnected");
"Aborting on region " + regionName + ", call " +
this + " after " + afterTime + " ms, since " +
"caller disconnected");
}
}

View File

@ -3607,7 +3607,7 @@ public class HRegion implements HeapSize { // , Writable{
// client might time out and disconnect while the server side
// is still processing the request. We should abort aggressively
// in that case.
rpcCall.throwExceptionIfCallerDisconnected();
rpcCall.throwExceptionIfCallerDisconnected(getRegionNameAsString());
}
// Let's see what we have in the storeHeap.