hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hadoop QA (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-10282) Create a FairCallQueue: a multi-level call queue which schedules incoming calls and multiplexes outgoing calls
Date Fri, 22 Aug 2014 01:39:11 GMT

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

Hadoop QA commented on HADOOP-10282:
------------------------------------

{color:red}-1 overall{color}.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12663541/HADOOP-10282.patch
  against trunk revision .

    {color:green}+1 @author{color}.  The patch does not contain any @author tags.

    {color:green}+1 tests included{color}.  The patch appears to include 1 new or modified
test files.

    {color:green}+1 javac{color}.  The applied patch does not increase the total number of
javac compiler warnings.

    {color:green}+1 javadoc{color}.  There were no new javadoc warning messages.

    {color:green}+1 eclipse:eclipse{color}.  The patch built with eclipse:eclipse.

    {color:green}+1 findbugs{color}.  The patch does not introduce any new Findbugs (version
2.0.3) warnings.

        {color:red}-1 release audit{color}.  The applied patch generated 3 release audit warnings.

    {color:green}+1 core tests{color}.  The patch passed unit tests in hadoop-common-project/hadoop-common.

    {color:green}+1 contrib tests{color}.  The patch passed contrib unit tests.

Test results: https://builds.apache.org/job/PreCommit-HADOOP-Build/4528//testReport/
Release audit warnings: https://builds.apache.org/job/PreCommit-HADOOP-Build/4528//artifact/trunk/patchprocess/patchReleaseAuditProblems.txt
Console output: https://builds.apache.org/job/PreCommit-HADOOP-Build/4528//console

This message is automatically generated.

> Create a FairCallQueue: a multi-level call queue which schedules incoming calls and multiplexes
outgoing calls
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: HADOOP-10282
>                 URL: https://issues.apache.org/jira/browse/HADOOP-10282
>             Project: Hadoop Common
>          Issue Type: Sub-task
>            Reporter: Chris Li
>            Assignee: Chris Li
>         Attachments: HADOOP-10282.patch, HADOOP-10282.patch, HADOOP-10282.patch, HADOOP-10282.patch
>
>
> The FairCallQueue ensures quality of service by altering the order of RPC calls internally.

> It consists of three parts:
> 1. a Scheduler (`HistoryRpcScheduler` is provided) which provides a priority number from
0 to N (0 being highest priority)
> 2. a Multi-level queue (residing in `FairCallQueue`) which provides a way to keep calls
in priority order internally
> 3. a Multiplexer (`WeightedRoundRobinMultiplexer` is provided) which provides logic to
control which queue to take from
> Currently the Mux and Scheduler are not pluggable, but they probably should be (up for
discussion).
> This is how it is used:
> // Production
> 1. Call is created and given to the CallQueueManager
> 2. CallQueueManager requests a `put(T call)` into the `FairCallQueue` which implements
`BlockingQueue`
> 3. `FairCallQueue` asks its scheduler for a scheduling decision, which is an integer
e.g. 12
> 4. `FairCallQueue` inserts Call into the 12th queue: `queues.get(12).put(call)`
> // Consumption
> 1. CallQueueManager requests `take()` or `poll()` on FairCallQueue
> 2. `FairCallQueue` asks its multiplexer for which queue to draw from, which will also
be an integer e.g. 2
> 3. `FairCallQueue` draws from this queue if it has an available call (or tries other
queues if it is empty)
> Additional information is available in the linked JIRAs regarding the Scheduler and Multiplexer's
roles.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message