You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Ala' Alkhaldi (JIRA)" <ji...@apache.org> on 2014/07/23 20:25:38 UTC

[jira] [Commented] (CASSANDRA-6905) commitlog archive replay should attempt to replay all mutations

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

Ala' Alkhaldi commented on CASSANDRA-6905:
------------------------------------------

Reading through the CommitLogReplayer.recover(file), I believe it replies all the mutations until the end of the file. I.e. It goes beyond the specified time stamp and filter each mutation in a separate thread. To confirm my theory, I add a test to the RecoveryManagerTest  (see the file attached) and it worked successfully. WDYT [~brandon.williams]

> commitlog archive replay should attempt to replay all mutations
> ---------------------------------------------------------------
>
>                 Key: CASSANDRA-6905
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6905
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Brandon Williams
>            Assignee: Ala' Alkhaldi
>            Priority: Minor
>             Fix For: 2.0.10
>
>         Attachments: CASSANDRA-6905-test.txt
>
>
> Currently when you do a point-in-time recovery using archived commitlogs, the replay stops when the time is encountered, but since timestamps are supplied by the client we can't guarantee the segment is ordered by timestamp, so some mutations can be lost.  Instead we could continue past the given timestamp, and just filter out any mutations greater than it.



--
This message was sent by Atlassian JIRA
(v6.2#6252)