[prev in list] [next in list] [prev in thread] [next in thread]
List: flume-commits
Subject: git commit: FLUME-1872: SpoolingDirectorySource doesn't delete tracker file when deletePolicy is imm
From: brock () apache ! org
Date: 2013-01-25 21:51:21
Message-ID: 20130125215121.CFC38825638 () tyr ! zones ! apache ! org
[Download RAW message or body]
Updated Branches:
refs/heads/trunk f32e8cd4c -> ea5ac469e
FLUME-1872: SpoolingDirectorySource doesn't delete tracker file when deletePolicy is \
immediate
(Mike Percy via Brock Noland)
Project: http://git-wip-us.apache.org/repos/asf/flume/repo
Commit: http://git-wip-us.apache.org/repos/asf/flume/commit/ea5ac469
Tree: http://git-wip-us.apache.org/repos/asf/flume/tree/ea5ac469
Diff: http://git-wip-us.apache.org/repos/asf/flume/diff/ea5ac469
Branch: refs/heads/trunk
Commit: ea5ac469ee31dafe0fb4d300afe9fc6774df278e
Parents: f32e8cd
Author: Brock Noland <brock@apache.org>
Authored: Fri Jan 25 15:50:07 2013 -0600
Committer: Brock Noland <brock@apache.org>
Committed: Fri Jan 25 15:50:54 2013 -0600
----------------------------------------------------------------------
.../avro/ReliableSpoolingFileEventReader.java | 2 +
.../avro/TestReliableSpoolingFileEventReader.java | 31 +++++++++++++--
2 files changed, 29 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flume/blob/ea5ac469/flume-ng-core/src/main/java/org/apache/flume/client/avro/ReliableSpoolingFileEventReader.java
----------------------------------------------------------------------
diff --git a/flume-ng-core/src/main/java/org/apache/flume/client/avro/ReliableSpoolingFileEventReader.java \
b/flume-ng-core/src/main/java/org/apache/flume/client/avro/ReliableSpoolingFileEventReader.java
index 28df24c..37f0ee1 100644
--- a/flume-ng-core/src/main/java/org/apache/flume/client/avro/ReliableSpoolingFileEventReader.java
+++ b/flume-ng-core/src/main/java/org/apache/flume/client/avro/ReliableSpoolingFileEventReader.java
@@ -371,6 +371,8 @@ public class ReliableSpoolingFileEventReader implements \
ReliableEventReader { if (!fileToDelete.delete()) {
throw new IOException("Unable to delete spool file: " + fileToDelete);
}
+ // now we no longer need the meta file
+ deleteMetaFile();
}
/**
http://git-wip-us.apache.org/repos/asf/flume/blob/ea5ac469/flume-ng-core/src/test/java/org/apache/flume/client/avro/TestReliableSpoolingFileEventReader.java
----------------------------------------------------------------------
diff --git a/flume-ng-core/src/test/java/org/apache/flume/client/avro/TestReliableSpoolingFileEventReader.java \
b/flume-ng-core/src/test/java/org/apache/flume/client/avro/TestReliableSpoolingFileEventReader.java
index 31ecf8e..9d708c1 100644
--- a/flume-ng-core/src/test/java/org/apache/flume/client/avro/TestReliableSpoolingFileEventReader.java
+++ b/flume-ng-core/src/test/java/org/apache/flume/client/avro/TestReliableSpoolingFileEventReader.java
@@ -93,11 +93,30 @@ public class TestReliableSpoolingFileEventReader {
}
- // FIXME: implement ignore pattern test
- @Ignore
@Test
- public void testIgnorePattern() {
- ReliableSpoolingFileEventReader parser;
+ public void testIgnorePattern() throws IOException {
+ ReliableEventReader reader = new ReliableSpoolingFileEventReader.Builder()
+ .spoolDirectory(WORK_DIR)
+ .ignorePattern("^file2$")
+ .deletePolicy(DeletePolicy.IMMEDIATE.toString())
+ .build();
+
+ List<File> before = listFiles(WORK_DIR);
+ Assert.assertEquals("Expected 5, not: " + before, 5, before.size());
+
+ List<Event> events;
+ do {
+ events = reader.readEvents(10);
+ reader.commit();
+ } while (!events.isEmpty());
+
+ List<File> after = listFiles(WORK_DIR);
+ Assert.assertEquals("Expected 1, not: " + after, 1, after.size());
+ Assert.assertEquals("file2", after.get(0).getName());
+ List<File> trackerFiles = listFiles(new File(WORK_DIR,
+ SpoolDirectorySourceConfigurationConstants.DEFAULT_TRACKER_DIR));
+ Assert.assertEquals("Expected 0, not: " + trackerFiles, 0,
+ trackerFiles.size());
}
@Test
@@ -163,6 +182,10 @@ public class TestReliableSpoolingFileEventReader {
List<File> after = listFiles(WORK_DIR);
Assert.assertEquals("Expected 0, not: " + after, 0, after.size());
+ List<File> trackerFiles = listFiles(new File(WORK_DIR,
+ SpoolDirectorySourceConfigurationConstants.DEFAULT_TRACKER_DIR));
+ Assert.assertEquals("Expected 0, not: " + trackerFiles, 0,
+ trackerFiles.size());
}
private static List<File> listFiles(File dir) {
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic