[
https://issues.apache.org/jira/browse/CASSANDRA-19365?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Maxim Muzafarov updated CASSANDRA-19365:
----------------------------------------
Authors: Jakub Zytka, Maxim Muzafarov (was: Maxim Muzafarov)
Fix Version/s: 4.1.8
5.0.2
(was: 4.1.x)
(was: 5.0.x)
Since Version: 4.0
Source Control Link:
https://github.com/apache/cassandra/commit/ad4ad5ef5aa9a432d7126140fc9f4fedcd20411c
Resolution: Fixed
Status: Resolved (was: Ready to Commit)
Merged to the 4.1, 5.0, trunk
[https://github.com/apache/cassandra/commit/ad4ad5ef5aa9a432d7126140fc9f4fedcd20411c]
[~jakubzytka] Thank you for the great patch and finding!
> invalid EstimatedHistogramReservoirSnapshot::getValue values due to race
> condition in DecayingEstimatedHistogramReservoir
> -------------------------------------------------------------------------------------------------------------------------
>
> Key: CASSANDRA-19365
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19365
> Project: Cassandra
> Issue Type: Bug
> Components: Observability/Metrics
> Reporter: Jakub Zytka
> Assignee: Maxim Muzafarov
> Priority: Normal
> Fix For: 4.1.8, 5.0.2, 5.x
>
> Attachments: ci_summary.html, result_details.tar.gz
>
> Time Spent: 4h 20m
> Remaining Estimate: 0h
>
> `DecayingEstimatedHistogramReservoir` has a race condition between `update`
> and `rescaleIfNeeded`.
> A sample which ends up (`update`) in an already scaled decayingBucket
> (`rescaleIfNeeded`) may still use a non-scaled weight because `decayLandmark`
> has not been updated yet at the moment of `update`.
>
> The observed consequence was flooding of the cluster with speculative retries
> (we happened to hit low-percentile buckets with overweight samples, which
> drove p99 below true p50 for a long time).
> Please note that despite the manifestation being similar to CASSANDRA-19330,
> these are two distinct bugs in their own right.
> This bug affects versions 4.0+
> On 3.11 there's locking in DEHR. I did not check earlier versions.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]