Skip to content

Instantly share code, notes, and snippets.

@KlausTrainer
Created September 7, 2010 20:30
Show Gist options
  • Save KlausTrainer/569038 to your computer and use it in GitHub Desktop.
Save KlausTrainer/569038 to your computer and use it in GitHub Desktop.
Handling Read Requests in BigCouch

Handling Read Requests in BigCouch

  • R=1, D=1, S=1: V

  • R=2, D=1, S=1:

    • V
    • 503 Service Unavailable
  • R=2, D=1, S=2: V

  • R=2, D=2, S=2:

    • max(V)
    • [V1, V2]
    • 503 Service Unavailable
  • R=3, D=1, S=1:

    • V
    • 503 Service Unavailable
  • R=3, D=1, S=2:

    • V
    • 503 Service Unavailable
  • R=3, D=1, S=3: V

  • R=3, D=2, S=2:

    • max(V)
    • [V1, V2]
    • 503 Service Unavailable
  • R=3, D=2, S=3:

    • quorum(V)
    • max(V)
    • [V1, V2, V3]
    • 503 Service Unavailable
  • R=3, D=3, S=3:

    • max(V)
    • [V1, V2, V3]
    • 503 Service Unavailable

Glossary

  • V: the set V1, ..., VD of document versions returned from the cluster nodes
  • S: the number of successful responses (i.e. a document version is available)
  • D: number of different versions (i.e. |V|)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment