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

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

I still prefer the way to shade client only. What Stack proposed above is 
slightly better than current way (aka. Shade Guava Everywhere). However, it is 
still too complicated to me. As Stack mentioned above, it need code injection 
to our current (and future) code base as referring all third party library 
classes will have to use internal package name instead (not automatic). May be 
we can have/write some auto tools here, but it will be another burden of 
maintaining in future.

bq. Unfortunately for HDFS, there are a bunch of downstreams incorrectly 
including our server artifacts, so for HDFS, I think we need to shade those too.
Shouldn't we fix these incorrectly usage for downstream projects since brand 
new Hadoop 3.0? There may be some efforts for release synchronization between 
Hadoop and downstream projects, but I think it should worth it.


> 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-alpha4
>            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.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to