[ 
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)

Reply via email to