hbase git commit: HBASE-21498 Master OOM when SplitTableRegionProcedure new CacheConfig and instantiate a new BlockCache

2018-12-18 Thread zghao
Repository: hbase
Updated Branches:
  refs/heads/branch-2.0 4a958c8c4 -> b07a28c56


HBASE-21498 Master OOM when SplitTableRegionProcedure new CacheConfig and 
instantiate a new BlockCache


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/b07a28c5
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/b07a28c5
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/b07a28c5

Branch: refs/heads/branch-2.0
Commit: b07a28c5670dadb2c1b8762321a3825e4fbd91b1
Parents: 4a958c8
Author: Guanghao Zhang 
Authored: Mon Nov 19 22:10:43 2018 +0800
Committer: Guanghao Zhang 
Committed: Wed Dec 19 14:19:20 2018 +0800

--
 .../hadoop/hbase/io/hfile/CacheConfig.java  |  44 ++-
 .../apache/hadoop/hbase/mob/MobCacheConfig.java |   5 -
 .../hbase/regionserver/HRegionServer.java   |  11 +-
 .../hbase/io/encoding/TestEncodedSeekers.java   |   1 +
 .../hbase/io/hfile/TestBlockCacheReporting.java |  16 ++-
 .../hadoop/hbase/io/hfile/TestCacheConfig.java  |   4 +
 .../hadoop/hbase/io/hfile/TestCacheOnWrite.java |   2 +-
 .../io/hfile/TestForceCacheImportantBlocks.java |   1 +
 .../hbase/io/hfile/TestHFileBlockIndex.java | 115 +--
 .../hadoop/hbase/io/hfile/TestPrefetch.java |   1 +
 .../io/hfile/TestScannerFromBucketCache.java|   1 +
 .../TestScannerSelectionUsingKeyRange.java  |   1 +
 .../io/hfile/TestScannerSelectionUsingTTL.java  |   1 +
 .../hbase/regionserver/TestBlocksRead.java  |   1 +
 .../hbase/regionserver/TestBlocksScanned.java   |   2 +-
 .../regionserver/TestCacheOnWriteInSchema.java  |   1 +
 .../regionserver/TestCompoundBloomFilter.java   |   1 +
 .../hbase/regionserver/TestHStoreFile.java  |   2 +-
 .../hbase/regionserver/TestRecoveredEdits.java  |   2 +
 19 files changed, 99 insertions(+), 113 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/b07a28c5/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
