[ 
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

        

Reply via email to