[ 
https://issues.apache.org/jira/browse/CASSANDRA-3079?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Stu Hood updated CASSANDRA-3079:
--------------------------------

    Attachment: 0002-Fix-try-finally-nesting-for-scheduling.txt
                0001-Add-timeouts-to-request-scheduling.txt

0001 Adds the timeouts mentioned above (currently all schedule() calls use 
RpcTimeout, pending commit of CASSANDRA-2819)
0002 Fixes the try-finally nesting of schedule calls to avoid spurious 
release() calls due to timeouts

> Allow the client request scheduler to throw Timeouts
> ----------------------------------------------------
>
>                 Key: CASSANDRA-3079
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3079
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>            Priority: Minor
>             Fix For: 1.0
>
>         Attachments: 0001-Add-timeouts-to-request-scheduling.txt, 
> 0002-Fix-try-finally-nesting-for-scheduling.txt
>
>
> The RoundRobinScheduler prioritizes threads by allowing them to queue on a 
> SynchronousQueue per scheduling bucket. These queues currently do not use 
> timeouts, and we observed a cascading case where client retries caused the 
> scheduler queues to fill such that latency was way above the client timeout.
> Allowing the IRequestScheduler.queue method to throw a (per-call 
> configurable) timeout, we can avoid this cascading.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to