You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ap...@apache.org on 2019/06/05 22:35:17 UTC

[hbase] branch branch-1.3 updated (9dbce67 -> da2d2a9)

This is an automated email from the ASF dual-hosted git repository.

apurtell pushed a change to branch branch-1.3
in repository https://gitbox.apache.org/repos/asf/hbase.git.


    from 9dbce67  HBASE-21920 Ignoring 'empty' end_key while calculating end_key for new region in HBCK -fixHdfsOverlaps command can cause data loss
     new cade234  HBASE-22540 [Memstore] Correct counters in MemStoreChunkPool
     new da2d2a9  Update CHANGES.txt for 1.3.5RC0

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 CHANGES.txt                                        |  2 ++
 .../hbase/regionserver/MemStoreChunkPool.java      | 23 ++++++++++++----------
 2 files changed, 15 insertions(+), 10 deletions(-)


[hbase] 01/02: HBASE-22540 [Memstore] Correct counters in MemStoreChunkPool

Posted by ap...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

apurtell pushed a commit to branch branch-1.3
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit cade234c40b420f3e75bd7767afd595fc1a27a41
Author: Reid Chan <re...@apache.org>
AuthorDate: Wed Jun 5 11:55:10 2019 +0800

    HBASE-22540 [Memstore] Correct counters in MemStoreChunkPool
    
    * First commit: HBASE-22540 [Memstore] Correct counters in MemStoreChunkPool
    
    * Address comment and remove useless parent thread info from Statistics thread
    
    Signed-off-by: Andrew Purtell <ap...@apache.org>
---
 .../hbase/regionserver/MemStoreChunkPool.java      | 23 ++++++++++++----------
 1 file changed, 13 insertions(+), 10 deletions(-)

diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreChunkPool.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreChunkPool.java
index eb43b43..763a574 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreChunkPool.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MemStoreChunkPool.java
@@ -77,6 +77,7 @@ public class MemStoreChunkPool {
   private static final int statThreadPeriod = 60 * 5;
   private AtomicLong createdChunkCount = new AtomicLong();
   private AtomicLong reusedChunkCount = new AtomicLong();
+  private AtomicLong requestedChunkCount = new AtomicLong();
 
   MemStoreChunkPool(Configuration conf, int chunkSize, int maxCount,
       int initialCount) {
@@ -88,9 +89,9 @@ public class MemStoreChunkPool {
       chunk.init();
       reclaimedChunks.add(chunk);
     }
-    final String n = Thread.currentThread().getName();
+    createdChunkCount.set(initialCount);
     scheduleThreadPool = Executors.newScheduledThreadPool(1,
-        new ThreadFactoryBuilder().setNameFormat(n+"-MemStoreChunkPool Statistics")
+        new ThreadFactoryBuilder().setNameFormat("MemStoreChunkPool Statistics")
             .setDaemon(true).build());
     this.scheduleThreadPool.scheduleAtFixedRate(new StatisticsThread(this),
         statThreadPeriod, statThreadPeriod, TimeUnit.SECONDS);
@@ -102,6 +103,7 @@ public class MemStoreChunkPool {
    * @return a chunk
    */
   Chunk getChunk() {
+    requestedChunkCount.incrementAndGet();
     Chunk chunk = reclaimedChunks.poll();
     if (chunk == null) {
       chunk = new Chunk(chunkSize);
@@ -172,15 +174,16 @@ public class MemStoreChunkPool {
   }
 
   private void logStats() {
-    if (!LOG.isDebugEnabled()) return;
-    long created = createdChunkCount.get();
+    long total = createdChunkCount.get();
     long reused = reusedChunkCount.get();
-    long total = created + reused;
-    LOG.debug("Stats: current pool size=" + reclaimedChunks.size()
-        + ",created chunk count=" + created
-        + ",reused chunk count=" + reused
-        + ",reuseRatio=" + (total == 0 ? "0" : StringUtils.formatPercent(
-            (float) reused / (float) total, 2)));
+    long available = reclaimedChunks.size();
+    long requested = requestedChunkCount.get();
+    LOG.info("Stats: chunk in pool=" + available
+        + ", chunk in use=" + (total - available)
+        + ", total chunk=" + total
+        + ", reused chunk=" + reused
+        + ", reuse ratio=" + (requested == 0 ? "0" : StringUtils.formatPercent(
+            (float) reused / (float) requested, 2)));
   }
 
   /**


[hbase] 02/02: Update CHANGES.txt for 1.3.5RC0

Posted by ap...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

apurtell pushed a commit to branch branch-1.3
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit da2d2a9e187ce907432188d064e81c7879ed069b
Author: Andrew Purtell <ap...@apache.org>
AuthorDate: Wed Jun 5 15:35:10 2019 -0700

    Update CHANGES.txt for 1.3.5RC0
---
 CHANGES.txt | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/CHANGES.txt b/CHANGES.txt
index 6c5bb84..13e57db 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -11,6 +11,7 @@ Release Notes - HBase - Version 1.3.5 06/14/2019
 ** Bug
     * [HBASE-17170] - HBase is also retrying DoNotRetryIOException because of class loader differences.
     * [HBASE-20851] - Change rubocop config for max line length of 100
+    * [HBASE-21920] - Ignoring 'empty' end_key while calculating end_key for new region in HBCK -fixHdfsOverlaps command can cause data loss
     * [HBASE-22235] - OperationStatus.{SUCCESS|FAILURE|NOT_RUN} are not visible to 3rd party coprocessors
     * [HBASE-22270] - master's jmx.clusterRequests could be negative in branch-1
     * [HBASE-22391] - Fix flaky tests from TestFromClientSide
@@ -20,6 +21,7 @@ Release Notes - HBase - Version 1.3.5 06/14/2019
     * [HBASE-22508] - Address findbugs/spotbugs complaints (branch-1.3) 
     * [HBASE-22518] - yetus personality is treating branch-1.4 like earlier branches for hadoopcheck
     * [HBASE-22533] - TestAccessController3 is flaky (branch-1)
+    * [HBASE-22540] - [Memstore] Correct counters in MemStoreChunkPool
 
 ** New Feature
     * [HBASE-21815] - Make isTrackingMetrics and getMetrics of ScannerContext public