You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by Apache Wiki <wi...@apache.org> on 2010/03/17 22:24:01 UTC
[Cassandra Wiki] Update of "ArchitectureAntiEntropy" by StuHood
Dear Wiki user,
You have subscribed to a wiki page or wiki category on "Cassandra Wiki" for change notification.
The "ArchitectureAntiEntropy" page has been changed by StuHood.
http://wiki.apache.org/cassandra/ArchitectureAntiEntropy?action=diff&rev1=1&rev2=2
--------------------------------------------------
* The valid tree is broadcast to neighboring nodes via TreeResponse, and stored locally.
3. When a node receives a TreeResponse, it passes the tree to rendezvous(), which checks for trees to rendezvous with / compare to:
* If the tree is local, it is cached, and compared to any trees that were received from neighbors.
- * If the tree is remote, it is immediately compared to a local tree if one is cached. Otherwise, the remote tree is stored until a local tree can be generated.
+ * If the tree is remote, it is immediately compared to a local tree if one is cached. Otherwise, the remote tree is cached in case a local tree is generated within TREE_STORE_TIMEOUT.
* A Differencer object is enqueued for each comparison.
4. Differencers are executed in AE_SERVICE_STAGE, to compare the two trees.
* Based on the fraction of disagreement between the trees, the differencer will either perform repair via the io.Streaming api, or via RangeCommand read repairs.