Chengbing Liu created HADOOP-18567: -------------------------------------- Summary: LogThrottlingHelper: the dependent recorder is not triggered correctly Key: HADOOP-18567 URL: https://issues.apache.org/jira/browse/HADOOP-18567 Project: Hadoop Common Issue Type: Bug Affects Versions: 3.3.4 Reporter: Chengbing Liu
The current implementation of {{LogThrottlingHelper}} works well most of the time, but it missed out one case, which appears quite common in the production codes: - if the dependent recorder was not suppressed before the primary one is triggered on the next period, then the next logging of the dependent recorder will be unexpectedly suppressed. {code:java} helper = new LogThrottlingHelper(LOG_PERIOD, "foo", timer); assertTrue(helper.record("foo", 0).shouldLog()); assertTrue(helper.record("bar", 0).shouldLog()); // Both should log once the period has elapsed // <pos1> assertTrue(helper.record("foo", LOG_PERIOD).shouldLog()); assertTrue(helper.record("bar", LOG_PERIOD).shouldLog()); <--- This assertion will now fail {code} Note if we call {{helper.record("bar", LOG_PERIOD * 2)}} in <pos1>, as the existing test cases do, it will work as expected. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: common-dev-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-dev-h...@hadoop.apache.org