Chris Lohfink created CASSANDRA-8883:
----------------------------------------
Summary: Percentile computation should use ceil not floor in
EstimatedHistogram
Key: CASSANDRA-8883
URL: https://issues.apache.org/jira/browse/CASSANDRA-8883
Project: Cassandra
Issue Type: Bug
Components: Core
Reporter: Chris Lohfink
Priority: Minor
When computing the pcount Cassandra uses floor and the comparison with elements
is >= so given a simple example of there being a total of five elements
{code}
// data
[1, 1, 1, 1, 1]
// offsets
[1, 2, 3, 4, 5]
{code}
Cassandra would report the 50th percentile as 2. While 3 is the more expected
value. As a comparison using numpy
{code}
import numpy as np
np.percentile(np.array([1, 2, 3, 4, 5]), 50)
==> 3.0
{code}
The percentiles was added in CASSANDRA-4022 but is now used a lot in metrics
Cassandra reports. I think it should error on the side on overestimating
instead of underestimating.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)