You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by Markus Klems <ma...@gmail.com> on 2012/10/19 09:59:00 UTC

Read repair question

Hi guys,

I am looking through the Cassandra source code in the github trunk to
better understand how Cassandra's fault-tolerance mechanisms work. Most
things make sense. I am also aware of the wiki and DataStax documentation.
However, I do not understand what read repair does in detail. The method
RowRepairResolver.resolveSuperset(Iterable<ColumnFamily> versions) seems to
do the trick of merging conflicting versions of column family replicas and
builds the set of columns that need to be "repaired". From looking at the
source code, I do not understand how this set is built and I do not
understand how the reconciliation is executed. ReadRepair does not seem to
trigger a Column.reconcile() to reconcile conflicting column versions on
different servers. Does it?

If this is not what read repair does, then: What kind of inconsistencies
are resolved by read repair? And: How are the inconsistencies resolved?

Could someone give me a hint?

Thanks so much,

-Markus