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/07/31 00:45:25 UTC

[hbase] branch branch-1.4 updated: HBASE-22762 Print the delta between phases in the split/merge/compact/flush transaction journals

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

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


The following commit(s) were added to refs/heads/branch-1.4 by this push:
     new d63f624  HBASE-22762 Print the delta between phases in the split/merge/compact/flush transaction journals
d63f624 is described below

commit d63f624f64d24510818d9db3e943541778f085d5
Author: Xu Cang <xu...@apache.org>
AuthorDate: Tue Jul 30 15:06:06 2019 -0700

    HBASE-22762 Print the delta between phases in the split/merge/compact/flush transaction journals
    
    Signed-off-by: Andrew Purtell <ap...@apache.org>
---
 .../hadoop/hbase/regionserver/SplitRequest.java    |  2 +-
 .../hbase/regionserver/SplitTransactionImpl.java   | 23 ++++++++++++++++++++--
 2 files changed, 22 insertions(+), 3 deletions(-)

diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SplitRequest.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SplitRequest.java
index de80e5d..5a62495 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SplitRequest.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SplitRequest.java
@@ -140,7 +140,7 @@ class SplitRequest implements Runnable {
             + StringUtils.formatTimeDiff(EnvironmentEdgeManager.currentTime(), startTime));
       }
       // Always log the split transaction journal
-      LOG.info("Split transaction journal:\n\t" + StringUtils.join("\n\t", st.getJournal()));
+      LOG.info("Split transaction journal:\n" + st.toString());
     }
   }
 
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SplitTransactionImpl.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SplitTransactionImpl.java
index 3dee699..c201fd3 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SplitTransactionImpl.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SplitTransactionImpl.java
@@ -643,7 +643,7 @@ public class SplitTransactionImpl implements SplitTransaction {
     Put putParent = MetaTableAccessor.makePutFromRegionInfo(copyOfParent);
     MetaTableAccessor.addDaughtersToPut(putParent, splitA, splitB);
     mutations.add(putParent);
-    
+
     //Puts for daughters
     Put putA = MetaTableAccessor.makePutFromRegionInfo(splitA);
     Put putB = MetaTableAccessor.makePutFromRegionInfo(splitB);
@@ -892,7 +892,7 @@ public class SplitTransactionImpl implements SplitTransaction {
       return splitStoreFile(family, sf);
     }
   }
-  
+
   @Override
   public boolean rollback(final Server server, final RegionServerServices services)
       throws IOException {
@@ -1062,4 +1062,23 @@ public class SplitTransactionImpl implements SplitTransaction {
   public RegionServerServices getRegionServerServices() {
     return rsServices;
   }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder();
+    for (int i = 0; i < journal.size(); i++) {
+      JournalEntry je = journal.get(i);
+      sb.append( je.toString());
+      if (i != 0) {
+        JournalEntry jep = journal.get(i-1);
+        long delta = je.getTimeStamp() - jep.getTimeStamp();
+        if (delta != 0) {
+          sb.append(" (+" + delta + " ms)\n");
+        } else {
+          sb.append("\n");
+        }
+      }
+    }
+    return sb.toString();
+  }
 }