You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jimmy Mårdell (JIRA)" <ji...@apache.org> on 2013/12/09 18:38:08 UTC

[jira] [Updated] (CASSANDRA-5839) Save repair data to system table

     [ https://issues.apache.org/jira/browse/CASSANDRA-5839?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jimmy Mårdell updated CASSANDRA-5839:
-------------------------------------

    Attachment: 2.0.4-5839-draft.patch

Here's my first draft implementation, based on the work Jason done so far (very nice, thanks).

I added the coordinating node to the set of participating nodes, for symmetry. I also wanted to store the total number of ranges that were out of sync. This could be useful to know. I renamed the table to repair_jobs since each entry corresponds to a RepairJob rather than a whole session.

Some ponderings:
* The SyncComplete message could contain some more information that could be stored, such as amount of data that were actually streamed.
* Actually looking up data in the repair table is a bit tricky. There are many possible use cases. Perhaps we should allow the end user to create the indexes he wants?
* I'm thinking of putting the TTL value of all entries (currently hard coded to 365 days) in the cassandra.yaml file. A value of 0 would disable writing this data at all (which perhaps should be default!?)

Regarding the suggested schema, it doesn't seem so efficient. Most clusters would only have one, or very few, wide rows. And it will be tricky querying for data in any sane way. For instance, I would like to query to find the last repair for each range in a KS/CF. Perhaps there isn't so much one can do about this, except reading everything and then doing the business logic client side.

> Save repair data to system table
> --------------------------------
>
>                 Key: CASSANDRA-5839
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5839
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: Core, Tools
>            Reporter: Jonathan Ellis
>            Assignee: Jimmy Mårdell
>            Priority: Minor
>             Fix For: 2.0.4
>
>         Attachments: 2.0.4-5839-draft.patch
>
>
> As noted in CASSANDRA-2405, it would be useful to store repair results, particularly with sub-range repair available (CASSANDRA-5280).



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)