index 147568e..a022552 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
@@ -215,7 +215,7 @@ public class CacheConfig {
* @param family column family configuration
*/
   public CacheConfig(Configuration conf, ColumnFamilyDescriptor family) {
-this(CacheConfig.instantiateBlockCache(conf),
+this(GLOBAL_BLOCK_CACHE_INSTANCE,
 conf.getBoolean(CACHE_DATA_ON_READ_KEY, DEFAULT_CACHE_DATA_ON_READ)
&& family.isBlockCacheEnabled(),
 family.isInMemory(),
@@ -245,14 +245,10 @@ public class CacheConfig {
* @param conf hbase configuration
*/
   public CacheConfig(Configuration conf) {
-this(conf, true);
-  }
-
-  public CacheConfig(Configuration conf, boolean enableBlockCache) {
-this(conf, enableBlockCache,
+this(GLOBAL_BLOCK_CACHE_INSTANCE,
 conf.getBoolean(CACHE_DATA_ON_READ_KEY, DEFAULT_CACHE_DATA_ON_READ),
 DEFAULT_IN_MEMORY, // This is a family-level setting so can't be set
-   // strictly from conf
+// strictly from conf
 conf.getBoolean(CACHE_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_DATA_ON_WRITE),
 conf.getBoolean(CACHE_INDEX_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_INDEXES_ON_WRITE),
 conf.getBoolean(CACHE_BLOOM_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_BLOOMS_ON_WRITE),
@@ -263,28 +259,6 @@ public class CacheConfig {
 LOG.info("Created cacheConfig: " + this);
   }
 
-  private CacheConfig(Configuration conf, boolean enableBlockCache,
-  final boolean cacheDataOnRead, final boolean inMemory,
-  final boolean cacheDataOnWrite, final boolean cacheIndexesOnWrite,
-  final boolean cacheBloomsOnWrite, final boolean evictOnClose,
-  final boolean cacheDataCompressed, final boolean prefetchOnOpen,
-  final boolean dropBehindCompaction) {
-if (enableBlockCache) {
-  this.blockCache = CacheConfig.instantiateBlockCache(conf);
-} else {
-  this.blockCache = null;
-}
-this.cacheDataOnRead = cacheDataOnRead;
-this.inMemory = inMemory;
-this.cacheDataOnWrite = cacheDataOnWrite;
-this.cacheIndexesOnWrite = cacheIndexesOnWrite;
-this.cacheBloomsOnWrite = cacheBloomsOnWrite;
-this.evictOnClose = evictOnClose;
-this.cacheDataCompressed = cacheDataCompressed;
-this.prefetchOnOpen = prefetchOnOpen;
-this.dropBehindCompaction = dropBehindCompaction;
-  }
-
   /**
* Create a block cache configuration with the specified cache and 
configuration parameters.
* @param blockCache 

hbase git commit: HBASE-21498 Master OOM when SplitTableRegionProcedure new CacheConfig and instantiate a new BlockCache

2018-12-18 Thread zghao
Repository: hbase
Updated Branches:
  refs/heads/branch-2.1 8339e4436 -> 27a0f205c


HBASE-21498 Master OOM when SplitTableRegionProcedure new CacheConfig and 
instantiate a new BlockCache


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/27a0f205
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/27a0f205
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/27a0f205

Branch: refs/heads/branch-2.1
Commit: 27a0f205c52f83fe7500ee2ffc6cf6582f565a63
Parents: 8339e44
Author: Guanghao Zhang 
Authored: Mon Nov 19 22:10:43 2018 +0800
Committer: Guanghao Zhang 
Committed: Wed Dec 19 14:16:05 2018 +0800

--
 .../hadoop/hbase/io/hfile/CacheConfig.java  |  44 ++-
 .../apache/hadoop/hbase/mob/MobCacheConfig.java |   5 -
 .../hbase/regionserver/HRegionServer.java   |  11 +-
 .../hbase/io/encoding/TestEncodedSeekers.java   |   1 +
 .../hbase/io/hfile/TestBlockCacheReporting.java |  16 ++-
 .../hadoop/hbase/io/hfile/TestCacheConfig.java  |   4 +
 .../hadoop/hbase/io/hfile/TestCacheOnWrite.java |   2 +-
 .../io/hfile/TestForceCacheImportantBlocks.java |   1 +
 .../hbase/io/hfile/TestHFileBlockIndex.java | 115 +--
 .../hadoop/hbase/io/hfile/TestPrefetch.java |   1 +
 .../io/hfile/TestScannerFromBucketCache.java|   1 +
 .../TestScannerSelectionUsingKeyRange.java  |   1 +
 .../io/hfile/TestScannerSelectionUsingTTL.java  |   1 +
 .../hbase/regionserver/TestBlocksRead.java  |   1 +
 .../hbase/regionserver/TestBlocksScanned.java   |   2 +-
 .../regionserver/TestCacheOnWriteInSchema.java  |   1 +
 .../regionserver/TestCompoundBloomFilter.java   |   1 +
 .../hbase/regionserver/TestHStoreFile.java  |   2 +-
 .../hbase/regionserver/TestRecoveredEdits.java  |   2 +
 19 files changed, 99 insertions(+), 113 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/27a0f205/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
index 147568e..a022552 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
@@ -215,7 +215,7 @@ public class CacheConfig {
* @param family column family configuration
*/
   public CacheConfig(Configuration conf, ColumnFamilyDescriptor family) {
-this(CacheConfig.instantiateBlockCache(conf),
+this(GLOBAL_BLOCK_CACHE_INSTANCE,
 conf.getBoolean(CACHE_DATA_ON_READ_KEY, DEFAULT_CACHE_DATA_ON_READ)
&& family.isBlockCacheEnabled(),
 family.isInMemory(),
@@ -245,14 +245,10 @@ public class CacheConfig {
* @param conf hbase configuration
*/
   public CacheConfig(Configuration conf) {
-this(conf, true);
-  }
-
-  public CacheConfig(Configuration conf, boolean enableBlockCache) {
-this(conf, enableBlockCache,
+this(GLOBAL_BLOCK_CACHE_INSTANCE,
 conf.getBoolean(CACHE_DATA_ON_READ_KEY, DEFAULT_CACHE_DATA_ON_READ),
 DEFAULT_IN_MEMORY, // This is a family-level setting so can't be set
-   // strictly from conf
+// strictly from conf
 conf.getBoolean(CACHE_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_DATA_ON_WRITE),
 conf.getBoolean(CACHE_INDEX_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_INDEXES_ON_WRITE),
 conf.getBoolean(CACHE_BLOOM_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_BLOOMS_ON_WRITE),
@@ -263,28 +259,6 @@ public class CacheConfig {
 LOG.info("Created cacheConfig: " + this);
   }
 
-  private CacheConfig(Configuration conf, boolean enableBlockCache,
-  final boolean cacheDataOnRead, final boolean inMemory,
-  final boolean cacheDataOnWrite, final boolean cacheIndexesOnWrite,
-  final boolean cacheBloomsOnWrite, final boolean evictOnClose,
-  final boolean cacheDataCompressed, final boolean prefetchOnOpen,
-  final boolean dropBehindCompaction) {
-if (enableBlockCache) {
-  this.blockCache = CacheConfig.instantiateBlockCache(conf);
-} else {
-  this.blockCache = null;
-}
-this.cacheDataOnRead = cacheDataOnRead;
-this.inMemory = inMemory;
-this.cacheDataOnWrite = cacheDataOnWrite;
-this.cacheIndexesOnWrite = cacheIndexesOnWrite;
-this.cacheBloomsOnWrite = cacheBloomsOnWrite;
-this.evictOnClose = evictOnClose;
-this.cacheDataCompressed = cacheDataCompressed;
-this.prefetchOnOpen = prefetchOnOpen;
-this.dropBehindCompaction = dropBehindCompaction;
-  }
-
   /**
* Create a block cache configuration with the specified cache and 
configuration parameters.
* @param blockCache 

[22/51] [abbrv] hbase git commit: HBASE-21498 Master OOM when SplitTableRegionProcedure new CacheConfig and instantiate a new BlockCache

2018-12-07 Thread elserj
HBASE-21498 Master OOM when SplitTableRegionProcedure new CacheConfig and 
instantiate a new BlockCache


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/34e1d744
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/34e1d744
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/34e1d744

Branch: refs/heads/HBASE-20952
Commit: 34e1d744f7d3d836deeda0704711afc969b37f16
Parents: 1acbd36
Author: Guanghao Zhang 
Authored: Mon Nov 19 22:10:43 2018 +0800
Committer: Guanghao Zhang 
Committed: Tue Nov 27 14:20:15 2018 +0800

--
 .../hadoop/hbase/io/hfile/CacheConfig.java  |  44 ++-
 .../apache/hadoop/hbase/mob/MobCacheConfig.java |   5 -
 .../hbase/regionserver/HRegionServer.java   |  11 +-
 .../hbase/io/encoding/TestEncodedSeekers.java   |   1 +
 .../hbase/io/hfile/TestBlockCacheReporting.java |  16 ++-
 .../hadoop/hbase/io/hfile/TestCacheConfig.java  |   4 +
 .../hadoop/hbase/io/hfile/TestCacheOnWrite.java |   2 +-
 .../io/hfile/TestForceCacheImportantBlocks.java |   1 +
 .../hbase/io/hfile/TestHFileBlockIndex.java | 115 +--
 .../hadoop/hbase/io/hfile/TestPrefetch.java |   1 +
 .../io/hfile/TestScannerFromBucketCache.java|   1 +
 .../TestScannerSelectionUsingKeyRange.java  |   1 +
 .../io/hfile/TestScannerSelectionUsingTTL.java  |   1 +
 .../hbase/regionserver/TestBlocksRead.java  |   1 +
 .../hbase/regionserver/TestBlocksScanned.java   |   2 +-
 .../regionserver/TestCacheOnWriteInSchema.java  |   1 +
 .../regionserver/TestCompoundBloomFilter.java   |   1 +
 .../hbase/regionserver/TestHStoreFile.java  |   2 +-
 .../hbase/regionserver/TestRecoveredEdits.java  |   2 +
 19 files changed, 99 insertions(+), 113 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/34e1d744/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
index 147568e..a022552 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
@@ -215,7 +215,7 @@ public class CacheConfig {
* @param family column family configuration
*/
   public CacheConfig(Configuration conf, ColumnFamilyDescriptor family) {
-this(CacheConfig.instantiateBlockCache(conf),
+this(GLOBAL_BLOCK_CACHE_INSTANCE,
 conf.getBoolean(CACHE_DATA_ON_READ_KEY, DEFAULT_CACHE_DATA_ON_READ)
&& family.isBlockCacheEnabled(),
 family.isInMemory(),
@@ -245,14 +245,10 @@ public class CacheConfig {
* @param conf hbase configuration
*/
   public CacheConfig(Configuration conf) {
-this(conf, true);
-  }
-
-  public CacheConfig(Configuration conf, boolean enableBlockCache) {
-this(conf, enableBlockCache,
+this(GLOBAL_BLOCK_CACHE_INSTANCE,
 conf.getBoolean(CACHE_DATA_ON_READ_KEY, DEFAULT_CACHE_DATA_ON_READ),
 DEFAULT_IN_MEMORY, // This is a family-level setting so can't be set
-   // strictly from conf
+// strictly from conf
 conf.getBoolean(CACHE_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_DATA_ON_WRITE),
 conf.getBoolean(CACHE_INDEX_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_INDEXES_ON_WRITE),
 conf.getBoolean(CACHE_BLOOM_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_BLOOMS_ON_WRITE),
@@ -263,28 +259,6 @@ public class CacheConfig {
 LOG.info("Created cacheConfig: " + this);
   }
 
-  private CacheConfig(Configuration conf, boolean enableBlockCache,
-  final boolean cacheDataOnRead, final boolean inMemory,
-  final boolean cacheDataOnWrite, final boolean cacheIndexesOnWrite,
-  final boolean cacheBloomsOnWrite, final boolean evictOnClose,
-  final boolean cacheDataCompressed, final boolean prefetchOnOpen,
-  final boolean dropBehindCompaction) {
-if (enableBlockCache) {
-  this.blockCache = CacheConfig.instantiateBlockCache(conf);
-} else {
-  this.blockCache = null;
-}
-this.cacheDataOnRead = cacheDataOnRead;
-this.inMemory = inMemory;
-this.cacheDataOnWrite = cacheDataOnWrite;
-this.cacheIndexesOnWrite = cacheIndexesOnWrite;
-this.cacheBloomsOnWrite = cacheBloomsOnWrite;
-this.evictOnClose = evictOnClose;
-this.cacheDataCompressed = cacheDataCompressed;
-this.prefetchOnOpen = prefetchOnOpen;
-this.dropBehindCompaction = dropBehindCompaction;
-  }
-
   /**
* Create a block cache configuration with the specified cache and 
configuration parameters.
* @param blockCache reference to block cache, null if completely disabled
@@ -669,12 +643,18 @@ public class 

hbase git commit: HBASE-21498 Master OOM when SplitTableRegionProcedure new CacheConfig and instantiate a new BlockCache

2018-11-26 Thread zghao
Repository: hbase
Updated Branches:
  refs/heads/branch-2 33c4da555 -> 958e84d02


HBASE-21498 Master OOM when SplitTableRegionProcedure new CacheConfig and 
instantiate a new BlockCache


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/958e84d0
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/958e84d0
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/958e84d0

Branch: refs/heads/branch-2
Commit: 958e84d0230294b2190bba3aea108178a81ff795
Parents: 33c4da5
Author: Guanghao Zhang 
Authored: Mon Nov 19 22:10:43 2018 +0800
Committer: Guanghao Zhang 
Committed: Tue Nov 27 14:23:27 2018 +0800

--
 .../hadoop/hbase/io/hfile/CacheConfig.java  |  44 ++-
 .../apache/hadoop/hbase/mob/MobCacheConfig.java |   5 -
 .../hbase/regionserver/HRegionServer.java   |  11 +-
 .../hbase/io/encoding/TestEncodedSeekers.java   |   1 +
 .../hbase/io/hfile/TestBlockCacheReporting.java |  16 ++-
 .../hadoop/hbase/io/hfile/TestCacheConfig.java  |   4 +
 .../hadoop/hbase/io/hfile/TestCacheOnWrite.java |   2 +-
 .../io/hfile/TestForceCacheImportantBlocks.java |   1 +
 .../hbase/io/hfile/TestHFileBlockIndex.java | 115 +--
 .../hadoop/hbase/io/hfile/TestPrefetch.java |   1 +
 .../io/hfile/TestScannerFromBucketCache.java|   1 +
 .../TestScannerSelectionUsingKeyRange.java  |   1 +
 .../io/hfile/TestScannerSelectionUsingTTL.java  |   1 +
 .../hbase/regionserver/TestBlocksRead.java  |   1 +
 .../hbase/regionserver/TestBlocksScanned.java   |   2 +-
 .../regionserver/TestCacheOnWriteInSchema.java  |   1 +
 .../regionserver/TestCompoundBloomFilter.java   |   1 +
 .../hbase/regionserver/TestHStoreFile.java  |   2 +-
 .../hbase/regionserver/TestRecoveredEdits.java  |   2 +
 19 files changed, 99 insertions(+), 113 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/958e84d0/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
index 147568e..a022552 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
@@ -215,7 +215,7 @@ public class CacheConfig {
* @param family column family configuration
*/
   public CacheConfig(Configuration conf, ColumnFamilyDescriptor family) {
-this(CacheConfig.instantiateBlockCache(conf),
+this(GLOBAL_BLOCK_CACHE_INSTANCE,
 conf.getBoolean(CACHE_DATA_ON_READ_KEY, DEFAULT_CACHE_DATA_ON_READ)
&& family.isBlockCacheEnabled(),
 family.isInMemory(),
@@ -245,14 +245,10 @@ public class CacheConfig {
* @param conf hbase configuration
*/
   public CacheConfig(Configuration conf) {
-this(conf, true);
-  }
-
-  public CacheConfig(Configuration conf, boolean enableBlockCache) {
-this(conf, enableBlockCache,
+this(GLOBAL_BLOCK_CACHE_INSTANCE,
 conf.getBoolean(CACHE_DATA_ON_READ_KEY, DEFAULT_CACHE_DATA_ON_READ),
 DEFAULT_IN_MEMORY, // This is a family-level setting so can't be set
-   // strictly from conf
+// strictly from conf
 conf.getBoolean(CACHE_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_DATA_ON_WRITE),
 conf.getBoolean(CACHE_INDEX_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_INDEXES_ON_WRITE),
 conf.getBoolean(CACHE_BLOOM_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_BLOOMS_ON_WRITE),
@@ -263,28 +259,6 @@ public class CacheConfig {
 LOG.info("Created cacheConfig: " + this);
   }
 
-  private CacheConfig(Configuration conf, boolean enableBlockCache,
-  final boolean cacheDataOnRead, final boolean inMemory,
-  final boolean cacheDataOnWrite, final boolean cacheIndexesOnWrite,
-  final boolean cacheBloomsOnWrite, final boolean evictOnClose,
-  final boolean cacheDataCompressed, final boolean prefetchOnOpen,
-  final boolean dropBehindCompaction) {
-if (enableBlockCache) {
-  this.blockCache = CacheConfig.instantiateBlockCache(conf);
-} else {
-  this.blockCache = null;
-}
-this.cacheDataOnRead = cacheDataOnRead;
-this.inMemory = inMemory;
-this.cacheDataOnWrite = cacheDataOnWrite;
-this.cacheIndexesOnWrite = cacheIndexesOnWrite;
-this.cacheBloomsOnWrite = cacheBloomsOnWrite;
-this.evictOnClose = evictOnClose;
-this.cacheDataCompressed = cacheDataCompressed;
-this.prefetchOnOpen = prefetchOnOpen;
-this.dropBehindCompaction = dropBehindCompaction;
-  }
-
   /**
* Create a block cache configuration with the specified cache and 
configuration parameters.
* @param blockCache reference 

hbase git commit: HBASE-21498 Master OOM when SplitTableRegionProcedure new CacheConfig and instantiate a new BlockCache

2018-11-26 Thread zghao
Repository: hbase
Updated Branches:
  refs/heads/master 1acbd36c9 -> 34e1d744f


HBASE-21498 Master OOM when SplitTableRegionProcedure new CacheConfig and 
instantiate a new BlockCache


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/34e1d744
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/34e1d744
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/34e1d744

Branch: refs/heads/master
Commit: 34e1d744f7d3d836deeda0704711afc969b37f16
Parents: 1acbd36
Author: Guanghao Zhang 
Authored: Mon Nov 19 22:10:43 2018 +0800
Committer: Guanghao Zhang 
Committed: Tue Nov 27 14:20:15 2018 +0800

--
 .../hadoop/hbase/io/hfile/CacheConfig.java  |  44 ++-
 .../apache/hadoop/hbase/mob/MobCacheConfig.java |   5 -
 .../hbase/regionserver/HRegionServer.java   |  11 +-
 .../hbase/io/encoding/TestEncodedSeekers.java   |   1 +
 .../hbase/io/hfile/TestBlockCacheReporting.java |  16 ++-
 .../hadoop/hbase/io/hfile/TestCacheConfig.java  |   4 +
 .../hadoop/hbase/io/hfile/TestCacheOnWrite.java |   2 +-
 .../io/hfile/TestForceCacheImportantBlocks.java |   1 +
 .../hbase/io/hfile/TestHFileBlockIndex.java | 115 +--
 .../hadoop/hbase/io/hfile/TestPrefetch.java |   1 +
 .../io/hfile/TestScannerFromBucketCache.java|   1 +
 .../TestScannerSelectionUsingKeyRange.java  |   1 +
 .../io/hfile/TestScannerSelectionUsingTTL.java  |   1 +
 .../hbase/regionserver/TestBlocksRead.java  |   1 +
 .../hbase/regionserver/TestBlocksScanned.java   |   2 +-
 .../regionserver/TestCacheOnWriteInSchema.java  |   1 +
 .../regionserver/TestCompoundBloomFilter.java   |   1 +
 .../hbase/regionserver/TestHStoreFile.java  |   2 +-
 .../hbase/regionserver/TestRecoveredEdits.java  |   2 +
 19 files changed, 99 insertions(+), 113 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/34e1d744/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
index 147568e..a022552 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
@@ -215,7 +215,7 @@ public class CacheConfig {
* @param family column family configuration
*/
   public CacheConfig(Configuration conf, ColumnFamilyDescriptor family) {
-this(CacheConfig.instantiateBlockCache(conf),
+this(GLOBAL_BLOCK_CACHE_INSTANCE,
 conf.getBoolean(CACHE_DATA_ON_READ_KEY, DEFAULT_CACHE_DATA_ON_READ)
&& family.isBlockCacheEnabled(),
 family.isInMemory(),
@@ -245,14 +245,10 @@ public class CacheConfig {
* @param conf hbase configuration
*/
   public CacheConfig(Configuration conf) {
-this(conf, true);
-  }
-
-  public CacheConfig(Configuration conf, boolean enableBlockCache) {
-this(conf, enableBlockCache,
+this(GLOBAL_BLOCK_CACHE_INSTANCE,
 conf.getBoolean(CACHE_DATA_ON_READ_KEY, DEFAULT_CACHE_DATA_ON_READ),
 DEFAULT_IN_MEMORY, // This is a family-level setting so can't be set
-   // strictly from conf
+// strictly from conf
 conf.getBoolean(CACHE_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_DATA_ON_WRITE),
 conf.getBoolean(CACHE_INDEX_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_INDEXES_ON_WRITE),
 conf.getBoolean(CACHE_BLOOM_BLOCKS_ON_WRITE_KEY, 
DEFAULT_CACHE_BLOOMS_ON_WRITE),
@@ -263,28 +259,6 @@ public class CacheConfig {
 LOG.info("Created cacheConfig: " + this);
   }
 
-  private CacheConfig(Configuration conf, boolean enableBlockCache,
-  final boolean cacheDataOnRead, final boolean inMemory,
-  final boolean cacheDataOnWrite, final boolean cacheIndexesOnWrite,
-  final boolean cacheBloomsOnWrite, final boolean evictOnClose,
-  final boolean cacheDataCompressed, final boolean prefetchOnOpen,
-  final boolean dropBehindCompaction) {
-if (enableBlockCache) {
-  this.blockCache = CacheConfig.instantiateBlockCache(conf);
-} else {
-  this.blockCache = null;
-}
-this.cacheDataOnRead = cacheDataOnRead;
-this.inMemory = inMemory;
-this.cacheDataOnWrite = cacheDataOnWrite;
-this.cacheIndexesOnWrite = cacheIndexesOnWrite;
-this.cacheBloomsOnWrite = cacheBloomsOnWrite;
-this.evictOnClose = evictOnClose;
-this.cacheDataCompressed = cacheDataCompressed;
-this.prefetchOnOpen = prefetchOnOpen;
-this.dropBehindCompaction = dropBehindCompaction;
-  }
-
   /**
* Create a block cache configuration with the specified cache and 
configuration parameters.
* @param blockCache reference to