diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/dev-support/findbugsExcludeFile.xml b/hadoop-hdfs-project/hadoop-hdfs-client/dev-support/findbugsExcludeFile.xml
index be2911f3e7..ba6453dad7 100644
--- a/hadoop-hdfs-project/hadoop-hdfs-client/dev-support/findbugsExcludeFile.xml
+++ b/hadoop-hdfs-project/hadoop-hdfs-client/dev-support/findbugsExcludeFile.xml
@@ -17,4 +17,8 @@
+
+
+
+
diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/pom.xml b/hadoop-hdfs-project/hadoop-hdfs-client/pom.xml
index 1b45095c5f..aeaa98058c 100644
--- a/hadoop-hdfs-project/hadoop-hdfs-client/pom.xml
+++ b/hadoop-hdfs-project/hadoop-hdfs-client/pom.xml
@@ -63,6 +63,48 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ org.apache.hadoop
+ hadoop-maven-plugins
+
+
+ compile-protoc
+ generate-sources
+
+ protoc
+
+
+ ${protobuf.version}
+ ${protoc.path}
+
+ ${basedir}/../../hadoop-common-project/hadoop-common/src/main/proto
+ ${basedir}/src/main/proto
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+
+ org.apache.hadoop.hdfs.protocol.proto
+
+
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/ClientDatanodeProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ClientDatanodeProtocol.proto
similarity index 100%
rename from hadoop-hdfs-project/hadoop-hdfs/src/main/proto/ClientDatanodeProtocol.proto
rename to hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ClientDatanodeProtocol.proto
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/ClientNamenodeProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ClientNamenodeProtocol.proto
similarity index 100%
rename from hadoop-hdfs-project/hadoop-hdfs/src/main/proto/ClientNamenodeProtocol.proto
rename to hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ClientNamenodeProtocol.proto
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/acl.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/acl.proto
similarity index 96%
rename from hadoop-hdfs-project/hadoop-hdfs/src/main/proto/acl.proto
rename to hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/acl.proto
index 57cc855786..bb7fdb0168 100644
--- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/acl.proto
+++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/acl.proto
@@ -61,11 +61,6 @@ message AclStatusProto {
optional FsPermissionProto permission = 5;
}
-message AclEditLogProto {
- required string src = 1;
- repeated AclEntryProto entries = 2;
-}
-
message ModifyAclEntriesRequestProto {
required string src = 1;
repeated AclEntryProto aclSpec = 2;
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/datatransfer.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/datatransfer.proto
similarity index 100%
rename from hadoop-hdfs-project/hadoop-hdfs/src/main/proto/datatransfer.proto
rename to hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/datatransfer.proto
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/encryption.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/encryption.proto
similarity index 100%
rename from hadoop-hdfs-project/hadoop-hdfs/src/main/proto/encryption.proto
rename to hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/encryption.proto
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/hdfs.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/hdfs.proto
similarity index 100%
rename from hadoop-hdfs-project/hadoop-hdfs/src/main/proto/hdfs.proto
rename to hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/hdfs.proto
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/inotify.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/inotify.proto
similarity index 100%
rename from hadoop-hdfs-project/hadoop-hdfs/src/main/proto/inotify.proto
rename to hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/inotify.proto
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/xattr.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/xattr.proto
similarity index 95%
rename from hadoop-hdfs-project/hadoop-hdfs/src/main/proto/xattr.proto
rename to hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/xattr.proto
index acdc28ebb8..6c8b5eb594 100644
--- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/xattr.proto
+++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/xattr.proto
@@ -35,11 +35,6 @@ message XAttrProto {
optional bytes value = 3;
}
-message XAttrEditLogProto {
- optional string src = 1;
- repeated XAttrProto xAttrs = 2;
-}
-
enum XAttrSetFlagProto {
XATTR_CREATE = 0x01;
XATTR_REPLACE = 0x02;
diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
index a7c9e7c18e..f595751cc7 100644
--- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
+++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
@@ -710,6 +710,9 @@ Release 2.8.0 - UNRELEASED
HDFS-8712. Remove 'public' and 'abstracta modifiers in FsVolumeSpi and
FsDatasetSpi (Lei (Eddy) Xu via vinayakumarb)
+ HDFS-8726. Move protobuf files that define the client-sever protocols to
+ hdfs-client. (wheat9)
+
OPTIMIZATIONS
HDFS-8026. Trace FSOutputSummer#writeChecksumChunks rather than
diff --git a/hadoop-hdfs-project/hadoop-hdfs/pom.xml b/hadoop-hdfs-project/hadoop-hdfs/pom.xml
index f90644c4d3..db38851264 100644
--- a/hadoop-hdfs-project/hadoop-hdfs/pom.xml
+++ b/hadoop-hdfs-project/hadoop-hdfs/pom.xml
@@ -328,26 +328,20 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd">
${protoc.path}
${basedir}/../../hadoop-common-project/hadoop-common/src/main/proto
+ ${basedir}/../hadoop-hdfs-client/src/main/proto
${basedir}/src/main/proto
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/contrib/bkjournal/pom.xml b/hadoop-hdfs-project/hadoop-hdfs/src/contrib/bkjournal/pom.xml
index 3b205e44b0..7e58606181 100644
--- a/hadoop-hdfs-project/hadoop-hdfs/src/contrib/bkjournal/pom.xml
+++ b/hadoop-hdfs-project/hadoop-hdfs/src/contrib/bkjournal/pom.xml
@@ -112,7 +112,7 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd">
${protoc.path}
${basedir}/../../../../../hadoop-common-project/hadoop-common/src/main/proto
- ${basedir}/../../../../../hadoop-hdfs-project/hadoop-hdfs/src/main/proto
+ ${basedir}/../../../../../hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto
${basedir}/src/main/proto