You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jonathan Ellis (JIRA)" <ji...@apache.org> on 2012/11/03 22:23:11 UTC

[jira] [Created] (CASSANDRA-4906) Avoid flushing other columnfamilies on truncate

Jonathan Ellis created CASSANDRA-4906:
-----------------------------------------

             Summary: Avoid flushing other columnfamilies on truncate
                 Key: CASSANDRA-4906
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4906
             Project: Cassandra
          Issue Type: Improvement
          Components: Core
            Reporter: Jonathan Ellis
            Assignee: Jonathan Ellis
            Priority: Minor
             Fix For: 1.2.0
         Attachments: 4906.txt

Currently truncate flushes *all* columnfamilies so it can get rid of the commitlog segments containing truncated data.  Otherwise, it could be replayed on restart since the replay position is contained in the sstables we're trying to delete.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-4906) Avoid flushing other columnfamilies on truncate

Posted by "Yuki Morishita (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13491040#comment-13491040 ] 

Yuki Morishita commented on CASSANDRA-4906:
-------------------------------------------

I'm seeing truncated data appear again after commit log replay.
Looks like we have to flush system.local after truncate, otherwise we are not able to query 'truncated_at' properly before commit log replays update of truncated_at.
                
> Avoid flushing other columnfamilies on truncate
> -----------------------------------------------
>
>                 Key: CASSANDRA-4906
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4906
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Jonathan Ellis
>            Assignee: Jonathan Ellis
>            Priority: Minor
>             Fix For: 1.2.0
>
>         Attachments: 4906.txt
>
>
> Currently truncate flushes *all* columnfamilies so it can get rid of the commitlog segments containing truncated data.  Otherwise, it could be replayed on restart since the replay position is contained in the sstables we're trying to delete.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Resolved] (CASSANDRA-4906) Avoid flushing other columnfamilies on truncate

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4906?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis resolved CASSANDRA-4906.
---------------------------------------

    Resolution: Fixed

Yes, backporting is probably straightforward.  But we shouldn't risk 1.1 stability with a new approach at this point.
                
> Avoid flushing other columnfamilies on truncate
> -----------------------------------------------
>
>                 Key: CASSANDRA-4906
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4906
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Jonathan Ellis
>            Assignee: Jonathan Ellis
>            Priority: Minor
>             Fix For: 1.2.0
>
>         Attachments: 4906.txt, 4906-v2.txt
>
>
> Currently truncate flushes *all* columnfamilies so it can get rid of the commitlog segments containing truncated data.  Otherwise, it could be replayed on restart since the replay position is contained in the sstables we're trying to delete.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-4906) Avoid flushing other columnfamilies on truncate

Posted by "Chris Herron (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13495524#comment-13495524 ] 

Chris Herron commented on CASSANDRA-4906:
-----------------------------------------

Would it be possible to backport this to Cassandra 1.1?
                
> Avoid flushing other columnfamilies on truncate
> -----------------------------------------------
>
>                 Key: CASSANDRA-4906
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4906
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Jonathan Ellis
>            Assignee: Jonathan Ellis
>            Priority: Minor
>             Fix For: 1.2.0
>
>         Attachments: 4906.txt, 4906-v2.txt
>
>
> Currently truncate flushes *all* columnfamilies so it can get rid of the commitlog segments containing truncated data.  Otherwise, it could be replayed on restart since the replay position is contained in the sstables we're trying to delete.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-4906) Avoid flushing other columnfamilies on truncate

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4906?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-4906:
--------------------------------------

    Fix Version/s:     (was: 1.2.0)
                   1.2.0 rc1

(committed to 1.2.0.)
                
> Avoid flushing other columnfamilies on truncate
> -----------------------------------------------
>
>                 Key: CASSANDRA-4906
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4906
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Jonathan Ellis
>            Assignee: Jonathan Ellis
>            Priority: Minor
>             Fix For: 1.2.0 rc1
>
>         Attachments: 4906.txt, 4906-v2.txt
>
>
> Currently truncate flushes *all* columnfamilies so it can get rid of the commitlog segments containing truncated data.  Otherwise, it could be replayed on restart since the replay position is contained in the sstables we're trying to delete.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-4906) Avoid flushing other columnfamilies on truncate

Posted by "Yuki Morishita (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13495513#comment-13495513 ] 

Yuki Morishita commented on CASSANDRA-4906:
-------------------------------------------

+1
                
> Avoid flushing other columnfamilies on truncate
> -----------------------------------------------
>
>                 Key: CASSANDRA-4906
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4906
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Jonathan Ellis
>            Assignee: Jonathan Ellis
>            Priority: Minor
>             Fix For: 1.2.0
>
>         Attachments: 4906.txt, 4906-v2.txt
>
>
> Currently truncate flushes *all* columnfamilies so it can get rid of the commitlog segments containing truncated data.  Otherwise, it could be replayed on restart since the replay position is contained in the sstables we're trying to delete.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-4906) Avoid flushing other columnfamilies on truncate

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4906?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-4906:
--------------------------------------

    Attachment: 4906.txt

Patch attached to save truncate position in system.local instead.  (This should be safe since we already open all Table + CFS before CL replay.)
                
> Avoid flushing other columnfamilies on truncate
> -----------------------------------------------
>
>                 Key: CASSANDRA-4906
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4906
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Jonathan Ellis
>            Assignee: Jonathan Ellis
>            Priority: Minor
>             Fix For: 1.2.0
>
>         Attachments: 4906.txt
>
>
> Currently truncate flushes *all* columnfamilies so it can get rid of the commitlog segments containing truncated data.  Otherwise, it could be replayed on restart since the replay position is contained in the sstables we're trying to delete.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-4906) Avoid flushing other columnfamilies on truncate

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4906?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-4906:
--------------------------------------

    Attachment: 4906-v2.txt

v2 adds forceBlockingFlush to saveTruncatonPosition.
                
> Avoid flushing other columnfamilies on truncate
> -----------------------------------------------
>
>                 Key: CASSANDRA-4906
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4906
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Jonathan Ellis
>            Assignee: Jonathan Ellis
>            Priority: Minor
>             Fix For: 1.2.0
>
>         Attachments: 4906.txt, 4906-v2.txt
>
>
> Currently truncate flushes *all* columnfamilies so it can get rid of the commitlog segments containing truncated data.  Otherwise, it could be replayed on restart since the replay position is contained in the sstables we're trying to delete.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira