Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-4705

Speculative execution for reads / eager retries

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Fix Version/s: 2.0 beta 1
    • Component/s: None
    • Labels:
      None

      Description

      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.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                vijay2win@yahoo.com Vijay
                Reporter:
                vijay2win@yahoo.com Vijay
                Reviewer:
                Jonathan Ellis
              • Votes:
                0 Vote for this issue
                Watchers:
                15 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: