You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ap...@apache.org on 2023/06/28 19:08:02 UTC

[hbase] branch master updated: HBASE-27951 Use ADMIN_QOS in MasterRpcServices for regionserver operational dependencies (#5309)

This is an automated email from the ASF dual-hosted git repository.

apurtell pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/master by this push:
     new 9e8e43864ce HBASE-27951 Use ADMIN_QOS in MasterRpcServices for regionserver operational dependencies (#5309)
9e8e43864ce is described below

commit 9e8e43864ce5cd47751c23574a4cc407962617bd
Author: Andrew Purtell <ap...@apache.org>
AuthorDate: Wed Jun 28 12:07:55 2023 -0700

    HBASE-27951 Use ADMIN_QOS in MasterRpcServices for regionserver operational dependencies (#5309)
    
    It seems not correct to have the MasterRpcServices methods for direct
    regionserver<->master communication (regionServerStartup, regionServerReport,
    and reportFatalRSError) contending with normal priority requests. They
    should be made ADMIN_QOS priority to avoid potential operational deadlocks.
    
    Signed-off-by: Duo Zhang <zh...@apache.org>
    Signed-off-by: Viraj Jasani <vj...@apache.org>
    Reviewed-by: Aman Poonia <am...@gmail.com>
---
 .../main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java    | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java
index a2d5e8a16ec..2e416f5e1a0 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java
@@ -618,6 +618,7 @@ public class MasterRpcServices extends HBaseRpcServicesBase<HMaster>
   }
 
   @Override
+  @QosPriority(priority = HConstants.ADMIN_QOS)
   public RegionServerReportResponse regionServerReport(RpcController controller,
     RegionServerReportRequest request) throws ServiceException {
     try {
@@ -653,6 +654,7 @@ public class MasterRpcServices extends HBaseRpcServicesBase<HMaster>
   }
 
   @Override
+  @QosPriority(priority = HConstants.ADMIN_QOS)
   public RegionServerStartupResponse regionServerStartup(RpcController controller,
     RegionServerStartupRequest request) throws ServiceException {
     // Register with server manager
@@ -684,6 +686,7 @@ public class MasterRpcServices extends HBaseRpcServicesBase<HMaster>
   }
 
   @Override
+  @QosPriority(priority = HConstants.ADMIN_QOS)
   public ReportRSFatalErrorResponse reportRSFatalError(RpcController controller,
     ReportRSFatalErrorRequest request) throws ServiceException {
     String errorText = request.getErrorMessage();