You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Colin Patrick McCabe (JIRA)" <ji...@apache.org> on 2014/04/17 01:00:20 UTC
[jira] [Commented] (HDFS-4909) Avoid protocol buffer RPC namespace
clashes
[ https://issues.apache.org/jira/browse/HDFS-4909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13972063#comment-13972063 ]
Colin Patrick McCabe commented on HDFS-4909:
--------------------------------------------
Tests aren't needed because this isn't a code change. committed to 2.5
> Avoid protocol buffer RPC namespace clashes
> -------------------------------------------
>
> Key: HDFS-4909
> URL: https://issues.apache.org/jira/browse/HDFS-4909
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: datanode, journal-node, namenode
> Affects Versions: 3.0.0, 2.1.0-beta
> Reporter: Ralph Castain
> Assignee: Colin Patrick McCabe
> Priority: Blocker
> Attachments: HDFS-4909.001.patch, HDFS-4909.002.patch, pcreate.pl
>
>
> The revised protocol buffer support seems to be compiling for me when using the protobuf-c cross-compiler. However, I still cannot construct a library of the results. This may be a Hadoop issue, or could be an issue with the protobuf-c cross-compiler. What I see are a bunch of these when attempting to link the resulting .o files:
> /home/common/hadoop/hadoop-common/foo/obj/DatanodeProtocol.pb-c.o: In function `hadoop_hdfsreport_bad_blocks_request_proto_init':
> DatanodeProtocol.pb-c.c.text+0x2bb4): multiple definition of `hadoop_hdfsreport_bad_blocks_request_proto_init'
> /home/common/hadoop/hadoop-common/foo/obj/ClientNamenodeProtocol.pb-c.o:ClientNamenodeProtocol.pb-c.c.text+0x277d): first defined here
> From what I can see, this is caused by the
> package hadoop.hdfs;
> line in the .proto files, when combined with the later
> import "hdfs.proto";
> This appears to bring a complete copy of the hdfs.proto file into the source code, which then recompiles it - leading to the duplicate symbols.
> I have attached an updated pcreate.pl script that illustrates the problem. Excluding the following .proto files allows all to be successfully built and linked:
> DatanodeProtocol
> ClientNamenodeProtocol
> QJournalProtocol
> HTH
> Ralph
--
This message was sent by Atlassian JIRA
(v6.2#6252)