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