[ 
https://issues.apache.org/jira/browse/HBASE-30523?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated HBASE-30523:
-----------------------------------
    Labels: pull-request-available  (was: )

> BucketCacheStats#getIOHitsPerSecond resets its time window on every call
> ------------------------------------------------------------------------
>
>                 Key: HBASE-30523
>                 URL: https://issues.apache.org/jira/browse/HBASE-30523
>             Project: HBase
>          Issue Type: Bug
>          Components: BlockCache
>            Reporter: Xiao Liu
>            Assignee: Xiao Liu
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 4.0.0-alpha-1, 2.7.0, 3.1.0, 3.0.1, 2.6.8, 2.5.17
>
>
> {\{BucketCacheStats#getIOHitsPerSecond}} resets \{{lastLogTime}} on every 
> call, but \{{ioHitCount}} is only cleared in \{{reset()}}, which 
> \{{BucketCache#logStats}} calls every 5 minutes.
> Since HBASE-4089, the RegionServer status page (\{{blockCacheLevel.jsp}}) 
> also calls it on every load. So:
> * A page load t seconds after the last stats log makes the next logged 
> \{{IOhitsPerSecond}} 300 / (300 - t) times too high, or 0 if t > 299.
> * The value on the page is wrong too, and two loads within 1 second show 0.
> The fix is to make it a pure getter over the window since the last 
> \{{reset()}}, and move the window start update into \{{reset()}}.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to