[
https://issues.apache.org/jira/browse/CASSANDRA-16721?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17402299#comment-17402299
]
Caleb Rackliffe commented on CASSANDRA-16721:
---------------------------------------------
Just noticed that {{oldestUnrepairedTombstone}} is still mutable on
{{ReadCommand}} as well, and might be accessed concurrently by two local reads.
I might expand the scope of this slightly to move that to the controller as
well. (It looks like the controller is already available in most of the places
we modify it already.)
> Repaired data tracking on a read coordinator is susceptible to races between
> local and remote requests
> ------------------------------------------------------------------------------------------------------
>
> Key: CASSANDRA-16721
> URL: https://issues.apache.org/jira/browse/CASSANDRA-16721
> Project: Cassandra
> Issue Type: Bug
> Components: Consistency/Coordination
> Reporter: Sam Tunnicliffe
> Assignee: Caleb Rackliffe
> Priority: Normal
> Fix For: 4.0.x, 4.x
>
> Time Spent: 0.5h
> Remaining Estimate: 0h
>
> At read time on a coordinator which is also a replica, the local and remote
> reads can race such that the remote responses are received while the local
> read is executing. If the remote responses are mismatching, triggering a
> {{DigestMismatchException}} and subsequent round of full data reads and read
> repair, the local runnable may find the {{isTrackingRepairedStatus}} flag
> flipped mid-execution. If this happens after a certain point in execution,
> it would mean
> that the RepairedDataInfo instance in use is the singleton null object
> {{RepairedDataInfo.NULL_REPAIRED_DATA_INFO}}. If this happens, it can lead to
> an NPE when calling {{RepairedDataInfo::extend}} when the local results are
> iterated.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]