Karthik Palanisamy created HBASE-23115:
------------------------------------------
Summary: Unit change for StoreFileSize and MemStoreSize in
table.jsp
Key: HBASE-23115
URL: https://issues.apache.org/jira/browse/HBASE-23115
Project: HBase
Issue Type: Bug
Components: metrics, UI
Affects Versions: 3.0.0
Reporter: Karthik Palanisamy
Assignee: Karthik Palanisamy
Attachments: Units.pdf
StoreFileSize and MemstoreSize usually returned in MBs
([link|[https://github.com/apache/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java#L1668]],
[link|[https://github.com/apache/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java#L1656]])
but table.jsp page have inaccurate unit. The reason is table.jsp
([link|[https://github.com/apache/hbase/blob/master/hbase-server/src/main/resources/hbase-webapps/master/table.jsp#L488]])
use org.apache.hadoop.util.StringUtils.byteDesc(long len), this will perform
longtostring conversion and returns its unit(B, KB, MB, GB, TB, PB) based on
length. The concern
[here|[https://github.com/apache/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java#L1668]]
is computation (ByteVal/1024/1024) will output always lesser than 1 for store
contains few bytes or few kbs. Also, typecast will not round up to its nearest
value.
I think the best option is changing unit in table.jsp instead of changing code,
otherwise we may end up doing many refactors from getMemStoreSizeMB,
setMemStoreSizeMB, hasMemStoreSizeMB, getStorefileSizeMB, setStorefileSizeMB,..
Please find the attachment, a simple example is posted.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)