You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Divij Vaidya (Jira)" <ji...@apache.org> on 2022/05/18 16:31:00 UTC

[jira] [Created] (KAFKA-13911) Rate is calculated as NaN for minimum config values

Divij Vaidya created KAFKA-13911:
------------------------------------

             Summary: Rate is calculated as NaN for minimum config values
                 Key: KAFKA-13911
                 URL: https://issues.apache.org/jira/browse/KAFKA-13911
             Project: Kafka
          Issue Type: Bug
            Reporter: Divij Vaidya
            Assignee: Divij Vaidya


Implementation of connection creation rate quotas in Kafka is dependent on two configurations:
 # [quota.window.num|https://kafka.apache.org/documentation.html#brokerconfigs_quota.window.num]
 # [quota.window.size.seconds|https://kafka.apache.org/documentation.html#brokerconfigs_quota.window.size.seconds]

The minimum possible values of these configuration is 1 as per the documentation. However, 1 as a minimum value for quota.window.num is invalid and leads to failure for calculation of rate as demonstrated below.

As a proof of the bug, the following unit test fails:
{code:java}
@Test
public void testUseWithMinimumPossibleConfiguration() {
    final Rate r = new Rate();
    MetricConfig config = new MetricConfig().samples(1).timeWindow(1, TimeUnit.SECONDS);
    Time elapsed = new MockTime();
    r.record(config, 1.0, elapsed.milliseconds());
    elapsed.sleep(100);
    r.record(config, 1.0, elapsed.milliseconds());
    elapsed.sleep(1000);
    final Double observedRate = r.measure(config, elapsed.milliseconds());
    assertFalse(Double.isNaN(observedRate));
} {code}
 



--
This message was sent by Atlassian Jira
(v8.20.7#820007)