Don't drop old master proc wal files... need to debug

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

Branch: refs/heads/HBASE-14614
Commit: 1e81af1a6c4feef7f961510ce80a1e19f6c74e85
Parents: 9ba7e5b
Author: Michael Stack <st...@apache.org>
Authored: Sun Apr 30 21:16:05 2017 -1000
Committer: Michael Stack <st...@apache.org>
Committed: Sun May 7 13:56:29 2017 -0700

----------------------------------------------------------------------
 .../hbase/procedure2/store/wal/ProcedureWALFile.java  | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/1e81af1a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.java
----------------------------------------------------------------------
diff --git 
a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.java
 
b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.java
index 012ddeb..585762b 100644
--- 
a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.java
+++ 
b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/store/wal/ProcedureWALFile.java
@@ -26,6 +26,7 @@ import org.apache.hadoop.fs.FSDataInputStream;
 import org.apache.hadoop.fs.FileStatus;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
+import org.apache.hadoop.hbase.HConstants;
 import org.apache.hadoop.hbase.classification.InterfaceAudience;
 import org.apache.hadoop.hbase.classification.InterfaceStability;
 import org.apache.hadoop.hbase.procedure2.store.ProcedureStoreTracker;
@@ -157,7 +158,18 @@ public class ProcedureWALFile implements 
Comparable<ProcedureWALFile> {
 
   public void removeFile() throws IOException {
     close();
-    fs.delete(logFile, false);
+    // TODO: FIX THIS. MAKE THIS ARCHIVE FORMAL.
+    Path archiveDir =
+        new Path(logFile.getParent().getParent(), 
HConstants.HFILE_ARCHIVE_DIRECTORY);
+    try {
+      fs.mkdirs(archiveDir);
+    } catch (IOException ioe) {
+      LOG.warn("Making " + archiveDir, ioe);
+    }
+    Path archivedFile = new Path(archiveDir, logFile.getName());
+    LOG.info("ARCHIVED WAL (FIX) " + logFile + " to " + archivedFile);
+    fs.rename(logFile, archivedFile);
+    // fs.delete(logFile, false);
   }
 
   public void setProcIds(long minId, long maxId) {

Reply via email to