You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Matthew F. Dennis (Created) (JIRA)" <ji...@apache.org> on 2012/04/04 22:27:27 UTC

[jira] [Created] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

check most recent TS values in SSTables when a row tombstone has already been encountered
-----------------------------------------------------------------------------------------

                 Key: CASSANDRA-4116
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
             Project: Cassandra
          Issue Type: Bug
            Reporter: Matthew F. Dennis


once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.

There are two drivers for this.

* avoid checking column values that could not possibly be in the result set

* avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Issue Comment Edited] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Sam Tunnicliffe edited comment on CASSANDRA-4116 at 5/1/12 4:12 PM:
--------------------------------------------------------------------

Updated patches as per comments. In {{collectAllData}}, collect the eligible iterators in a multimap with key = maxTimestamp (I guess that its pretty unlikely for two sstables to have the exact same timestamp, but using a Multimap doesn't really add any cost). Then, if we did find a row tombstone, only keep the iterators from younger sstables. Otherwise, keep all that we collected.
                
      was (Author: beobal):
    Updated patches as per comments. In {code}collectAllData{code}, collect the eligible iterators in a multimap with key = maxTimestamp (I guess that its pretty unlikely for two sstables to have the exact same timestamp, but using a Multimap doesn't really add any cost). Then, if we did find a row tombstone, only keep the iterators from younger sstables. Otherwise, keep all that we collected.
                  
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>             Fix For: 1.2
>
>         Attachments: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
>
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Sam Tunnicliffe updated CASSANDRA-4116:
---------------------------------------

    Attachment: CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-1.0.txt

Added version of patch 0002 with fix to sstable maxTimeStamp against 1.0 branch
                
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>             Fix For: 1.2
>
>         Attachments: CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-1.0.txt, v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
>
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Sam Tunnicliffe updated CASSANDRA-4116:
---------------------------------------

    Attachment: v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
                v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt
    
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>         Attachments: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
>
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Sam Tunnicliffe updated CASSANDRA-4116:
---------------------------------------

    Attachment: v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
                v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt
    
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>             Fix For: 1.2
>
>         Attachments: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
>
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Jonathan Ellis commented on CASSANDRA-4116:
-------------------------------------------

Committed patch 0001 to 1.1.1, with some cleanup.  (Main one was to use a Map<iterator, timestamp> instead of a multimap the other direction.)

I suspect 0002 is needed for earlier releases as well, can you post a version against the 1.0 branch?
                
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>             Fix For: 1.2
>
>         Attachments: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
>
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Sam Tunnicliffe updated CASSANDRA-4116:
---------------------------------------

    Attachment:     (was: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt)
    
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>             Fix For: 1.2
>
>         Attachments: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
>
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Jonathan Ellis commented on CASSANDRA-4116:
-------------------------------------------

{code}
.               if (sstable.getMaxTimestamp() < mostRecentRowTombstone)
                    continue;
{code}

For {{collectTimeOrderedData}}, I think that can be a "break" since we're scanning in reverse chronological order.

For {{collectAllData}}, I think it might be worth making (potentially) two passes: if we find a deletion marker on the first pass, we should do a second pass, so we can strip out sstables that we saw the first time before we knew about the marker.  This would improve the deletion case, without imposing the overhead of a sort or two passes on workloads with no deletes.
                
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>             Fix For: 1.2
>
>         Attachments: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
>
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Sam Tunnicliffe updated CASSANDRA-4116:
---------------------------------------

    Attachment:     (was: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt)
    
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>             Fix For: 1.2
>
>         Attachments: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
>
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Sam Tunnicliffe commented on CASSANDRA-4116:
--------------------------------------------

Updated patches because I realised the license header was missing from the new test source
                
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>             Fix For: 1.2
>
>         Attachments: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
>
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Sam Tunnicliffe updated CASSANDRA-4116:
---------------------------------------

    Attachment:     (was: v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt)
    
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>             Fix For: 1.2
>
>         Attachments: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
>
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Sam Tunnicliffe commented on CASSANDRA-4116:
--------------------------------------------

Updated patches as per comments. In {code}collectAllData{code}, collect the eligible iterators in a multimap with key = maxTimestamp (I guess that its pretty unlikely for two sstables to have the exact same timestamp, but using a Multimap doesn't really add any cost). Then, if we did find a row tombstone, only keep the iterators from younger sstables. Otherwise, keep all that we collected.
                
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>             Fix For: 1.2
>
>         Attachments: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
>
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Sam Tunnicliffe updated CASSANDRA-4116:
---------------------------------------

    Attachment: v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
                v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt
    
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>             Fix For: 1.2
>
>         Attachments: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
>
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Assigned] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Sam Tunnicliffe reassigned CASSANDRA-4116:
------------------------------------------

    Assignee: Sam Tunnicliffe
    
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-4116) check most recent TS values in SSTables when a row tombstone has already been encountered

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

Sam Tunnicliffe updated CASSANDRA-4116:
---------------------------------------

    Attachment:     (was: v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt)
    
> check most recent TS values in SSTables when a row tombstone has already been encountered
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4116
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4116
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Matthew F. Dennis
>            Assignee: Sam Tunnicliffe
>             Fix For: 1.2
>
>         Attachments: v1-0001-CASSANDRA-4116-After-Row-tombstone-skip-earlier-SSTabl.txt, v1-0002-CASSANDRA-4116-Set-SSTable-maxTimestamp-correctly-for-.txt
>
>
> once C* comes across a row tombstone, C* should check the TS on the tombstone against all SSTables.  If the most recent TS in an SST is older than the row tombstone, that entire SST (or the remainder of it) can be safely ignored.
> There are two drivers for this.
> * avoid checking column values that could not possibly be in the result set
> * avoid OOMing because all the tombstones are temporarily kept in memory.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira