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

stack commented on HBASE-18240:
-------------------------------

Pushed patch. Build now makes two jars, hbase-shaded-protobuf which is patched 
and shaded protobuf (3.3.1 -- an upgrade from our current pb3.1.0) and then 
another jar named hbase-shaded-protobuf which has other, non-patched, 
third-party libs: netty, guava, gson, and the protobuf-util lib.

Took a while but this is candidate for release. Let me play with it a while to 
make sure it good. Then can put up jar for the PMC to vote on (there is little 
in this module other than poms and patches -- all it does is relocation, 
patching, and repackaging).

TODO:

+ Change our shading offset in this project and in hbase from 
org.apache.hadoop.hbase.shaded to org.apache.hbase.shaded; i.e. undo the 
'hadoop'. Relocation to o.a.hbase will underline the fact that this stuff is 
'unusual' whether generated or relocated other-peoples libs.
+ Change hbase so we generate protobufs inline with build. We couldn't do this 
previous because of our protobuf patching but now this is done elsewhere, we 
can change mainline build. Simplifies the build.
+ Move all hbase guava use to depend on this shaded guava.
+ Move all netty, etc., use to depend on shaded artifact from this 
hbase-thirdparty lib.

Later, make use of the protobuf-util so we can json protobufs and use this 
wherever we have protobufinfo and lockinfo in our API.

> Add hbase-thirdparty, a project with hbase utility including an 
> hbase-shaded-thirdparty module with guava, netty, etc.
> ----------------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-18240
>                 URL: https://issues.apache.org/jira/browse/HBASE-18240
>             Project: HBase
>          Issue Type: Sub-task
>          Components: dependencies
>            Reporter: stack
>            Assignee: stack
>             Fix For: 2.0.0
>
>         Attachments: HBASE-18240.master.001.patch, hbase-auxillary.tgz
>
>
> This issue is about adding a new related project to host hbase auxillary 
> utility. In this new project, the first thing we'd add is a module to host 
> shaded versions of third party libraries.
> This task comes of discussion held here 
> http://apache-hbase.679495.n3.nabble.com/DISCUSS-More-Shading-td4083025.html 
> where one conclusion of the DISCUSSION was "... pushing this part forward 
> with some code is the next logical step. Seems to be consensus about taking 
> our known internal dependencies and performing this shade magic."



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to