[ https://issues.apache.org/jira/browse/HBASE-8635?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13671127#comment-13671127 ]
Anoop Sam John commented on HBASE-8635: --------------------------------------- HBaseConfiguration#checkForClusterFreeMemoryLimit() {code} float globalMemstoreLimit = conf.getFloat("hbase.regionserver.global.memstore.upperLimit", 0.4f); int gml = (int)(globalMemstoreLimit * CONVERT_TO_PERCENTAGE); float blockCacheUpperLimit = conf.getFloat(HConstants.HFILE_BLOCK_CACHE_SIZE_KEY, HConstants.HFILE_BLOCK_CACHE_SIZE_DEFAULT); int bcul = (int)(blockCacheUpperLimit * CONVERT_TO_PERCENTAGE); if (CONVERT_TO_PERCENTAGE - (gml + bcul) < (int)(CONVERT_TO_PERCENTAGE * HConstants.HBASE_CLUSTER_MINIMUM_MEMORY_THRESHOLD)) { throw new RuntimeException(....) ... } {code} As per this check we need a memory of min 20%(other than the reserved max spaces) for the functioning of RS. Now in the Trunk gloabl memstore upperlimit and block cache size are default to 40% making sum to 80%. A default value of 10% to the prefetch scan should be accomodated in this condition. We need to sacrifice 10% from the block cache? > Define prefetcher.resultsize.max as percentage > ---------------------------------------------- > > Key: HBASE-8635 > URL: https://issues.apache.org/jira/browse/HBASE-8635 > Project: HBase > Issue Type: Improvement > Reporter: Ted Yu > Assignee: Jimmy Xiang > Priority: Minor > Attachments: trunk-8635.patch > > > Currently "hbase.hregionserver.prefetcher.resultsize.max" defines global > limit for prefetching. > The default value is 256MB. > It would be more flexible to define this measure as a percentage of the heap. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira