[
https://issues.apache.org/jira/browse/HBASE-29323?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Nihal Jain resolved HBASE-29323.
--------------------------------
Hadoop Flags: Reviewed
Resolution: Fixed
Merged to code base. Pushed to branch-2.6+. Please let me know if should pull
to branch-2.5 also?
Thank you [~umesh9414] for the contribution. Thank you [~zhangduo], [~vjasani],
[~mnpoonia] for the reviews.
> Use Priority Handler for all RegionServerStatus rpc at Master
> -------------------------------------------------------------
>
> Key: HBASE-29323
> URL: https://issues.apache.org/jira/browse/HBASE-29323
> Project: HBase
> Issue Type: Improvement
> Components: master
> Affects Versions: 2.6.2
> Reporter: Umesh Kumar Kumawat
> Assignee: Umesh Kumar Kumawat
> Priority: Major
> Labels: pull-request-available
> Fix For: 2.7.0, 3.0.0-beta-2, 2.6.3
>
>
> There are two main reasons to use the Priority Handler:
> 1. These reports like report for splitWalProcedure are critical for
> completing region movements and ensuring availability. Any delay in reporting
> can directly impact system availability.
> *2. Preventing Deadlocks on simultaneous Region Server Draining and
> serverCrash:*
> When draining a Region Server, the {{MoveWithAck}} API is used. This API
> waits for the {{TRSP}} to complete. If multiple Region Servers are drained
> simultaneously, all general handler threads can become occupied.
> If the draining server get crashed during this period, we will first do wal
> split. All the above moving rpc leaves no threads available to process
> `reportProcedureDone` for splitWALProcedure, resulting in a deadlock that
> blocks SCP from completing.
> Using a Priority Handler ensures that critical operations like state
> transitions are not blocked by general handler saturation.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)