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

Stu Hood commented on CASSANDRA-1035:
-------------------------------------

Awesome work: this is a great first cut!

* Should FairShareScheduler be renamed to RoundRobinScheduler, since it doesn't 
deal with time slices? (sorry, nitpick)
* FairShareScheduler.getQueue is racy between contains/put/get: the 'queues' 
object should probably be replaced with NonBlockingHashMap, and putIfAbsent 
should be used instead of contains/put
* Comments in conf/cassandra.yaml should indicate that this is specifically for 
_client_ requests

Also, similar changes need to be made to avro.CassandraDaemon and 
avro.CassandraServer: you may be able to separate RequestScheduler 
initialization into a method of service.AbstractCassandraDaemon for use in both 
subclasses.

> Implement User/Keyspace throughput Scheduler
> --------------------------------------------
>
>                 Key: CASSANDRA-1035
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1035
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Stu Hood
>            Assignee: Nirmal Ranganathan
>             Fix For: 0.7
>
>         Attachments: 
> 0001-Adding-the-RequestScheduler-abstraction-and-a-simple.patch, 
> 0002-Configuration-settings-for-RequestScheduler.patch, 
> 0003-Thrift-related-changes-for-RequestScheduler-added-a-.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.

Reply via email to