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

Chris Lohfink commented on CASSANDRA-20014:
-------------------------------------------

+1 on the code but I think this can still happen.

 

Since the time that the tombstone purge occurs is based on the PartitionUpdates 
DeletionTime not the creation time of the mutation, so if theres a delta there 
(ie client side GC instead of coordinator GC) this can still happen? This would 
definitely help though. Guess I am wondering if Hint.expirationInMillis should 
be using writetime instead of creation time

> Discard hints based on write time, not timeout time
> ---------------------------------------------------
>
>                 Key: CASSANDRA-20014
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-20014
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Consistency/Hints
>            Reporter: Blake Eggleston
>            Assignee: Matt Byrd
>            Priority: Normal
>
> Hints are created after a write timeout are created with the timeout time as 
> the hint creation time. In the case of slow hint delivery, this can create a 
> window of time where a write is applied after gcgs would have elapsed for 
> tombstones written after the original write, and the tombstone has been 
> purged, causing data resurrection. We should use the time the client request 
> thread started working on the request as the hint creation time.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to