[
https://issues.apache.org/jira/browse/CASSANDRA-193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12777115#action_12777115
]
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: https://issues.apache.org/jira/browse/CASSANDRA-193
> 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.