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

Speculative execution for reads / eager retries

Agile BoardAttach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskConvert to sub-taskMoveLinkCloneLabelsUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Normal
    • 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 Assign to me
              Reporter:
              vijay2win@yahoo.com Vijay
              Authors:
              Vijay
              Reviewers:
              Jonathan Ellis

              Dates

              • Created:
                Updated:
                Resolved:

                Issue deployment