While we haven't codified this in our compatibility guidelines, dropping a
Java version seems to me like change that needs to happen alongside a major
release.  In plain talk, it has the ability to break everything for users
who aren't doing anything particularly unreasonable.

I don't think we should accept Hadoop's compatibility behavior 6 years ago
as precedent for what we can do now. That was before Hadoop 1.0. And we
probably have several orders of magnitude more production users.

I also don't think we should accept library upgrades as precedent.  While
this may make sense in specific situations, I definitely don't think this
is OK in general.  I'd be very nervous about updating Guava outside of
major version upgrade.

Lastly, I think the claim that nobody is running in production on Java 6 is
unsubstantiated.

We need to think about a JDK upgrade in terms of what its implications are
for users, not in terms of what other kinds of compatibility we've broken
that's loosely analogous.

-Sandy



On Tue, Jun 24, 2014 at 3:42 PM, Vinod Kumar Vavilapalli <vino...@apache.org
> wrote:

> Tx for the new thread Andrew, hopefully it can attract more eyes.
>
> Here's what I am behind - a modified proposal C.
>  - Overall I wouldn't think about EOL of JDK7 and/or JDK8 specifically
> given how long it has taken for JDK6 life-cycle to end. We should try to
> focus on JDK7 only for now.
>  - As we have seen, a lot (majority?) of orgs on Hadoop have moved beyond
> JDK6 and are already running on JDK7. So upgrading to JDK7 is more of a
> reflection of reality (to quote Steve) than it in itself being a disruptive
> change.
>  - We should try decoupling the discussion of major releases from JDK
> upgrades. We have seen individual libraries getting updated right in the
> 2.x lines as and when necessary. Given the new reality of JDK7, I don't see
> the 'JDK change' as much different from the library upgrades.
>
> We have seen how long it has taken (and still taking) users and
> organization to move from Hadoop 1 to Hadoop 2. A Hadoop 3/4 that adds
> nothing else other than JDK upgrades will be a big source of confusion for
> users. A major version update is also seen an opportunity for devs to break
> APIs. Unless we have groundbreaking 'features' (like YARN or
> wire-compatibility in Hadoop-2) that a majority of users want and that
> specifically warrant incompatible changes in our APIs or wire protocols, we
> are better off separating the major-version update discussion into ints own.
>
> Irrespective of all this, we should actively get behind better isolation
> of user classes/jars from MapReduce classpath. This one's been such a long
> running concern, it's not funny anymore.
>
> Thanks,
> +Vinod
>
> On Jun 24, 2014, at 11:17 AM, Andrew Wang <andrew.w...@cloudera.com>
> wrote:
>
> > Hi all,
> >
> > Forking this thread as requested by Vinod. To help anyone who's catching
> up
> > with this thread, I've written up a wiki page containing what I think are
> > the proposals under discussion. I did my very best to make this as
> > fact-based and disinterested as possible; I really appreciate the
> > constructive discussion we've had so far. If you believe you have a
> > proposal pending, please feel free to edit the wiki.
> >
> > https://wiki.apache.org/hadoop/MovingToJdk7and8
> >
> > I think based on our current compatibility guidelines, Proposal A is the
> > most attractive. We're pretty hamstrung by the requirement to keep the
> > classpath the same, which would be solved by either OSGI or shading our
> > deps (but that's a different discussion).
> >
> > Thanks,
> > Andrew
>
>
> --
> CONFIDENTIALITY NOTICE
> NOTICE: This message is intended for the use of the individual or entity to
> which it is addressed and may contain information that is confidential,
> privileged and exempt from disclosure under applicable law. If the reader
> of this message is not the intended recipient, you are hereby notified that
> any printing, copying, dissemination, distribution, disclosure or
> forwarding of this communication is strictly prohibited. If you have
> received this communication in error, please contact the sender immediately
> and delete it from your system. Thank You.
>

Reply via email to