[
https://issues.apache.org/jira/browse/CASSANDRA-4705?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13466390#comment-13466390
]
Vijay edited comment on CASSANDRA-4705 at 9/30/12 2:02 PM:
-----------------------------------------------------------
I pushed the prototype code into
https://github.com/Vijay2win/cassandra/commit/62bbabfc41ba8e664eb63ba50110e5f5909b2a87
Looks like metrics-core exposes 75, 95, 97, 99 and 99.9 Percentile's, with my
tests 75P is too low, and 99 is too high to make a difference, whereas 95P long
tail looks better (Moving average doesn't make much of a difference too). It
also supports ALL, AUTO, NONE (current behavior) as per jonathan's comment
above.
But I still think we should also support hard coded value in addition to the
auto :)
Note: have to make the speculative_retry part of the schema but currently if
you want to test it out it is a code change in CFMetaData
was (Author: [email protected]):
I pushed the prototype code into
https://github.com/Vijay2win/cassandra/commit/62bbabfc41ba8e664eb63ba50110e5f5909b2a87
Looks like metrics-core exposes 75, 95, 97, 99 and 99.9 Percentile's, with my
tests 75P is too low, and 99 is too high to make a difference, whereas 95P long
tail looks better (Moving average doesn't make much of a difference too).
I still think we should also support hard coded value in addition to the auto :)
Note: have to make the speculative_retry part of the schema but currently if
you want to test it out it is a code change in CFMetaData
> Speculative execution for CL_ONE
> --------------------------------
>
> Key: CASSANDRA-4705
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4705
> Project: Cassandra
> Issue Type: Improvement
> Affects Versions: 1.2.0
> Reporter: Vijay
> Assignee: Vijay
> Priority: Minor
>
> When read_repair is not 1.0, we send the request to one node for some of the
> requests. When a node goes down or when a node is too busy the client has to
> wait for the timeout before it can retry.
> It would be nice to watch for latency and execute an additional request to a
> different node, if the response is not received within average/99% of the
> response times recorded in the past.
> CASSANDRA-2540 might be able to solve the variance when read_repair is set to
> 1.0
> 1) May be we need to use metrics-core to record various Percentiles
> 2) Modify ReadCallback.get to execute additional request speculatively.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira