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 ar...@apache.org on 2016/07/25 16:53:27 UTC
[2/3] hadoop git commit: HDFS-9894. Add unsetStoragePolicy API to
FileContext/AbstractFileSystem and derivatives. Contributed by Xiaobing Zhou.
HDFS-9894. Add unsetStoragePolicy API to FileContext/AbstractFileSystem and derivatives. Contributed by Xiaobing Zhou.
(cherry picked from commit 7149cdb3c2d9dd390cd8668883cbe5db94090e0a)
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/54be36a6
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/54be36a6
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/54be36a6
Branch: refs/heads/branch-2.8
Commit: 54be36a6d6d46eaa6d88b4693ebfeee11c9445b1
Parents: bbf711c
Author: Jing Zhao <ji...@apache.org>
Authored: Thu Apr 21 18:07:35 2016 -0700
Committer: Arpit Agarwal <ar...@apache.org>
Committed: Mon Jul 25 09:51:59 2016 -0700
----------------------------------------------------------------------
.../org/apache/hadoop/fs/AbstractFileSystem.java | 11 +++++++++++
.../java/org/apache/hadoop/fs/FileContext.java | 17 +++++++++++++++++
.../main/java/org/apache/hadoop/fs/FileSystem.java | 2 +-
.../main/java/org/apache/hadoop/fs/FilterFs.java | 6 ++++++
.../org/apache/hadoop/fs/viewfs/ChRootedFs.java | 6 ++++++
.../java/org/apache/hadoop/fs/viewfs/ViewFs.java | 8 ++++++++
.../src/main/java/org/apache/hadoop/fs/Hdfs.java | 5 +++++
7 files changed, 54 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hadoop/blob/54be36a6/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/AbstractFileSystem.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/AbstractFileSystem.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/AbstractFileSystem.java
index 1fce04c..d1e7a1b 100644
--- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/AbstractFileSystem.java
+++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/AbstractFileSystem.java
@@ -1236,6 +1236,17 @@ public abstract class AbstractFileSystem {
+ " doesn't support setStoragePolicy");
}
+
+ /**
+ * Unset the storage policy set for a given file or directory.
+ * @param src file or directory path.
+ * @throws IOException
+ */
+ public void unsetStoragePolicy(final Path src) throws IOException {
+ throw new UnsupportedOperationException(getClass().getSimpleName()
+ + " doesn't support unsetStoragePolicy");
+ }
+
/**
* Retrieve the storage policy for a given file or directory.
*
http://git-wip-us.apache.org/repos/asf/hadoop/blob/54be36a6/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileContext.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileContext.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileContext.java
index 5866c49..568bf04 100644
--- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileContext.java
+++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileContext.java
@@ -2706,6 +2706,23 @@ public class FileContext {
}
/**
+ * Unset the storage policy set for a given file or directory.
+ * @param src file or directory path.
+ * @throws IOException
+ */
+ public void unsetStoragePolicy(final Path src) throws IOException {
+ final Path absF = fixRelativePart(src);
+ new FSLinkResolver<Void>() {
+ @Override
+ public Void next(final AbstractFileSystem fs, final Path p)
+ throws IOException {
+ fs.unsetStoragePolicy(src);
+ return null;
+ }
+ }.resolve(this, absF);
+ }
+
+ /**
* Query the effective storage policy ID for the given file or directory.
*
* @param src file or directory path.
http://git-wip-us.apache.org/repos/asf/hadoop/blob/54be36a6/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileSystem.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileSystem.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileSystem.java
index 74f3ada..a2e626c 100644
--- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileSystem.java
+++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileSystem.java
@@ -2666,7 +2666,7 @@ public abstract class FileSystem extends Configured implements Closeable {
* @param src file or directory path.
* @throws IOException
*/
- public void unsetStoragePolicy(Path src) throws IOException {
+ public void unsetStoragePolicy(final Path src) throws IOException {
throw new UnsupportedOperationException(getClass().getSimpleName()
+ " doesn't support unsetStoragePolicy");
}
http://git-wip-us.apache.org/repos/asf/hadoop/blob/54be36a6/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FilterFs.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FilterFs.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FilterFs.java
index 248377c..d7e313f 100644
--- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FilterFs.java
+++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FilterFs.java
@@ -406,6 +406,12 @@ public abstract class FilterFs extends AbstractFileSystem {
}
@Override
+ public void unsetStoragePolicy(final Path src)
+ throws IOException {
+ myFs.unsetStoragePolicy(src);
+ }
+
+ @Override
public BlockStoragePolicySpi getStoragePolicy(final Path src)
throws IOException {
return myFs.getStoragePolicy(src);
http://git-wip-us.apache.org/repos/asf/hadoop/blob/54be36a6/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ChRootedFs.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ChRootedFs.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ChRootedFs.java
index 568b9a0..f07e07f 100644
--- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ChRootedFs.java
+++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ChRootedFs.java
@@ -386,6 +386,12 @@ class ChRootedFs extends AbstractFileSystem {
}
@Override
+ public void unsetStoragePolicy(final Path src)
+ throws IOException {
+ myFs.unsetStoragePolicy(fullPath(src));
+ }
+
+ @Override
public BlockStoragePolicySpi getStoragePolicy(final Path src)
throws IOException {
return myFs.getStoragePolicy(src);
http://git-wip-us.apache.org/repos/asf/hadoop/blob/54be36a6/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFs.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFs.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFs.java
index 6f05e77..2f93296 100644
--- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFs.java
+++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/viewfs/ViewFs.java
@@ -749,6 +749,14 @@ public class ViewFs extends AbstractFileSystem {
res.targetFileSystem.setStoragePolicy(res.remainingPath, policyName);
}
+ @Override
+ public void unsetStoragePolicy(final Path src)
+ throws IOException {
+ InodeTree.ResolveResult<AbstractFileSystem> res =
+ fsState.resolve(getUriPath(src), true);
+ res.targetFileSystem.unsetStoragePolicy(res.remainingPath);
+ }
+
/**
* Retrieve the storage policy for a given file or directory.
*
http://git-wip-us.apache.org/repos/asf/hadoop/blob/54be36a6/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/fs/Hdfs.java
----------------------------------------------------------------------
diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/fs/Hdfs.java b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/fs/Hdfs.java
index 6dd8884..82ee41a 100644
--- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/fs/Hdfs.java
+++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/fs/Hdfs.java
@@ -474,6 +474,11 @@ public class Hdfs extends AbstractFileSystem {
}
@Override
+ public void unsetStoragePolicy(final Path src) throws IOException {
+ dfs.unsetStoragePolicy(getUriPath(src));
+ }
+
+ @Override
public BlockStoragePolicySpi getStoragePolicy(Path src) throws IOException {
return dfs.getStoragePolicy(getUriPath(src));
}
---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org