[
https://issues.apache.org/jira/browse/HADOOP-13363?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16941538#comment-16941538
]
Vinayakumar B commented on HADOOP-13363:
----------------------------------------
If you are specifically pointing to above mentioned Spark/Hive's case, I could
compile the spark from its root, by passing {{-Dprotobuf.version=3.7.1}}.
In Spark's root pom.xml protobuf-2.5.0 is explicitly added as dependency to
avoid problem in maven auto resolution to different version. As per comments
this dependency is only for hadoop/yarn.
{quote} If we are passing protobuf types around, either as inputs or outputs.
Then we cannot shade the artifacts. And so: we cannot update protobuf
"transparently".
{color:#172b4d}For Token, if that toProbuf method is considered private, well,
we could move the operation out into its own class and invoke passing in a
Token instance, but it is probably a symptom of a bigger problem -protobuf
types in public APIs{color}
{quote}
IMO, Token's API change will not be problematic in normal cases.
{{TokenProto}} is a generated class, whose package will not change, but its
super class changes to {{GeneratedMessageV3}} from {{GeneratedMessage}}.
Direct usages of {{TokenProto}} or its {{Builder}} will not be a problem. It
can be problematic if application is embedding tokenproto in some other proto
message, for which code is generated using 2.5.0, or using common
{{GeneratedMessage}} as type for {{TokenProto}}. But this is unlikely as this
feature is only provided in Hadoop-3.0.0 onwards.
Otherwise, I think it won't be a problem.
> Upgrade protobuf from 2.5.0 to something newer
> ----------------------------------------------
>
> Key: HADOOP-13363
> URL: https://issues.apache.org/jira/browse/HADOOP-13363
> Project: Hadoop Common
> Issue Type: Improvement
> Components: build
> Affects Versions: 3.0.0-alpha1, 3.0.0-alpha2
> Reporter: Anu Engineer
> Assignee: Vinayakumar B
> Priority: Major
> Labels: security
> Attachments: HADOOP-13363.001.patch, HADOOP-13363.002.patch,
> HADOOP-13363.003.patch, HADOOP-13363.004.patch, HADOOP-13363.005.patch
>
>
> Standard protobuf 2.5.0 does not work properly on many platforms. (See, for
> example, https://gist.github.com/BennettSmith/7111094 ). In order for us to
> avoid crazy work arounds in the build environment and the fact that 2.5.0 is
> starting to slowly disappear as a standard install-able package for even
> Linux/x86, we need to either upgrade or self bundle or something else.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]