cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Ellis (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CASSANDRA-1035) Implement User/Keyspace throughput Scheduler
Date Wed, 07 Jul 2010 16:36:51 GMT

    [ https://issues.apache.org/jira/browse/CASSANDRA-1035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12885982#action_12885982
] 

Jonathan Ellis commented on CASSANDRA-1035:
-------------------------------------------

Right, it looks like what you want is just a SynchronousQueue per keyspace.  Manual wait/notify
is more code and error-prone (see the javadoc for wait() -- "A thread can also wake up without
being notified, interrupted, or timing out, a so-called spurious wakeup...")

Go ahead and just initialize the scheduler in DD, we already do this with e.g. the partitioner.

> Implement User/Keyspace throughput Scheduler
> --------------------------------------------
>
>                 Key: CASSANDRA-1035
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1035
>             Project: Cassandra
>          Issue Type: Improvement
>    Affects Versions: 0.7
>            Reporter: Stu Hood
>            Assignee: Nirmal Ranganathan
>             Fix For: 0.7
>
>         Attachments: 0001-Adding-the-RequestScheduler-abstraction-and-a-simple.patch,
0002-Thrift-related-changes-for-RequestScheduler-added-a-.patch, 0003-Avro-related-changes-for-RequestScheduler.patch,
0004-Test-case-for-RoundRobinScheduler.patch, 0005-Add-options-for-throttling.patch, 1035-v2.txt,
Cassandra-1035.patch
>
>
> To support multiple applications on top of a single Cassandra cluster (and to protect
against badly behaving clients) having a very simple scheduler for client operations would
be very beneficial.
> Since all tasks are short lived, a sufficient scheduler would probably only need to manage
the queue of incoming requests, and weight them based on an assigned ID. The ID could be dynamically
determined by using ip, userid or keyspace for instance, and then each Runnable would be assigned
an ID.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message