Index: src/main/java/org/apache/hadoop/hbase/HConstants.java =================================================================== --- src/main/java/org/apache/hadoop/hbase/HConstants.java (revision 1190492) +++ src/main/java/org/apache/hadoop/hbase/HConstants.java (working copy) @@ -81,6 +81,9 @@ /** Parameter name for port master listens on. */ public static final String MASTER_PORT = "hbase.master.port"; + /** Parameter name for whether the JVM hosts master. */ + public static final String IS_MASTER = "hbase.is.master"; + /** default port that the master listens on */ public static final int DEFAULT_MASTER_PORT = 60000; Index: src/main/java/org/apache/hadoop/hbase/regionserver/Store.java =================================================================== --- src/main/java/org/apache/hadoop/hbase/regionserver/Store.java (revision 1190492) +++ src/main/java/org/apache/hadoop/hbase/regionserver/Store.java (working copy) @@ -196,6 +196,11 @@ conf.getInt("hbase.hstore.compaction.min", /*old name*/ conf.getInt("hbase.hstore.compactionThreshold", 3))); + if (conf.getBoolean(HConstants.IS_MASTER, false)) { + // Disable the block cache on the master + this.conf.setFloat(CacheConfig.HFILE_BLOCK_CACHE_SIZE_KEY, 0.0f); + } + // Setting up cache configuration for this family this.cacheConf = new CacheConfig(conf, family); this.blockingStoreFileCount = Index: src/main/java/org/apache/hadoop/hbase/master/HMaster.java =================================================================== --- src/main/java/org/apache/hadoop/hbase/master/HMaster.java (revision 1190492) +++ src/main/java/org/apache/hadoop/hbase/master/HMaster.java (working copy) @@ -200,6 +200,7 @@ public HMaster(final Configuration conf) throws IOException, KeeperException, InterruptedException { this.conf = conf; + this.conf.setBoolean(HConstants.IS_MASTER, true); // Set how many times to retry talking to another server over HConnection. HConnectionManager.setServerSideHConnectionRetries(this.conf, LOG); // Server to handle client requests.