cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jun Rao (JIRA)" <>
Subject [jira] Commented: (CASSANDRA-193) Proactive repair
Date Thu, 12 Nov 2009 18:50:39 GMT


Jun Rao commented on CASSANDRA-193:

Now I start to understand the code a bit better. A couple of other questions:
a. Why do you want to use an n-ary tree to represent a binary tree? Why can't you just implement
Merkle tree as an in-complete binary tree itself? This way, there is less confusing about
whether a node refers to one in the n-ary tree or the binary tree.
b. Suppose + is the bit-wise AND btw 2 hash values and you compute the hash of a range as
the sum of the hash of each row in the range. Then, it seems that you can compute the hash
of a range directly (since now + is commutative and transitive), without a bottom-up traversal
from the leaves of the complete binary tree. Wouldn't this be simpler?

> Proactive repair
> ----------------
>                 Key: CASSANDRA-193
>                 URL:
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: Core
>            Reporter: Jonathan Ellis
>            Assignee: Stu Hood
>             Fix For: 0.5
>         Attachments: 193-1-tree-preparation.diff, 193-2-tree.diff, 193-3-aes-preparation.diff,
193-4-aes.diff, mktree-and-binary-tree.png
> Currently cassandra supports "read repair," i.e., lazy repair when a read is done.  This
is better than nothing but is not sufficient for some cases (e.g. catastrophic node failure
where you need to rebuild all of a node's data on a new machine).
> Dynamo uses merkle trees here.  This is harder for Cassandra given the CF data model
but I suppose we could just hash the serialized CF value.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message