You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Carl Yeksigian (JIRA)" <ji...@apache.org> on 2015/09/15 20:46:46 UTC

[jira] [Commented] (CASSANDRA-10346) Create tool to repair inconsistencies between base and view tables when dataloss ocurrs

    [ https://issues.apache.org/jira/browse/CASSANDRA-10346?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14745923#comment-14745923 ] 

Carl Yeksigian commented on CASSANDRA-10346:
--------------------------------------------

Here are the difficulties that I've thought of so far (there are probably others, these just give me the most pause):

- To do a merkle tree repair, all the base table values will need to be transformed first before calculation since the values are different between base and view
- Inserting new values won't clean up old values, so just restreaming the values wouldn't help with this operation as it wouldn't remove any values that were lost from the data loss on the base table
- A base replica would have data on all of the view replicas (in the same DC), and would need to exchange merkle trees with all of them, which would not be like repair which only needs to exchange with RF-1 replicas

The current workaround is to drop and recreate the MV.

An idea I had early was to run a build operation into a table with a different internal table ID and swap the view after it is built, but it would require knowing when the whole ring is done building the view.

> Create tool to repair inconsistencies between base and view tables when dataloss ocurrs
> ---------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-10346
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10346
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: T Jake Luciani
>            Priority: Minor
>             Fix For: 3.x
>
>
> As mentioned in CASSANDRA-10230, you can have inconsistencies between base and view if you have data loss on all ack'd replicas in the base table.
> We should add a way to identify and ideally fix/drop discrepancies between the base and view replicas.  
> I think implementing this efficiently will not be so easy but it should work like repair in theory.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)