Bryan Beaudreault created HBASE-27257:
-----------------------------------------
Summary: Remove unnecessary usage of CachedBlocksByFile from RS UI
Key: HBASE-27257
URL: https://issues.apache.org/jira/browse/HBASE-27257
Project: HBase
Issue Type: Improvement
Reporter: Bryan Beaudreault
We have started deploying regionservers with large BucketCaches, with over 1M
blocks in the cache. I noticed that our RS UI was loading pretty slowly, and I
also noticed the following warning:
{quote}*The stats below are incomplete!* We ran into our accounting limit of
1000000 blocks. Up the configuration
{_}hbase.ui.blockcache.by.file.max{_}.{quote}
Tracking that down, it seems like the original implementation back in 2014 for
the BlockCache statistics used CachedBlocksByFile to calculate counts, sizes,
etc. But over time this was improved to be backed by CacheStats, for example in
HBASE-11573, HBASE-15635, HBASE-18532, etc.
At this point the cbsbf variable holding the CachedBlocksByFile object is not
actually used by anything on the RS UI. Instead those per-file statistics have
been moved to other endpoints, available via the "View block cache as JSON" and
"as JSON by file" links.
Removing the creation of the cbsbf variable makes a dramatic improvement on RS
UI load times for large caches. Prior to the change, it consistently took 4-5s
to load the UI. Afterward it takes a fraction of a second.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)