Uploaded image for project: 'Ratis'
  1. Ratis
  2. RATIS-1714

Support unordered async read

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 3.0.0
    • 3.0.0, 2.4.1
    • client, server
    • None

    Description

      Mailing list thread: https://lists.apache.org/thread/rg65qoph54hlpdhmoc3p80sd0z6wzwjm

      File an issue to track it. I may take a look deeply later.

      From szetszwo:

      Since Ratis server is asynchronous event-driven. We may implement "watch a key" using the AsyncApi:

      1. Client sends a "watch a key" request by client.async().sendReadOnly(..).
      2. StateMachine won't complete the future until the key satisfies the watch condition.

      One problem is that the async read calls in Ratis are ordered. Thus, the other ordered async calls sent by the same client would not be completed before the "watch a key" request is completed. Of course, we may work around it by creating a new client. A better solution is to support unordered async read (a new feature) in Ratis.

      Note that Ratis already supports unordered AsyncApi.watch(..), which can watch for the replication level of the given log index. Therefore, it is easy to add the new feature for supporting unordered async read.

      Attachments

        Issue Links

          Activity

            People

              szetszwo Tsz-wo Sze
              tison Zili Chen
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h 10m
                  1h 10m