[ 
https://issues.apache.org/jira/browse/HADOOP-14284?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16001088#comment-16001088
 ] 

Junping Du commented on HADOOP-14284:
-------------------------------------

[~ozawa], I appreciate your work and effort here. However, I still doubt if we 
are on the right track here with right solution. IMO, shade dependencies on 
client jars is an acceptable solution but effort like this to shade particular 
poor backward compatibility dependency everywhere seems unacceptable in build 
prospective - even worse case is if other dependencies are following this 
practice, then it would be nightmare for future maintaining of hadoop.
Considering Hadoop ecosystem has large number of downstream projects, we should 
keep core hadoop as stable as possible - even in a new major release. For poor 
backward compatibility third-party jar, like Guava, I think we should either 
get rid of it or keep on a particular version and never change . My proposal 
above to get rid of Guava seems too aggressive and unrealistic in short term. 
However, the other approach - to stay at a version with other downstream 
projects unless must be changed (and should change with downstream projects 
together) - seems the best strategy here. I didn't see any necessary  for 
upgrading guava and HADOOP-10101 failed to convince me. In our test internally, 
it cause Hadoop 3 failed to work with almost every downstream projects, like: 
Spark, HBase, Tez, etc. I think we should revert HADOOP-10101 immediately 
before it is too late.

> Shade Guava everywhere
> ----------------------
>
>                 Key: HADOOP-14284
>                 URL: https://issues.apache.org/jira/browse/HADOOP-14284
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: build
>    Affects Versions: 3.0.0-alpha3
>            Reporter: Andrew Wang
>            Assignee: Tsuyoshi Ozawa
>            Priority: Blocker
>         Attachments: HADOOP-14238.pre001.patch, HADOOP-14284.002.patch, 
> HADOOP-14284.004.patch, HADOOP-14284.007.patch, HADOOP-14284.010.patch, 
> HADOOP-14284.012.patch
>
>
> HADOOP-10101 upgraded the guava version for 3.x to 21.
> Guava is broadly used by Java projects that consume our artifacts. 
> Unfortunately, these projects also consume our private artifacts like 
> {{hadoop-hdfs}}. They also are unlikely on the new shaded client introduced 
> by HADOOP-11804, currently only available in 3.0.0-alpha2.
> We should shade Guava everywhere to proactively avoid breaking downstreams. 
> This isn't a requirement for all dependency upgrades, but it's necessary for 
> known-bad dependencies like Guava.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-issues-h...@hadoop.apache.org

Reply via email to