[ 
https://issues.apache.org/jira/browse/HBASE-13375?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14487614#comment-14487614
 ] 

Josh Elser commented on HBASE-13375:
------------------------------------

{code}
     Integer priorityByAnnotation = annotatedQos.get(methodName);
     if (priorityByAnnotation != null) {
       return priorityByAnnotation;
     }
+
+    // all requests executed by super users have high QoS
+    if (isExecutedBySuperUser(remoteUgi)) {
+      return HConstants.ADMIN_QOS;
+    }
+
{code}

Just noting that decision tree for determining priority of a call is:

# Annotation on RPC method implementation
# Super users
# Everyone else

I think this is fine presently, but, if additional prioritization gets added 
via the QosAnnotation, this could have unexpected outcomes. For example, if we 
would get to a point where all methods are annotated (explicitly define 
"normal" or "low" priorities), superusers would suddenly get thrown in the 
default bucket. Not a big concern since I don't think that's on the radar, but 
I thought I'd mention it anyways. Otherwise, everything looks good to me!

> Provide HBase superuser higher priority over other users in the RPC handling
> ----------------------------------------------------------------------------
>
>                 Key: HBASE-13375
>                 URL: https://issues.apache.org/jira/browse/HBASE-13375
>             Project: HBase
>          Issue Type: Improvement
>          Components: rpc
>            Reporter: Devaraj Das
>            Assignee: Mikhail Antonov
>             Fix For: 1.1.0
>
>         Attachments: HBASE-13375-v0.patch, HBASE-13375-v1.patch, 
> HBASE-13375-v1.patch
>
>
> HBASE-13351 annotates Master RPCs so that RegionServer RPCs are treated with 
> a higher priority compared to user RPCs (and they are handled by a separate 
> set of handlers, etc.). It may be good to stretch this to users too - hbase 
> superuser (configured via hbase.superuser) gets higher priority over other 
> users in the RPC handling. That way the superuser can always perform 
> administrative operations on the cluster even if all the normal priority 
> handlers are occupied (for example, we had a situation where all the master's 
> handlers were tied up with many simultaneous createTable RPC calls from 
> multiple users and the master wasn't able to perform any operations initiated 
> by the admin). (Discussed this some with [~enis] and [~elserj]).
> Does this make sense to others?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to