You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by vi...@apache.org on 2015/06/29 12:29:51 UTC
[2/2] hadoop git commit: HADOOP-12119. hadoop fs -expunge does not
work for federated namespace (Contributed by J.Andreina)
HADOOP-12119. hadoop fs -expunge does not work for federated namespace (Contributed by J.Andreina)
(cherry picked from commit c815344e2e68d78f6587b65bc2db25e151aa4364)
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/e4adb191
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/e4adb191
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/e4adb191
Branch: refs/heads/branch-2
Commit: e4adb191aabde2262562fe03ced16aabfbc49d98
Parents: beab746
Author: Vinayakumar B <vi...@apache.org>
Authored: Mon Jun 29 15:58:54 2015 +0530
Committer: Vinayakumar B <vi...@apache.org>
Committed: Mon Jun 29 15:59:21 2015 +0530
----------------------------------------------------------------------
hadoop-common-project/hadoop-common/CHANGES.txt | 3 +++
.../java/org/apache/hadoop/fs/shell/Delete.java | 17 ++++++++++++++---
.../test/java/org/apache/hadoop/fs/TestTrash.java | 14 ++++++++++++--
3 files changed, 29 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hadoop/blob/e4adb191/hadoop-common-project/hadoop-common/CHANGES.txt
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/CHANGES.txt b/hadoop-common-project/hadoop-common/CHANGES.txt
index 9ee5785..30558f6 100644
--- a/hadoop-common-project/hadoop-common/CHANGES.txt
+++ b/hadoop-common-project/hadoop-common/CHANGES.txt
@@ -395,6 +395,9 @@ Release 2.8.0 - UNRELEASED
HADOOP-8151. Error handling in snappy decompressor throws invalid
exceptions. (Matt Foley via harsh)
+ HADOOP-12119. hadoop fs -expunge does not work for federated namespace
+ (J.Andreina via vinayakumarb)
+
Release 2.7.2 - UNRELEASED
INCOMPATIBLE CHANGES
http://git-wip-us.apache.org/repos/asf/hadoop/blob/e4adb191/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/shell/Delete.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/shell/Delete.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/shell/Delete.java
index f882817..40d9478 100644
--- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/shell/Delete.java
+++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/shell/Delete.java
@@ -25,6 +25,7 @@ import java.util.List;
import org.apache.hadoop.classification.InterfaceAudience;
import org.apache.hadoop.classification.InterfaceStability;
+import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.PathIOException;
import org.apache.hadoop.fs.PathIsDirectoryException;
import org.apache.hadoop.fs.PathIsNotDirectoryException;
@@ -195,9 +196,19 @@ class Delete {
@Override
protected void processArguments(LinkedList<PathData> args)
throws IOException {
- Trash trash = new Trash(getConf());
- trash.expunge();
- trash.checkpoint();
+ FileSystem[] childFileSystems =
+ FileSystem.get(getConf()).getChildFileSystems();
+ if (null != childFileSystems) {
+ for (FileSystem fs : childFileSystems) {
+ Trash trash = new Trash(fs, getConf());
+ trash.expunge();
+ trash.checkpoint();
+ }
+ } else {
+ Trash trash = new Trash(getConf());
+ trash.expunge();
+ trash.checkpoint();
+ }
}
}
}
http://git-wip-us.apache.org/repos/asf/hadoop/blob/e4adb191/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestTrash.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestTrash.java b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestTrash.java
index a675e30..9a91733 100644
--- a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestTrash.java
+++ b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestTrash.java
@@ -594,8 +594,18 @@ public class TestTrash extends TestCase {
TestLFS() {
this(new Path(TEST_DIR, "user/test"));
}
- TestLFS(Path home) {
- super();
+ TestLFS(final Path home) {
+ super(new RawLocalFileSystem() {
+ @Override
+ protected Path getInitialWorkingDirectory() {
+ return makeQualified(home);
+ }
+
+ @Override
+ public Path getHomeDirectory() {
+ return makeQualified(home);
+ }
+ });
this.home = home;
}
@Override