Details

    • Type: Sub-task
    • Status: Open
    • Priority: Normal
    • Resolution: Unresolved
    • Fix Version/s: 4.x
    • Component/s: Legacy/Coordination
    • Labels:
      None

      Description

      When transient replication is in use blocking read repair currently doesn't repair transient replicas. While this results in transient replicas being almost free as they don't have to accept 99% of write traffic and the associated data it does mean that values returned by a read might not be replicated to a majority of nodes.

      If we enabled BRR to transient replicas we would get monotonic reads, but we would have to BRR repaired and unrepaired data to them. This means we generally wouldn't want to read from them to avoid extra BRR and if nodes are down and we were forced to BRR them they could acquire a large amount of repaired data that would then have to be streamed at the next incremental repair.

      If we split read results into repaired and unrepaired data it will be possible to only blocking read repair unrepaired data to transient replicas. Then we can enable BRR for transient replicas without running into performance degradation when nodes are down.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              aweisberg Ariel Weisberg
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated: