Xiaolin Ha created HBASE-26087:
----------------------------------
Summary: JVM crash when displaying RPC params by
MonitoredRPCHandler
Key: HBASE-26087
URL: https://issues.apache.org/jira/browse/HBASE-26087
Project: HBase
Issue Type: Bug
Components: UI
Affects Versions: 2.0.0, 3.0.0-alpha-1
Reporter: Xiaolin Ha
Assignee: Xiaolin Ha
It is the same problem as HBASE-25981.
The reason here is MonitoredRPCHandlerImpl uses the shallow copy of call param
to displaying RPC info, but the param contains offheap request data. Thought
when calling toMap() there is state checking for the monitored RPC, only
RUNNING RPCs can read and display params, the state is ENUM type and like a
constant in clone().
So there exists circumstances that the state in the clone MonitoredRPCHandler
is RUNNING, but the param still refers to the cloned MonitoredRPCHandler, whose
state changed to be not RUNNING and param referred offheap ByteBuffer is
released.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)