[ https://issues.apache.org/jira/browse/HBASE-21498?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16694526#comment-16694526 ]
Anoop Sam John commented on HBASE-21498: ---------------------------------------- bq. if (!(this instanceof HMaster && !LoadBalancer.isTablesOnMaster(conf))) { More than one negate with &&.. Difficult wrt readability of code. Can we simplify pls? Not on this patch.. But we have a problem in UTs with mini cluster. Even if there are n RSs, we will end up creating one BC only and share. CacheConfig.instantiateBlockCache(conf); ... cacheConfig = new CacheConfig(conf); A bit strange this sequence. We have many constructors in CacheConfig. Do we really need all? We can reduce? Passing around the static singleton object looks a bit odd. > Master OOM when SplitTableRegionProcedure new CacheConfig and instantiate a > new BlockCache > ------------------------------------------------------------------------------------------ > > Key: HBASE-21498 > URL: https://issues.apache.org/jira/browse/HBASE-21498 > Project: HBase > Issue Type: Improvement > Reporter: Guanghao Zhang > Assignee: Guanghao Zhang > Priority: Major > Attachments: HBASE-21498.master.001.patch, > HBASE-21498.master.002.patch, HBASE-21498.master.003.patch, > HBASE-21498.master.004.patch > > > In our cluster, we use a small heap/offheap config for master. After > HBASE-21290, master doesn't instantiate BlockCache when it not carry table. > But it will new CacheConfig in SplitTableRegionProcedure.splitStoreFiles > method. And it will instantiate a new BlockCache if it not initialized before > and make master OOM. -- This message was sent by Atlassian JIRA (v7.6.3#76005)