From 115dcf19d7d5a63c4512713e81bb6b58e2800a59 Mon Sep 17 00:00:00 2001 From: Tsz-wo Sze Date: Thu, 27 Oct 2011 20:11:50 +0000 Subject: [PATCH] svn merge -c 1177757 from trunk for HDFS-2298. git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.23@1189983 13f79535-47bb-0310-9956-ffa450edef68 --- hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt | 3 +++ .../org/apache/hadoop/hdfs/DFSClient.java | 4 ++-- .../hadoop/hdfs/protocol/ClientProtocol.java | 21 +++---------------- .../server/namenode/NameNodeRpcServer.java | 8 +------ .../web/resources/NamenodeWebHdfsMethods.java | 2 +- 5 files changed, 10 insertions(+), 28 deletions(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt index 32401ccaff8..2ce3a9765a8 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt +++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt @@ -1134,6 +1134,9 @@ Release 0.23.0 - Unreleased HDFS-2494. Close the streams and DFSClient in DatanodeWebHdfsMethods. (Uma Maheswara Rao G via szetszwo) + HDFS-2298. Fix TestDfsOverAvroRpc by changing ClientProtocol to + not include multiple methods of the same name. (cutting) + BREAKDOWN OF HDFS-1073 SUBTASKS HDFS-1521. Persist transaction ID on disk between NN restarts. diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSClient.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSClient.java index 1dc30fe4f70..9a2799e7cdc 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSClient.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSClient.java @@ -946,13 +946,13 @@ public class DFSClient implements java.io.Closeable { } /** * Rename file or directory. - * @see ClientProtocol#rename(String, String, Options.Rename...) + * @see ClientProtocol#rename2(String, String, Options.Rename...) */ public void rename(String src, String dst, Options.Rename... options) throws IOException { checkOpen(); try { - namenode.rename(src, dst, options); + namenode.rename2(src, dst, options); } catch(RemoteException re) { throw re.unwrapRemoteException(AccessControlException.class, DSQuotaExceededException.class, diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/protocol/ClientProtocol.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/protocol/ClientProtocol.java index e2ecbaa46dc..e69a2727b45 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/protocol/ClientProtocol.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/protocol/ClientProtocol.java @@ -67,9 +67,9 @@ public interface ClientProtocol extends VersionedProtocol { * Compared to the previous version the following changes have been introduced: * (Only the latest change is reflected. * The log of historical changes can be retrieved from the svn). - * 68: Add Balancer Bandwidth Command protocol + * 69: Eliminate overloaded method names. */ - public static final long versionID = 68L; + public static final long versionID = 69L; /////////////////////////////////////// // File contents @@ -419,27 +419,12 @@ public interface ClientProtocol extends VersionedProtocol { * dst contains a symlink * @throws IOException If an I/O error occurred */ - public void rename(String src, String dst, Options.Rename... options) + public void rename2(String src, String dst, Options.Rename... options) throws AccessControlException, DSQuotaExceededException, FileAlreadyExistsException, FileNotFoundException, NSQuotaExceededException, ParentNotDirectoryException, SafeModeException, UnresolvedLinkException, IOException; - /** - * Delete the given file or directory from the file system. - *

- * Any blocks belonging to the deleted files will be garbage-collected. - * - * @param src existing name. - * @return true only if the existing file or directory was actually removed - * from the file system. - * @throws UnresolvedLinkException if src contains a symlink. - * @deprecated use {@link #delete(String, boolean)} istead. - */ - @Deprecated - public boolean delete(String src) - throws IOException, UnresolvedLinkException; - /** * Delete the given file or directory from the file system. *

diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NameNodeRpcServer.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NameNodeRpcServer.java index 0933467bee3..2fcb06112ae 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NameNodeRpcServer.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NameNodeRpcServer.java @@ -516,7 +516,7 @@ class NameNodeRpcServer implements NamenodeProtocols { } @Override // ClientProtocol - public void rename(String src, String dst, Options.Rename... options) + public void rename2(String src, String dst, Options.Rename... options) throws IOException { if(stateChangeLog.isDebugEnabled()) { stateChangeLog.debug("*DIR* NameNode.rename: " + src + " to " + dst); @@ -529,12 +529,6 @@ class NameNodeRpcServer implements NamenodeProtocols { metrics.incrFilesRenamed(); } - @Deprecated - @Override // ClientProtocol - public boolean delete(String src) throws IOException { - return delete(src, true); - } - @Override // ClientProtocol public boolean delete(String src, boolean recursive) throws IOException { if (stateChangeLog.isDebugEnabled()) { diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/web/resources/NamenodeWebHdfsMethods.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/web/resources/NamenodeWebHdfsMethods.java index e90d6fb7dd0..c3f771279ad 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/web/resources/NamenodeWebHdfsMethods.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/web/resources/NamenodeWebHdfsMethods.java @@ -309,7 +309,7 @@ public class NamenodeWebHdfsMethods { final String js = JsonUtil.toJsonString("boolean", b); return Response.ok(js).type(MediaType.APPLICATION_JSON).build(); } else { - np.rename(fullpath, destination.getValue(), + np.rename2(fullpath, destination.getValue(), s.toArray(new Options.Rename[s.size()])); return Response.ok().type(MediaType.APPLICATION_JSON).build(); }