HBASE-25981 JVM crash when displaying RegionServer UI (#3364)

Signed-off-by: Duo Zhang <zhangduo@apache.org>
This commit is contained in:
Xiaolin Ha 2021-06-09 18:11:18 +08:00 committed by GitHub
parent 1654dcfbfb
commit 471e8159f0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 6 additions and 2 deletions

View File

@ -163,6 +163,7 @@ public class CallRunner {
} }
span.end(); span.end();
} }
this.status.markComplete("To send response");
// return back the RPC request read BB we can do here. It is done by now. // return back the RPC request read BB we can do here. It is done by now.
call.cleanup(); call.cleanup();
// Set the response // Set the response
@ -170,8 +171,6 @@ public class CallRunner {
CellScanner cells = resultPair != null ? resultPair.getSecond() : null; CellScanner cells = resultPair != null ? resultPair.getSecond() : null;
call.setResponse(param, cells, errorThrowable, error); call.setResponse(param, cells, errorThrowable, error);
call.sendResponseIfReady(); call.sendResponseIfReady();
this.status.markComplete("Sent response");
this.status.pause("Waiting for a call");
} catch (OutOfMemoryError e) { } catch (OutOfMemoryError e) {
if (this.rpcServer.getErrorHandler() != null) { if (this.rpcServer.getErrorHandler() != null) {
if (this.rpcServer.getErrorHandler().checkOOME(e)) { if (this.rpcServer.getErrorHandler().checkOOME(e)) {
@ -195,6 +194,11 @@ public class CallRunner {
if (!sucessful) { if (!sucessful) {
this.rpcServer.addCallSize(call.getSize() * -1); this.rpcServer.addCallSize(call.getSize() * -1);
} }
if (this.status.isRPCRunning()) {
this.status.markComplete("Call error");
}
this.status.pause("Waiting for a call");
cleanup(); cleanup();
} }
} }