This is an automated email from the ASF dual-hosted git repository. stack pushed a commit to branch branch-3.1 in repository https://gitbox.apache.org/repos/asf/hadoop.git
The following commit(s) were added to refs/heads/branch-3.1 by this push: new 07f59c0 HADOOP-16598. Backport "HADOOP-16558 [COMMON+HDFS] use protobuf-maven-plugin to generate protobuf classes" to all active branches 07f59c0 is described below commit 07f59c023c66743321e3f179570ad02145528a49 Author: Duo Zhang <zhang...@apache.org> AuthorDate: Fri Sep 27 09:59:29 2019 +0800 HADOOP-16598. Backport "HADOOP-16558 [COMMON+HDFS] use protobuf-maven-plugin to generate protobuf classes" to all active branches Signed-off-by: stack <st...@apache.org> --- hadoop-common-project/hadoop-common/pom.xml | 66 +++++----------------- .../hadoop-common/src/main/proto/FSProtos.proto | 2 +- .../src/main/proto/GenericRefreshProtocol.proto | 2 +- .../src/main/proto/GetUserMappingsProtocol.proto | 2 +- .../src/main/proto/HAServiceProtocol.proto | 2 +- .../src/main/proto/IpcConnectionContext.proto | 2 +- .../src/main/proto/ProtobufRpcEngine.proto | 2 +- .../src/main/proto/ProtocolInfo.proto | 2 +- .../proto/RefreshAuthorizationPolicyProtocol.proto | 2 +- .../src/main/proto/RefreshCallQueueProtocol.proto | 2 +- .../main/proto/RefreshUserMappingsProtocol.proto | 2 +- .../hadoop-common/src/main/proto/RpcHeader.proto | 2 +- .../hadoop-common/src/main/proto/Security.proto | 2 +- .../hadoop-common/src/main/proto/TraceAdmin.proto | 2 +- .../src/main/proto/ZKFCProtocol.proto | 2 +- .../hadoop-common/src/test/proto/test.proto | 2 +- .../src/test/proto/test_rpc_service.proto | 1 + hadoop-hdfs-project/hadoop-hdfs-client/pom.xml | 36 +++--------- .../src/main/proto/ClientDatanodeProtocol.proto | 2 +- .../src/main/proto/ClientNamenodeProtocol.proto | 2 +- .../src/main/proto/ReconfigurationProtocol.proto | 2 +- .../hadoop-hdfs-client/src/main/proto/acl.proto | 2 +- .../src/main/proto/datatransfer.proto | 2 +- .../src/main/proto/encryption.proto | 2 +- .../src/main/proto/erasurecoding.proto | 2 +- .../hadoop-hdfs-client/src/main/proto/hdfs.proto | 2 +- .../src/main/proto/inotify.proto | 2 +- .../hadoop-hdfs-client/src/main/proto/xattr.proto | 2 +- hadoop-hdfs-project/hadoop-hdfs-rbf/pom.xml | 32 ++++------- .../src/main/proto/FederationProtocol.proto | 2 +- .../src/main/proto/RouterProtocol.proto | 2 +- hadoop-hdfs-project/hadoop-hdfs/pom.xml | 48 ++++++---------- .../src/main/proto/AliasMapProtocol.proto | 2 +- .../src/main/proto/DatanodeLifelineProtocol.proto | 2 +- .../src/main/proto/DatanodeProtocol.proto | 2 +- .../hadoop-hdfs/src/main/proto/HAZKInfo.proto | 2 +- .../hadoop-hdfs/src/main/proto/HdfsServer.proto | 2 +- .../src/main/proto/InterDatanodeProtocol.proto | 2 +- .../src/main/proto/InterQJournalProtocol.proto | 2 +- .../src/main/proto/JournalProtocol.proto | 2 +- .../src/main/proto/NamenodeProtocol.proto | 2 +- .../src/main/proto/QJournalProtocol.proto | 2 +- .../hadoop-hdfs/src/main/proto/editlog.proto | 2 +- .../hadoop-hdfs/src/main/proto/fsimage.proto | 2 +- hadoop-project/pom.xml | 53 ++++++++++++++++- 45 files changed, 145 insertions(+), 169 deletions(-) diff --git a/hadoop-common-project/hadoop-common/pom.xml b/hadoop-common-project/hadoop-common/pom.xml index 33a4fef..e80eb0f 100644 --- a/hadoop-common-project/hadoop-common/pom.xml +++ b/hadoop-common-project/hadoop-common/pom.xml @@ -352,6 +352,20 @@ </resources> <plugins> <plugin> + <groupId>org.xolstice.maven.plugins</groupId> + <artifactId>protobuf-maven-plugin</artifactId> + <executions> + <execution> + <id>src-compile-protoc</id> + <configuration><skip>false</skip></configuration> + </execution> + <execution> + <id>src-test-compile-protoc</id> + <configuration><skip>false</skip></configuration> + </execution> + </executions> + </plugin> + <plugin> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-maven-plugins</artifactId> <executions> @@ -372,58 +386,6 @@ </configuration> </execution> <execution> - <id>compile-protoc</id> - <goals> - <goal>protoc</goal> - </goals> - <configuration> - <protocVersion>${protobuf.version}</protocVersion> - <protocCommand>${protoc.path}</protocCommand> - <imports> - <param>${basedir}/src/main/proto</param> - </imports> - <source> - <directory>${basedir}/src/main/proto</directory> - <includes> - <include>HAServiceProtocol.proto</include> - <include>IpcConnectionContext.proto</include> - <include>ProtocolInfo.proto</include> - <include>RpcHeader.proto</include> - <include>ZKFCProtocol.proto</include> - <include>ProtobufRpcEngine.proto</include> - <include>Security.proto</include> - <include>GetUserMappingsProtocol.proto</include> - <include>TraceAdmin.proto</include> - <include>RefreshAuthorizationPolicyProtocol.proto</include> - <include>RefreshUserMappingsProtocol.proto</include> - <include>RefreshCallQueueProtocol.proto</include> - <include>GenericRefreshProtocol.proto</include> - <include>FSProtos.proto</include> - </includes> - </source> - </configuration> - </execution> - <execution> - <id>compile-test-protoc</id> - <goals> - <goal>test-protoc</goal> - </goals> - <configuration> - <protocVersion>${protobuf.version}</protocVersion> - <protocCommand>${protoc.path}</protocCommand> - <imports> - <param>${basedir}/src/test/proto</param> - </imports> - <source> - <directory>${basedir}/src/test/proto</directory> - <includes> - <include>test.proto</include> - <include>test_rpc_service.proto</include> - </includes> - </source> - </configuration> - </execution> - <execution> <id>resource-gz</id> <phase>generate-resources</phase> <goals> diff --git a/hadoop-common-project/hadoop-common/src/main/proto/FSProtos.proto b/hadoop-common-project/hadoop-common/src/main/proto/FSProtos.proto index 5b8c45d..8509ca2 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/FSProtos.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/FSProtos.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.fs"; option java_outer_classname = "FSProtos"; option java_generic_services = true; diff --git a/hadoop-common-project/hadoop-common/src/main/proto/GenericRefreshProtocol.proto b/hadoop-common-project/hadoop-common/src/main/proto/GenericRefreshProtocol.proto index fe46549..6296f88 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/GenericRefreshProtocol.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/GenericRefreshProtocol.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.ipc.proto"; option java_outer_classname = "GenericRefreshProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-common-project/hadoop-common/src/main/proto/GetUserMappingsProtocol.proto b/hadoop-common-project/hadoop-common/src/main/proto/GetUserMappingsProtocol.proto index 51552b8..cb91a13 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/GetUserMappingsProtocol.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/GetUserMappingsProtocol.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.tools.proto"; option java_outer_classname = "GetUserMappingsProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-common-project/hadoop-common/src/main/proto/HAServiceProtocol.proto b/hadoop-common-project/hadoop-common/src/main/proto/HAServiceProtocol.proto index 16ee9a2..5a88a7f 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/HAServiceProtocol.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/HAServiceProtocol.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.ha.proto"; option java_outer_classname = "HAServiceProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-common-project/hadoop-common/src/main/proto/IpcConnectionContext.proto b/hadoop-common-project/hadoop-common/src/main/proto/IpcConnectionContext.proto index 4557e89..16e2fb7 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/IpcConnectionContext.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/IpcConnectionContext.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.ipc.protobuf"; option java_outer_classname = "IpcConnectionContextProtos"; option java_generate_equals_and_hash = true; diff --git a/hadoop-common-project/hadoop-common/src/main/proto/ProtobufRpcEngine.proto b/hadoop-common-project/hadoop-common/src/main/proto/ProtobufRpcEngine.proto index a17e207..fa11313 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/ProtobufRpcEngine.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/ProtobufRpcEngine.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; /** * These are the messages used by Hadoop RPC for the Rpc Engine Protocol Buffer * to marshal the request and response in the RPC layer. diff --git a/hadoop-common-project/hadoop-common/src/main/proto/ProtocolInfo.proto b/hadoop-common-project/hadoop-common/src/main/proto/ProtocolInfo.proto index fdbc440..0e9d0d4 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/ProtocolInfo.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/ProtocolInfo.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.ipc.protobuf"; option java_outer_classname = "ProtocolInfoProtos"; option java_generic_services = true; diff --git a/hadoop-common-project/hadoop-common/src/main/proto/RefreshAuthorizationPolicyProtocol.proto b/hadoop-common-project/hadoop-common/src/main/proto/RefreshAuthorizationPolicyProtocol.proto index 5ef1c2d..f57c6d6 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/RefreshAuthorizationPolicyProtocol.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/RefreshAuthorizationPolicyProtocol.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.security.proto"; option java_outer_classname = "RefreshAuthorizationPolicyProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-common-project/hadoop-common/src/main/proto/RefreshCallQueueProtocol.proto b/hadoop-common-project/hadoop-common/src/main/proto/RefreshCallQueueProtocol.proto index 67ed133..463b7c5 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/RefreshCallQueueProtocol.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/RefreshCallQueueProtocol.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.ipc.proto"; option java_outer_classname = "RefreshCallQueueProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-common-project/hadoop-common/src/main/proto/RefreshUserMappingsProtocol.proto b/hadoop-common-project/hadoop-common/src/main/proto/RefreshUserMappingsProtocol.proto index 41031ed..a1130f5 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/RefreshUserMappingsProtocol.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/RefreshUserMappingsProtocol.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.security.proto"; option java_outer_classname = "RefreshUserMappingsProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-common-project/hadoop-common/src/main/proto/RpcHeader.proto b/hadoop-common-project/hadoop-common/src/main/proto/RpcHeader.proto index e8d8cbb..4705b42 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/RpcHeader.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/RpcHeader.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.ipc.protobuf"; option java_outer_classname = "RpcHeaderProtos"; option java_generate_equals_and_hash = true; diff --git a/hadoop-common-project/hadoop-common/src/main/proto/Security.proto b/hadoop-common-project/hadoop-common/src/main/proto/Security.proto index 037a878..5177a86 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/Security.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/Security.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.security.proto"; option java_outer_classname = "SecurityProtos"; option java_generic_services = true; diff --git a/hadoop-common-project/hadoop-common/src/main/proto/TraceAdmin.proto b/hadoop-common-project/hadoop-common/src/main/proto/TraceAdmin.proto index 52d2a90..8cf131b 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/TraceAdmin.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/TraceAdmin.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.tracing"; option java_outer_classname = "TraceAdminPB"; option java_generic_services = true; diff --git a/hadoop-common-project/hadoop-common/src/main/proto/ZKFCProtocol.proto b/hadoop-common-project/hadoop-common/src/main/proto/ZKFCProtocol.proto index a2b8dd1..98bc05f 100644 --- a/hadoop-common-project/hadoop-common/src/main/proto/ZKFCProtocol.proto +++ b/hadoop-common-project/hadoop-common/src/main/proto/ZKFCProtocol.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.ha.proto"; option java_outer_classname = "ZKFCProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-common-project/hadoop-common/src/test/proto/test.proto b/hadoop-common-project/hadoop-common/src/test/proto/test.proto index 37e9a0b..2c41aa2 100644 --- a/hadoop-common-project/hadoop-common/src/test/proto/test.proto +++ b/hadoop-common-project/hadoop-common/src/test/proto/test.proto @@ -15,7 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.ipc.protobuf"; option java_outer_classname = "TestProtos"; option java_generate_equals_and_hash = true; diff --git a/hadoop-common-project/hadoop-common/src/test/proto/test_rpc_service.proto b/hadoop-common-project/hadoop-common/src/test/proto/test_rpc_service.proto index 0df67a0..f699027 100644 --- a/hadoop-common-project/hadoop-common/src/test/proto/test_rpc_service.proto +++ b/hadoop-common-project/hadoop-common/src/test/proto/test_rpc_service.proto @@ -15,6 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +syntax = "proto2"; option java_package = "org.apache.hadoop.ipc.protobuf"; option java_outer_classname = "TestRpcServiceProtos"; option java_generic_services = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/pom.xml b/hadoop-hdfs-project/hadoop-hdfs-client/pom.xml index 87ebc24..aa91344 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/pom.xml +++ b/hadoop-hdfs-project/hadoop-hdfs-client/pom.xml @@ -131,36 +131,18 @@ https://maven.apache.org/xsd/maven-4.0.0.xsd"> </configuration> </plugin> <plugin> - <groupId>org.apache.hadoop</groupId> - <artifactId>hadoop-maven-plugins</artifactId> + <groupId>org.xolstice.maven.plugins</groupId> + <artifactId>protobuf-maven-plugin</artifactId> <executions> <execution> - <id>compile-protoc</id> - <goals> - <goal>protoc</goal> - </goals> + <id>src-compile-protoc</id> <configuration> - <protocVersion>${protobuf.version}</protocVersion> - <protocCommand>${protoc.path}</protocCommand> - <imports> - <param>${basedir}/../../hadoop-common-project/hadoop-common/src/main/proto</param> - <param>${basedir}/src/main/proto</param> - </imports> - <source> - <directory>${basedir}/src/main/proto</directory> - <includes> - <include>ClientDatanodeProtocol.proto</include> - <include>ClientNamenodeProtocol.proto</include> - <include>acl.proto</include> - <include>xattr.proto</include> - <include>datatransfer.proto</include> - <include>hdfs.proto</include> - <include>encryption.proto</include> - <include>inotify.proto</include> - <include>erasurecoding.proto</include> - <include>ReconfigurationProtocol.proto</include> - </includes> - </source> + <skip>false</skip> + <additionalProtoPathElements> + <additionalProtoPathElement> + ${basedir}/../../hadoop-common-project/hadoop-common/src/main/proto + </additionalProtoPathElement> + </additionalProtoPathElements> </configuration> </execution> </executions> diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ClientDatanodeProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ClientDatanodeProtocol.proto index 52f6330..84cd771 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ClientDatanodeProtocol.proto +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ClientDatanodeProtocol.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax="proto2"; // This file contains protocol buffers that are used throughout HDFS -- i.e. // by the client, server, and data transfer protocols. diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ClientNamenodeProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ClientNamenodeProtocol.proto index 27c917d..3f52d16 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ClientNamenodeProtocol.proto +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ClientNamenodeProtocol.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax="proto2"; option java_package = "org.apache.hadoop.hdfs.protocol.proto"; option java_outer_classname = "ClientNamenodeProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ReconfigurationProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ReconfigurationProtocol.proto index 12a38b1..bad9f45 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ReconfigurationProtocol.proto +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/ReconfigurationProtocol.proto @@ -15,7 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +syntax="proto2"; // This file contains protocol buffers that are used to reconfigure NameNode // and DataNode by HDFS admin. diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/acl.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/acl.proto index c2529c9..e9a8ccb 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/acl.proto +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/acl.proto @@ -15,7 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +syntax="proto2"; option java_package = "org.apache.hadoop.hdfs.protocol.proto"; option java_outer_classname = "AclProtos"; option java_generate_equals_and_hash = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/datatransfer.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/datatransfer.proto index 43a03e9..66a69a9 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/datatransfer.proto +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/datatransfer.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax="proto2"; // This file contains protocol buffers that are used to transfer data // to and from the datanode, as well as between datanodes. diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/encryption.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/encryption.proto index 75d3a0e..bcd82d6 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/encryption.proto +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/encryption.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax="proto2"; // This file contains protocol buffers that are used throughout HDFS -- i.e. // by the client, server, and data transfer protocols. diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/erasurecoding.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/erasurecoding.proto index 5f5f66e..de3bf4a 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/erasurecoding.proto +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/erasurecoding.proto @@ -15,7 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +syntax="proto2"; option java_package = "org.apache.hadoop.hdfs.protocol.proto"; option java_outer_classname = "ErasureCodingProtos"; option java_generate_equals_and_hash = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/hdfs.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/hdfs.proto index 53bdf5e..1f0e179 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/hdfs.proto +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/hdfs.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax="proto2"; // This file contains protocol buffers that are used throughout HDFS -- i.e. // by the client, server, and data transfer protocols. diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/inotify.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/inotify.proto index 5339902..dfc6618 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/inotify.proto +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/inotify.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax="proto2"; // This file contains protocol buffers used to communicate edits to clients // as part of the inotify system. diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/xattr.proto b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/xattr.proto index 6c8b5eb..a53aa86 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/xattr.proto +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/proto/xattr.proto @@ -15,7 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +syntax="proto2"; option java_package = "org.apache.hadoop.hdfs.protocol.proto"; option java_outer_classname = "XAttrProtos"; option java_generate_equals_and_hash = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs-rbf/pom.xml b/hadoop-hdfs-project/hadoop-hdfs-rbf/pom.xml index 313205c..e8623c2 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-rbf/pom.xml +++ b/hadoop-hdfs-project/hadoop-hdfs-rbf/pom.xml @@ -174,29 +174,21 @@ https://maven.apache.org/xsd/maven-4.0.0.xsd"> </executions> </plugin> <plugin> - <groupId>org.apache.hadoop</groupId> - <artifactId>hadoop-maven-plugins</artifactId> + <groupId>org.xolstice.maven.plugins</groupId> + <artifactId>protobuf-maven-plugin</artifactId> <executions> <execution> - <id>compile-protoc</id> - <goals> - <goal>protoc</goal> - </goals> + <id>src-compile-protoc</id> <configuration> - <protocVersion>${protobuf.version}</protocVersion> - <protocCommand>${protoc.path}</protocCommand> - <imports> - <param>${basedir}/../hadoop-hdfs-client/src/main/proto</param> - <param>${basedir}/../../hadoop-common-project/hadoop-common/src/main/proto</param> - <param>${basedir}/src/main/proto</param> - </imports> - <source> - <directory>${basedir}/src/main/proto</directory> - <includes> - <include>FederationProtocol.proto</include> - <include>RouterProtocol.proto</include> - </includes> - </source> + <skip>false</skip> + <additionalProtoPathElements> + <additionalProtoPathElement> + ${basedir}/../../hadoop-common-project/hadoop-common/src/main/proto + </additionalProtoPathElement> + <additionalProtoPathElement> + ${basedir}/../hadoop-hdfs-client/src/main/proto + </additionalProtoPathElement> + </additionalProtoPathElements> </configuration> </execution> </executions> diff --git a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/proto/FederationProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/proto/FederationProtocol.proto index b1a62b1..1263630 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/proto/FederationProtocol.proto +++ b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/proto/FederationProtocol.proto @@ -15,7 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.federation.protocol.proto"; option java_outer_classname = "HdfsServerFederationProtos"; option java_generic_services = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/proto/RouterProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/proto/RouterProtocol.proto index f3a2b6e..3eff092 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/proto/RouterProtocol.proto +++ b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/proto/RouterProtocol.proto @@ -15,7 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.protocol.proto"; option java_outer_classname = "RouterProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs/pom.xml b/hadoop-hdfs-project/hadoop-hdfs/pom.xml index 8fd0169..2260c24 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/pom.xml +++ b/hadoop-hdfs-project/hadoop-hdfs/pom.xml @@ -311,41 +311,29 @@ https://maven.apache.org/xsd/maven-4.0.0.xsd"> </executions> </plugin> <plugin> - <groupId>org.apache.hadoop</groupId> - <artifactId>hadoop-maven-plugins</artifactId> + <groupId>org.xolstice.maven.plugins</groupId> + <artifactId>protobuf-maven-plugin</artifactId> <executions> <execution> - <id>compile-protoc</id> - <goals> - <goal>protoc</goal> - </goals> + <id>src-compile-protoc</id> <configuration> - <protocVersion>${protobuf.version}</protocVersion> - <protocCommand>${protoc.path}</protocCommand> - <imports> - <param>${basedir}/../../hadoop-common-project/hadoop-common/src/main/proto</param> - <param>${basedir}/../hadoop-hdfs-client/src/main/proto</param> - <param>${basedir}/src/main/proto</param> - </imports> - <source> - <directory>${basedir}/src/main/proto</directory> - <includes> - <include>HdfsServer.proto</include> - <include>DatanodeProtocol.proto</include> - <include>DatanodeLifelineProtocol.proto</include> - <include>HAZKInfo.proto</include> - <include>InterDatanodeProtocol.proto</include> - <include>JournalProtocol.proto</include> - <include>NamenodeProtocol.proto</include> - <include>QJournalProtocol.proto</include> - <include>editlog.proto</include> - <include>fsimage.proto</include> - <include>AliasMapProtocol.proto</include> - <include>InterQJournalProtocol.proto</include> - </includes> - </source> + <skip>false</skip> + <additionalProtoPathElements> + <additionalProtoPathElement> + ${basedir}/../../hadoop-common-project/hadoop-common/src/main/proto + </additionalProtoPathElement> + <additionalProtoPathElement> + ${basedir}/../hadoop-hdfs-client/src/main/proto + </additionalProtoPathElement> + </additionalProtoPathElements> </configuration> </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.hadoop</groupId> + <artifactId>hadoop-maven-plugins</artifactId> + <executions> <execution> <id>resource-gz</id> <phase>generate-resources</phase> diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/AliasMapProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/AliasMapProtocol.proto index 01dd952..8050f35 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/AliasMapProtocol.proto +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/AliasMapProtocol.proto @@ -15,7 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.protocol.proto"; option java_outer_classname = "AliasMapProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/DatanodeLifelineProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/DatanodeLifelineProtocol.proto index b6ab756..e10a886 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/DatanodeLifelineProtocol.proto +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/DatanodeLifelineProtocol.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.protocol.proto"; option java_outer_classname = "DatanodeLifelineProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/DatanodeProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/DatanodeProtocol.proto index bf0df5b..f4ae012 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/DatanodeProtocol.proto +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/DatanodeProtocol.proto @@ -24,7 +24,7 @@ // This file contains protocol buffers that are used throughout HDFS -- i.e. // by the client, server, and data transfer protocols. - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.protocol.proto"; option java_outer_classname = "DatanodeProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/HAZKInfo.proto b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/HAZKInfo.proto index aa8b6be..6d45a93 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/HAZKInfo.proto +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/HAZKInfo.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.server.namenode.ha.proto"; option java_outer_classname = "HAZKInfoProtos"; package hadoop.hdfs; diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/HdfsServer.proto b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/HdfsServer.proto index 85cfb6c..78607ef 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/HdfsServer.proto +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/HdfsServer.proto @@ -24,7 +24,7 @@ // This file contains protocol buffers that are used throughout HDFS -- i.e. // by the client, server, and data transfer protocols. - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.protocol.proto"; option java_outer_classname = "HdfsServerProtos"; diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/InterDatanodeProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/InterDatanodeProtocol.proto index 580f8d3..47332a8 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/InterDatanodeProtocol.proto +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/InterDatanodeProtocol.proto @@ -24,7 +24,7 @@ // This file contains protocol buffers that are used throughout HDFS -- i.e. // by the client, server, and data transfer protocols. - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.protocol.proto"; option java_outer_classname = "InterDatanodeProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/InterQJournalProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/InterQJournalProtocol.proto index 0ecdff1..e73ca23 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/InterQJournalProtocol.proto +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/InterQJournalProtocol.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.qjournal.protocol"; option java_outer_classname = "InterQJournalProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/JournalProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/JournalProtocol.proto index 3fd029b..35c401e 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/JournalProtocol.proto +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/JournalProtocol.proto @@ -24,7 +24,7 @@ // This file contains protocol buffers that are used throughout HDFS -- i.e. // by the client, server, and data transfer protocols. - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.protocol.proto"; option java_outer_classname = "JournalProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/NamenodeProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/NamenodeProtocol.proto index 683dc80..892632b 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/NamenodeProtocol.proto +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/NamenodeProtocol.proto @@ -24,7 +24,7 @@ // This file contains protocol buffers that are used throughout HDFS -- i.e. // by the client, server, and data transfer protocols. - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.protocol.proto"; option java_outer_classname = "NamenodeProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/QJournalProtocol.proto b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/QJournalProtocol.proto index 26f4496..dabe061 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/QJournalProtocol.proto +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/QJournalProtocol.proto @@ -21,7 +21,7 @@ * Please see http://wiki.apache.org/hadoop/Compatibility * for what changes are allowed for a *stable* .proto interface. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.qjournal.protocol"; option java_outer_classname = "QJournalProtocolProtos"; option java_generic_services = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/editlog.proto b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/editlog.proto index f25fe59..22fd743 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/editlog.proto +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/editlog.proto @@ -15,7 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.protocol.proto"; option java_outer_classname = "EditLogProtos"; option java_generate_equals_and_hash = true; diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/fsimage.proto b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/fsimage.proto index d943dbc..532aa6e 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/fsimage.proto +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/proto/fsimage.proto @@ -15,7 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +syntax = "proto2"; option java_package = "org.apache.hadoop.hdfs.server.namenode"; option java_outer_classname = "FsImageProto"; diff --git a/hadoop-project/pom.xml b/hadoop-project/pom.xml index d79e18f..b193c19 100644 --- a/hadoop-project/pom.xml +++ b/hadoop-project/pom.xml @@ -82,6 +82,10 @@ <protobuf.version>2.5.0</protobuf.version> <protoc.path>${env.HADOOP_PROTOC_PATH}</protoc.path> + <!-- Maven protoc compiler --> + <protobuf-maven-plugin.version>0.5.1</protobuf-maven-plugin.version> + <os-maven-plugin.version>1.5.0.Final</os-maven-plugin.version> + <zookeeper.version>3.4.13</zookeeper.version> <curator.version>2.13.0</curator.version> <findbugs.version>3.0.0</findbugs.version> @@ -1529,9 +1533,56 @@ <artifactId>hadoop-maven-plugins</artifactId> <version>${project.version}</version> </plugin> + <plugin> + <groupId>org.xolstice.maven.plugins</groupId> + <artifactId>protobuf-maven-plugin</artifactId> + <version>${protobuf-maven-plugin.version}</version> + <extensions>true</extensions> + <configuration> + <protocArtifact> + com.google.protobuf:protoc:${protobuf.version}:exe:${os.detected.classifier} + </protocArtifact> + <attachProtoSources>false</attachProtoSources> + </configuration> + <executions> + <execution> + <id>src-compile-protoc</id> + <phase>generate-sources</phase> + <goals> + <goal>compile</goal> + </goals> + <configuration> + <includeDependenciesInDescriptorSet>false</includeDependenciesInDescriptorSet> + <protoSourceRoot>${basedir}/src/main/proto</protoSourceRoot> + <outputDirectory>${project.build.directory}/generated-sources/java</outputDirectory> + <clearOutputDirectory>false</clearOutputDirectory> + <skip>true</skip> + </configuration> + </execution> + <execution> + <id>src-test-compile-protoc</id> + <phase>generate-test-sources</phase> + <goals> + <goal>test-compile</goal> + </goals> + <configuration> + <protoTestSourceRoot>${basedir}/src/test/proto</protoTestSourceRoot> + <outputDirectory>${project.build.directory}/generated-test-sources/java</outputDirectory> + <clearOutputDirectory>false</clearOutputDirectory> + <skip>true</skip> + </configuration> + </execution> + </executions> + </plugin> </plugins> </pluginManagement> - + <extensions> + <extension> + <groupId>kr.motd.maven</groupId> + <artifactId>os-maven-plugin</artifactId> + <version>${os-maven-plugin.version}</version> + </extension> + </extensions> <plugins> <plugin> <artifactId>maven-clean-plugin</artifactId> --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org