On Mar 10, 2015, at 12:40 PM, Karthik Kambatla <ka...@cloudera.com> wrote:

> 
> Are we okay with breaking other forms of compatibility for Hadoop-3, like
> behavior, dependencies, JDK, classpath, environment? I think so. Are we
> okay with breaking these forms of compatibility in future Hadoop-2.x?
> Likely not. Does our compatibility policy allow these changes in 2.x?
> Mostly yes, but that is because we don't have policies for a lot of these
> things that affect end-users.

        I’d disagree with that last statement.  The compatibility guarantees in 
Compatibility.md covers all of these examples. 

Changing the JDK:
        * Build Artifacts
        * Hardware/Software Requirements
        * Hadoop ABI

API compatibility:
        * Java API
        * Build artifacts
        * Hadoop ABI

Wire compatibility violations:
        * Wire compatibility
        * Hadoop ABI

Environment:
        * Depends upon what is meant by that, but it’s pretty much all of the 
above, plus CLI, env var, etc.


        All of these are very clear that this stuff should change in a major 
version only in order not to disrupt our users.  The only one we can change are 
dependencies, covered under class path:

        "Currently, there is NO policy on when Hadoop's dependencies can 
change.”

        But it is heavily implied that this is a bad thing to do:

"Adding new dependencies or updating the version of existing dependencies may 
interfere with those in applications' class paths."



Reply via email to