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

Benjamin Hindman commented on MESOS-1203:
-----------------------------------------

+1 to providing a jar with protobuf shaded. Also +1 to a shorter package name, 
but how about org.apache.mesos.protobuf? The 'io' seemed a bit random. Finally, 
I still think we should be explicit to start and have a 
mesos-shaded-protobuf-X.Y.Z.jar and mesos-X.Y.Z.jar. If it turns out everyone 
uses the shaded-protobuf jar then we can update the "main" mesos jar to also 
shade and just require people to update their dependency (but not their code) 
which they'd have to do when they upgrade anyway.

Thanks for all the comments/contributions here!

> Shade protobuf dependency in Mesos Java library
> -----------------------------------------------
>
>                 Key: MESOS-1203
>                 URL: https://issues.apache.org/jira/browse/MESOS-1203
>             Project: Mesos
>          Issue Type: Improvement
>          Components: build
>            Reporter: Patrick Wendell
>
> Mesos's Java library uses the protobuf library which is also used by Hadoop. 
> Unfortunately the protobuf library does not provide binary compatiblity 
> between minor versions (for code compiled against 2.4.1 and 2.5.0 cannot run 
> together in a single JVM classlaoder) .
> This makes use of Mesos via it's Java API, something that is required for 
> Spark and I'm assuming other frameworks, fundamentally incompatible for 
> certain Hadoop versions.
> Mesos could shade this jar using the maven shade plug-in. Take a look at the 
> Parquet project for an example of shading:
> https://github.com/Parquet/parquet-format/blob/master/pom.xml#L140
> Without this fix Java users won't be able to use Mesos (< 0.17) with newer 
> versions of Hadoop. Or Mesos 0.17+ with older versions of Hadoop.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to