You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "stack (JIRA)" <ji...@apache.org> on 2015/06/09 19:52:00 UTC
[jira] [Created] (HBASE-13874) Fix 0.8 being hardcoded sum of
blockcache + memstore; doesn't make sense when big heap
stack created HBASE-13874:
-----------------------------
Summary: Fix 0.8 being hardcoded sum of blockcache + memstore; doesn't make sense when big heap
Key: HBASE-13874
URL: https://issues.apache.org/jira/browse/HBASE-13874
Project: HBase
Issue Type: Task
Reporter: stack
Fix this in HBaseConfiguration:
{code}
79 private static void checkForClusterFreeMemoryLimit(Configuration conf) {
80 float globalMemstoreLimit = conf.getFloat("hbase.regionserver.global.memstore.upperLimit", 0.4f);
81 int gml = (int)(globalMemstoreLimit * CONVERT_TO_PERCENTAGE);
82 float blockCacheUpperLimit =
83 conf.getFloat(HConstants.HFILE_BLOCK_CACHE_SIZE_KEY,
84 HConstants.HFILE_BLOCK_CACHE_SIZE_DEFAULT);
85 int bcul = (int)(blockCacheUpperLimit * CONVERT_TO_PERCENTAGE);
86 if (CONVERT_TO_PERCENTAGE - (gml + bcul)
87 < (int)(CONVERT_TO_PERCENTAGE *
88 HConstants.HBASE_CLUSTER_MINIMUM_MEMORY_THRESHOLD)) {
89 throw new RuntimeException(
90 "Current heap configuration for MemStore and BlockCache exceeds " +
91 "the threshold required for successful cluster operation. " +
92 "The combined value cannot exceed 0.8. Please check " +
93 "the settings for hbase.regionserver.global.memstore.upperLimit and " +
94 "hfile.block.cache.size in your configuration. " +
95 "hbase.regionserver.global.memstore.upperLimit is " +
96 globalMemstoreLimit +
97 " hfile.block.cache.size is " + blockCacheUpperLimit);
98 }
99 }
{code}
Hardcoding 0.8 doesn't make much sense in a heap of 100G+ (that is 20G over for hbase itself -- more than enough).
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)