Details

    • Sub-task
    • Status: Open
    • Normal
    • Resolution: Unresolved
    • 5.x
    • Legacy/Coordination
    • 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

            Unassigned Unassigned
            aweisberg Ariel Weisberg
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated: