[
https://issues.apache.org/jira/browse/HBASE-28059?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Charles Connell updated HBASE-28059:
------------------------------------
Description:
When I run a snippet of code like this:
{code:java}
Map<byte[], RegionLoad> regionLoadMap = admin
.getClusterStatus()
.getLoad(
ServerName.parseServerName(
"my-server.my-company.net,60020,1693513660506"
)
)
.getRegionsLoad();
for (byte[] startKey : regionLoadMap.keySet()) {
RegionLoad regionLoad = regionLoadMap.get(startKey);
LOG.info("Region {}: {}", Bytes.toStringBinary(startKey), regionLoad);
} {code}
I get logs like this:
{noformat}
Region <redacted-table-name>,<redacted row
key>,1659484033280.2b89407a1223720344bed425bf3c29b0.: numberOfStores=1,
numberOfStorefiles=3, storeRefCount=0, storefileUncompressedSizeMB=17998848,
lastMajorCompactionTimestamp=1693211464712, storefileSizeMB=5895,
compressionRatio=0.0003, memstoreSizeMB=1, readRequestsCount=118899553,
writeRequestsCount=731192, rootIndexSizeKB=9, totalStaticIndexSizeKB=10413,
totalStaticBloomSizeKB=6592, totalCompactingKVs=0, currentCompactedKVs=0,
compactionProgressPct=NaN, completeSequenceId=78093096,
dataLocality=1.0{noformat}
The {{storefileUncompressedSizeMB}} is vastly larger than the
{{{}storefileSizeMB{}}}, so much more that it's not believable. I checked the
store files in question in this instance. Adding up the uncompressed size
reported in the HFile trailers sums to 5895 MiB, exactly 1024 times less than
the reported 17998848.
The reason for the misreporting is that
{{RegionLoad#getStoreUncompressedSizeMB()}} converts the value from a {{Size}}
object wrong.
was:
When I run a snippet of code like this:
{code:java}
Map<byte[], RegionLoad> regionLoadMap = admin
.getClusterStatus()
.getLoad(
ServerName.parseServerName(
"my-server.my-company.net,60020,1693513660506"
)
)
.getRegionsLoad();
for (byte[] startKey : regionLoadMap.keySet()) {
RegionLoad regionLoad = regionLoadMap.get(startKey);
LOG.info("Region {}: {}", Bytes.toStringBinary(startKey), regionLoad);
} {code}
I get logs like this:
{noformat}
Region <redacted-table-name>,<redacted row
key>,1659484033280.2b89407a1223720344bed425bf3c29b0.: numberOfStores=1,
numberOfStorefiles=3, storeRefCount=0, storefileUncompressedSizeMB=17998848,
lastMajorCompactionTimestamp=1693211464712, storefileSizeMB=5895,
compressionRatio=0.0003, memstoreSizeMB=1, readRequestsCount=118899553,
writeRequestsCount=731192, rootIndexSizeKB=9, totalStaticIndexSizeKB=10413,
totalStaticBloomSizeKB=6592, totalCompactingKVs=0, currentCompactedKVs=0,
compactionProgressPct=NaN, completeSequenceId=78093096,
dataLocality=1.0{noformat}
The {{storefileUncompressedSizeMB}} is vastly larger than the
{{{}storefileSizeMB{}}}, so much more that it's not believable. I checked the
store files in question in this instance. Adding up the uncompressed size
reported in the HFile trailers sums to 5895 MiB, exactly 1024 times less than
the reported 17998848.
The reason for the misreporting is that {{RegionLoad#}}
{{getStoreUncompressedSizeMB() }}converts the value from a {{Size}} object
wrong.
> RegionLoad returns getStoreUncompressedSizeMB() that is 1024 times too large
> ----------------------------------------------------------------------------
>
> Key: HBASE-28059
> URL: https://issues.apache.org/jira/browse/HBASE-28059
> Project: HBase
> Issue Type: Improvement
> Components: Admin
> Affects Versions: 2.5.5
> Reporter: Charles Connell
> Assignee: Charles Connell
> Priority: Major
>
> When I run a snippet of code like this:
> {code:java}
> Map<byte[], RegionLoad> regionLoadMap = admin
> .getClusterStatus()
> .getLoad(
> ServerName.parseServerName(
> "my-server.my-company.net,60020,1693513660506"
> )
> )
> .getRegionsLoad();
> for (byte[] startKey : regionLoadMap.keySet()) {
> RegionLoad regionLoad = regionLoadMap.get(startKey);
> LOG.info("Region {}: {}", Bytes.toStringBinary(startKey), regionLoad);
> } {code}
> I get logs like this:
> {noformat}
> Region <redacted-table-name>,<redacted row
> key>,1659484033280.2b89407a1223720344bed425bf3c29b0.: numberOfStores=1,
> numberOfStorefiles=3, storeRefCount=0, storefileUncompressedSizeMB=17998848,
> lastMajorCompactionTimestamp=1693211464712, storefileSizeMB=5895,
> compressionRatio=0.0003, memstoreSizeMB=1, readRequestsCount=118899553,
> writeRequestsCount=731192, rootIndexSizeKB=9, totalStaticIndexSizeKB=10413,
> totalStaticBloomSizeKB=6592, totalCompactingKVs=0, currentCompactedKVs=0,
> compactionProgressPct=NaN, completeSequenceId=78093096,
> dataLocality=1.0{noformat}
> The {{storefileUncompressedSizeMB}} is vastly larger than the
> {{{}storefileSizeMB{}}}, so much more that it's not believable. I checked the
> store files in question in this instance. Adding up the uncompressed size
> reported in the HFile trailers sums to 5895 MiB, exactly 1024 times less than
> the reported 17998848.
> The reason for the misreporting is that
> {{RegionLoad#getStoreUncompressedSizeMB()}} converts the value from a
> {{Size}} object wrong.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)