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

Chris Li commented on HADOOP-10280:
-----------------------------------

Makes sense, but in order to do the above, we'd have to

1. Refactor Call into its own class outside of Server
2. Add getters to allow access to Call's members, probably all of them in order 
to be most flexible

It is most flexible, but I wonder if it's overkill. 

bq. Another point : Shouldn't the code that uses Schedulable be part of this 
patch as well ?

I think it's best to keep that in a later patch, for focus. The scheduler has 
its own quirks and things to be debated I'm sure

> Make Schedulables return a configurable identity of user or group
> -----------------------------------------------------------------
>
>                 Key: HADOOP-10280
>                 URL: https://issues.apache.org/jira/browse/HADOOP-10280
>             Project: Hadoop Common
>          Issue Type: Sub-task
>            Reporter: Chris Li
>            Assignee: Chris Li
>         Attachments: HADOOP-10280.patch, HADOOP-10280.patch
>
>
> In order to intelligently schedule incoming calls, we need to know what 
> identity it falls under.
> We do this by defining the Schedulable interface, which has one method, 
> getIdentity(IdentityType idType)
> The scheduler can then query a Schedulable object for its identity, depending 
> on what idType is. 
> For example:
> Call 1: Made by user=Alice, group=admins
> Call 2: Made by user=Bob, group=admins
> Call 3: Made by user=Carlos, group=users
> Call 4: Made by user=Alice, group=admins
> Depending on what the identity is, we would treat these requests differently. 
> If we query on Username, we can bucket these 4 requests into 3 sets for 
> Alice, Bob, and Carlos. If we query on Groupname, we can bucket these 4 
> requests into 2 sets for admins and users.
> In this initial version, idType can be username or primary group. In future 
> versions, it could be jobID, request class (read or write), or some explicit 
> QoS field. These are user-defined, and will be reloaded on callqueue refresh.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to