[ https://issues.apache.org/jira/browse/HBASE-26087?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Xiaolin Ha resolved HBASE-26087. -------------------------------- Fix Version/s: 2.3.7 2.4.6 3.0.0-alpha-2 2.5.0 Resolution: Fixed Merged to master and branch2.3+. Thanks [~stack] for reviewing. Branch master has an addendum for a findbugs fix. > 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: 3.0.0-alpha-1, 2.0.0 > Reporter: Xiaolin Ha > Assignee: Xiaolin Ha > Priority: Major > Fix For: 2.5.0, 3.0.0-alpha-2, 2.4.6, 2.3.7 > > > 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)