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 2014/09/03 06:19:01 UTC

[1/2] git commit: HBASE-11868 Data loss in hlog when the hdfs is unavailable (Liu Shaohui)

Repository: hbase
Updated Branches:
  refs/heads/0.98 590fc7f94 -> b53c0b1b1


HBASE-11868 Data loss in hlog when the hdfs is unavailable (Liu Shaohui)

Applied patch HBASE-11868-0.98-v2.diff


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

Branch: refs/heads/0.98
Commit: 39771b8f73a6e6eae12e8b3bdb7dd1fe13edc83c
Parents: 590fc7f
Author: Andrew Purtell <ap...@apache.org>
Authored: Tue Sep 2 21:12:27 2014 -0700
Committer: Andrew Purtell <ap...@apache.org>
Committed: Tue Sep 2 21:12:29 2014 -0700

----------------------------------------------------------------------
 .../apache/hadoop/hbase/regionserver/wal/FSHLog.java   | 13 ++++++-------
 .../apache/hadoop/hbase/regionserver/TestHRegion.java  |  1 +
 2 files changed, 7 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/39771b8f/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/FSHLog.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/FSHLog.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/FSHLog.java
index 594002d..5b179a1 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/FSHLog.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/FSHLog.java
@@ -127,7 +127,7 @@ class FSHLog implements HLog, Syncable {
 
   // all writes pending on AsyncWriter/AsyncSyncer thread with
   // txid <= failedTxid will fail by throwing asyncIOE
-  private final AtomicLong failedTxid = new AtomicLong(0);
+  private final AtomicLong failedTxid = new AtomicLong(-1);
   private volatile IOException asyncIOE = null;
 
   private WALCoprocessorHost coprocessorHost;
@@ -1350,17 +1350,16 @@ class FSHLog implements HLog, Syncable {
       while (this.syncedTillHere.get() < txid) {
         try {
           this.syncedTillHere.wait();
-
-          if (txid <= this.failedTxid.get()) {
-            assert asyncIOE != null :
-              "current txid is among(under) failed txids, but asyncIOE is null!";
-            throw asyncIOE;
-          }
         } catch (InterruptedException e) {
           LOG.debug("interrupted while waiting for notification from AsyncNotifier");
         }
       }
     }
+    if (txid <= this.failedTxid.get()) {
+        assert asyncIOE != null :
+          "current txid is among(under) failed txids, but asyncIOE is null!";
+        throw asyncIOE;
+    }
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/hbase/blob/39771b8f/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
index 013798c..08cc39f 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
@@ -3741,6 +3741,7 @@ public class TestHRegion {
   public void testgetHDFSBlocksDistribution() throws Exception {
     HBaseTestingUtility htu = new HBaseTestingUtility();
     final int DEFAULT_BLOCK_SIZE = 1024;
+    htu.getConfiguration().setLong("dfs.namenode.fs-limits.min-block-size", 0);
     htu.getConfiguration().setLong("dfs.block.size", DEFAULT_BLOCK_SIZE);
     htu.getConfiguration().setInt("dfs.replication", 2);
 


[2/2] git commit: Update CHANGES.txt for 0.98.6RC1 again

Posted by ap...@apache.org.
Update CHANGES.txt for 0.98.6RC1 again


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

Branch: refs/heads/0.98
Commit: b53c0b1b1601594158ad5f534aedfc5ba0123d10
Parents: 39771b8
Author: Andrew Purtell <ap...@apache.org>
Authored: Tue Sep 2 21:18:36 2014 -0700
Committer: Andrew Purtell <ap...@apache.org>
Committed: Tue Sep 2 21:18:36 2014 -0700

----------------------------------------------------------------------
 CHANGES.txt | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/b53c0b1b/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 9852ded..5bd2672 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -46,6 +46,7 @@ Release 0.98.6 - 9/09/2014
     * [HBASE-11856] - hbase-common needs a log4j.properties resource for handling unit test logging output
     * [HBASE-11857] - Restore ReaderBase.initAfterCompression() and WALCellCodec.create(Configuration, CompressionContext)
     * [HBASE-11863] - WAL files are not archived and stays in the WAL directory after splitting 
+    * [HBASE-11868] - Data loss in hlog when the hdfs is unavailable
     * [HBASE-11876] - RegionScanner.nextRaw(...) should not update metrics
     * [HBASE-11878] - TestVisibilityLabelsWithDistributedLogReplay#testAddVisibilityLabelsOnRSRestart sometimes fails due to VisibilityController not yet initialized