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

Takenori Sato commented on CASSANDRA-8038:
------------------------------------------

{quote}
If you don't care about read-repair (because repair is running regularly), why 
don't you just disable read-repair altogether? I'm not convinced that "I want 
read-repair but not for tombstone" is useful enough in general that it's worth 
adding an option.
{quote}

Even if read repair is disabled, at least (R-1) requests are made, on which 
node tombstones are read into memory. So I don't see it can solve the problem.

Also, I understand read repair is the only reason why tombstones have to be 
kept in memory(both for data and digest requests), and sent back to a 
coordinator(if it is a data request), though only live columns are returned to 
a client. Am I right?

{quote}
 Further, it looks like the patch actually skips tombstones from 
ArrayBackedSortedColumns.maybeAppendColumn which means that tombstone will be 
skipped on every read, not just on read-repair. Doing so is definitively wrong 
since the tombstone might delete data on some other replica upon reconciliation 
on the coordinator.
{quote}

Yes, I intended to do so. I wasn't aware of such a possibility, "tombstone 
might delete data on some other replica upon reconciliation on the coordinator".

Can you explain how it could happen? Also, let me know if a relevant test case 
exists. I will add such a test case, and reconsider the design.

> A new config option to ignore column tombstones for RR or not
> -------------------------------------------------------------
>
>                 Key: CASSANDRA-8038
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8038
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: Core
>            Reporter: Takenori Sato
>             Fix For: 2.1.1
>
>         Attachments: CASSANDRA-8038-v2.txt, CASSANDRA-8038-v3.txt, 
> CASSANDRA-8038.txt
>
>
> CASSANDRA-6117 addressed the death of Cassandra by column tombstones, and 
> whose fix was to raise an error when reading more tombstones than a 
> threshold. I think it is an emergency action, rather than a fix.
> We have had this issue for long. So I wondered, in the first place, if it is 
> really necessary to collect non-gc-able tombstones, which could cause 
> concurrent mode failures, and OOM eventually? 
> Actually, I was surprised by the fact that Cassandra takes them into 
> consideration. Rather, I prefer to raise a threshold, and tell Cassandra to 
> ignore tombstones for digest calculation of RR because a repair is running 
> regularly. 
> I guess there are some people like me, but not all. So what about adding a 
> new configuration option if Cassandra ignores column tombstones for RR or not?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to