When we moved to Hadoop 2.4, the associated protobuf upgrade (2.4.1 ->
2.5.0) proved to be one of the bigger problems. In our case, most of our
users were using protobuf 2.4.x or earlier.

We identified a couple of places where the backward compatibility was
broken, and patched for those issues. We've been running with that patched
version of protobuf 2.5.0 since. I can push out those changes to github or
something if others are interested FWIW.

Regards,
Sangjin

On Tue, May 19, 2015 at 9:59 AM, Colin P. McCabe <cmcc...@apache.org> wrote:

> I agree that the protobuf 2.4.1 -> 2.5.0 transition could have been
> handled a lot better by Google.  Specifically, since it was an
> API-breaking upgrade, it should have been a major version bump for the
> Java library version.  I also feel that removing the download links
> for the old versions of the native libraries was careless, and
> certainly burned some of our Hadoop users.
>
> However, I don't see any reason to believe that protobuf 2.6 will not
> be wire-compatible with earlier versions.  Google has actually been
> pretty good about preserving wire-compatibility... just not about API
> compatibility.  If we want to get a formal statement from the project,
> we can, but I would be pretty shocked if they decided to change the
> protocol in a backwards-incompatible way in a minor version release.
>
> I do think there are some potential issues for our users of bumping
> the library version in a minor Hadoop release.  Until we implement
> full dependency isolation for Hadoop, there may be some disruptions to
> end-users from changing Java dependency versions.  Similarly, users
> will need to install a new native protobuf library version as well.
> So I think we should bump the protobuf versions in Hadoop 3.0, but not
> in 2.x.
>
> cheers,
> Colin
>
> On Fri, May 15, 2015 at 4:55 AM, Alan Burlison <alan.burli...@oracle.com>
> wrote:
> > On 15/05/2015 09:44, Steve Loughran wrote:
> >
> >> Now: why do you want to use a later version of protobuf.jar? Is it
> >> because "it is there"? Or is there a tangible need?
> >
> >
> > No, it's because I'm looking at this from a platform perspective: We have
> > other consumers of ProtoBuf beside Hadoop and we'd obviously like to
> > minimise the versions of PB that we ship, and preferably just ship the
> > latest version. The fact that PB seems to often be incompatible across
> > releases is an issue as it makes upgrading and dropping older versions
> > problematic.
> >
> > --
> > Alan Burlison
> > --
>

Reply via email to