You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2011/02/05 00:04:11 UTC
svn commit: r1067332 - in /hbase/branches/0.90: CHANGES.txt
src/main/java/org/apache/hadoop/hbase/master/LogCleaner.java
src/test/java/org/apache/hadoop/hbase/master/TestLogsCleaner.java
Author: stack
Date: Fri Feb 4 23:04:11 2011
New Revision: 1067332
URL: http://svn.apache.org/viewvc?rev=1067332&view=rev
Log:
HBASE-3501 Remove the deletion limit in LogCleaner
Modified:
hbase/branches/0.90/CHANGES.txt
hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/master/LogCleaner.java
hbase/branches/0.90/src/test/java/org/apache/hadoop/hbase/master/TestLogsCleaner.java
Modified: hbase/branches/0.90/CHANGES.txt
URL: http://svn.apache.org/viewvc/hbase/branches/0.90/CHANGES.txt?rev=1067332&r1=1067331&r2=1067332&view=diff
==============================================================================
--- hbase/branches/0.90/CHANGES.txt (original)
+++ hbase/branches/0.90/CHANGES.txt Fri Feb 4 23:04:11 2011
@@ -19,6 +19,7 @@ Release 0.90.1 - Unreleased
HBASE-3495 Shell is failing on subsequent split calls
HBASE-3502 Can't open region because can't open .regioninfo because
AlreadyBeingCreatedException
+ HBASE-3501 Remove the deletion limit in LogCleaner
IMPROVEMENTS
Modified: hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/master/LogCleaner.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/master/LogCleaner.java?rev=1067332&r1=1067331&r2=1067332&view=diff
==============================================================================
--- hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/master/LogCleaner.java (original)
+++ hbase/branches/0.90/src/main/java/org/apache/hadoop/hbase/master/LogCleaner.java Fri Feb 4 23:04:11 2011
@@ -37,16 +37,12 @@ import org.apache.hadoop.hbase.regionser
import static org.apache.hadoop.hbase.HConstants.HBASE_MASTER_LOGCLEANER_PLUGINS;
/**
- * This Chore, everytime it runs, will clear the wal logs in the old logs folder
- * that are deletable for each log cleaner in the chain, in order to limit the
- * number of deletes it sends, will only delete maximum 20 in a single run.
+ * This Chore, everytime it runs, will clear the HLogs in the old logs folder
+ * that are deletable for each log cleaner in the chain.
*/
public class LogCleaner extends Chore {
static final Log LOG = LogFactory.getLog(LogCleaner.class.getName());
- // Max number we can delete on every chore, this is to make sure we don't
- // issue thousands of delete commands around the same time
- private final int maxDeletedLogs;
private final FileSystem fs;
private final Path oldLogDir;
private List<LogCleanerDelegate> logCleanersChain;
@@ -64,9 +60,6 @@ public class LogCleaner extends Chore {
Configuration conf, FileSystem fs,
Path oldLogDir) {
super("LogsCleaner", p, s);
-
- this.maxDeletedLogs =
- conf.getInt("hbase.master.logcleaner.maxdeletedlogs", 20);
this.fs = fs;
this.oldLogDir = oldLogDir;
this.conf = conf;
@@ -127,7 +120,6 @@ public class LogCleaner extends Chore {
try {
FileStatus [] files = this.fs.listStatus(this.oldLogDir);
if (files == null) return;
- int nbDeletedLog = 0;
FILE: for (FileStatus file : files) {
Path filePath = file.getPath();
if (HLog.validateHLogFilename(filePath.getName())) {
@@ -144,15 +136,10 @@ public class LogCleaner extends Chore {
}
// delete this log file if it passes all the log cleaners
this.fs.delete(filePath, true);
- nbDeletedLog++;
} else {
LOG.warn("Found a wrongly formated file: "
+ file.getPath().getName());
this.fs.delete(filePath, true);
- nbDeletedLog++;
- }
- if (nbDeletedLog >= maxDeletedLogs) {
- break;
}
}
} catch (IOException e) {
Modified: hbase/branches/0.90/src/test/java/org/apache/hadoop/hbase/master/TestLogsCleaner.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.90/src/test/java/org/apache/hadoop/hbase/master/TestLogsCleaner.java?rev=1067332&r1=1067331&r2=1067332&view=diff
==============================================================================
--- hbase/branches/0.90/src/test/java/org/apache/hadoop/hbase/master/TestLogsCleaner.java (original)
+++ hbase/branches/0.90/src/test/java/org/apache/hadoop/hbase/master/TestLogsCleaner.java Fri Feb 4 23:04:11 2011
@@ -112,13 +112,6 @@ public class TestLogsCleaner {
assertEquals(34, fs.listStatus(oldLogDir).length);
- // This will take care of 20 old log files (default max we can delete)
- cleaner.chore();
-
- assertEquals(14, fs.listStatus(oldLogDir).length);
-
- // We will delete all remaining log files which are not scheduled for
- // replication and those that are invalid
cleaner.chore();
// We end up with the current log file, a newer one and the 3 old log