Re: Time to address the Guava version problem

2014-10-13 Thread Steve Loughran
I've a patch for HADOOP-11102 which rolls curator back to v 2.4.1, which
only pulls in Guava 14...hadoop should now be weakly consistent -at least
not "strongly inconsistent"- in its guava versions.

allowing hadoop to work on 16.x while still remaining compatible with 11.x
is still something to work on -there's some patches there already

On 24 September 2014 07:35, Billie Rinaldi  wrote:

> The use of an unnecessarily old dependency encourages problems like
> HDFS-7040.  The current Guava dependency is a big problem for downstream
> apps and I'd really like to see it addressed.
>
> On Tue, Sep 23, 2014 at 2:09 PM, Steve Loughran 
> wrote:
>
> > I'm using curator elsewhere, it does log a lot (as does the ZK client),
> but
> > it solves a lot of problem. It's being adopted more downstream too.
> >
> > I'm wondering if we can move the code to the extent we know it works with
> > Guava 16, with the hadoop core being 16-compatible, but not actually
> > migrated to 16.x only. Then hadoop ships with 16 for curator & downstream
> > apps, but we say "you can probably roll back to 11 provided you don't use
> > features x-y-z".
> >
> > On 23 September 2014 21:55, Robert Kanter  wrote:
> >
> > > At the same time, not being able to use Curator will require a lot of
> > extra
> > > code, a lot of which we probably already have from the ZKRMStateStore,
> > but
> > > it's not available to use in hadoop-auth.  We'd need to create our own
> ZK
> > > libraries that Hadoop components can use, but (a) that's going to take
> a
> > > while, and (b) it seems silly to reinvent the wheel when Curator
> already
> > > does all this.
> > >
> > > I agree that upgrading Guava will be a compatibility problem though...
> > >
> > > On Tue, Sep 23, 2014 at 9:30 AM, Sandy Ryza 
> > > wrote:
> > >
> > > > If we've broken compatibility in branch-2, that's a bug that we need
> to
> > > > fix. HADOOP-10868 has not yet made it into a release; I don't see it
> > as a
> > > > justification for solidifying the breakage.
> > > >
> > > > -1 to upgrading Guava in branch-2.
> > > >
> > > > On Tue, Sep 23, 2014 at 3:06 AM, Steve Loughran <
> > ste...@hortonworks.com>
> > > > wrote:
> > > >
> > > > > +1 to upgrading guava. Irrespective of downstream apps, the hadoop
> > > source
> > > > > tree is now internally inconsistent
> > > > >
> > > > > On 22 September 2014 17:56, Sangjin Lee  wrote:
> > > > >
> > > > > > I agree that a more robust solution is to have better
> classloading
> > > > > > isolation.
> > > > > >
> > > > > > Still, IMHO guava (and possibly protobuf as well) sticks out
> like a
> > > > sore
> > > > > > thumb. There are just too many issues in trying to support both
> > guava
> > > > 11
> > > > > > and guava 16. Independent of what we may do with the classloading
> > > > > > isolation, we should still consider upgrading guava.
> > > > > >
> > > > > > My 2 cents.
> > > > > >
> > > > > > On Sun, Sep 21, 2014 at 3:11 PM, Karthik Kambatla <
> > > ka...@cloudera.com>
> > > > > > wrote:
> > > > > >
> > > > > > > Upgrading Guava version is tricky. While it helps in many
> cases,
> > it
> > > > can
> > > > > > > break existing applications/deployments. I understand we do not
> > > have
> > > > a
> > > > > > > policy for updating dependencies, but still we should be
> careful
> > > with
> > > > > > > Guava.
> > > > > > >
> > > > > > > I would be more inclined towards a more permanent solution to
> > this
> > > > > > problem
> > > > > > > - how about prioritizing classpath isolation so applications
> > aren't
> > > > > > > affected by Hadoop dependency updates at all? I understand that
> > > will
> > > > > also
> > > > > > > break user applications, but it might be the driving feature
> for
> > > > Hadoop
> > > > > > > 3.0?
> > > > > > >
> > > > > > > On Fri, Sep 19, 2014 at 5:13 PM, Sangjin Lee  >
> > > > wrote:
> > > > > > >
> > > > > > > > I would also agree on upgrading guava. Yes I am aware of the
> > > > > potential
> > > > > > > > impact on customers who might rely on hadoop bringing in
> guava
> > > 11.
> > > > > > > However,
> > > > > > > > IMHO the balance tipped over to the other side a while ago;
> > i.e.
> > > I
> > > > > > think
> > > > > > > > there are far more people using guava 16 in their code and
> > > > scrambling
> > > > > > to
> > > > > > > > make things work than the other way around.
> > > > > > > >
> > > > > > > > On Thu, Sep 18, 2014 at 2:40 PM, Steve Loughran <
> > > > > > ste...@hortonworks.com>
> > > > > > > > wrote:
> > > > > > > >
> > > > > > > > > I know we've been ignoring the Guava version problem, but
> > > > > > HADOOP-10868
> > > > > > > > > added a transitive dependency on Guava 16 by way of Curator
> > > 2.6.
> > > > > > > > >
> > > > > > > > > Maven currently forces the build to use Guava 11.0.2, but
> > this
> > > is
> > > > > > > hiding
> > > > > > > > at
> > > > > > > > > compile timeall code paths from curator which may use
> > classes &
> > > > > > methods
> > > > > > > > > that aren't there.
> > > > >

Re: Time to address the Guava version problem

2014-09-24 Thread Billie Rinaldi
The use of an unnecessarily old dependency encourages problems like
HDFS-7040.  The current Guava dependency is a big problem for downstream
apps and I'd really like to see it addressed.

On Tue, Sep 23, 2014 at 2:09 PM, Steve Loughran 
wrote:

> I'm using curator elsewhere, it does log a lot (as does the ZK client), but
> it solves a lot of problem. It's being adopted more downstream too.
>
> I'm wondering if we can move the code to the extent we know it works with
> Guava 16, with the hadoop core being 16-compatible, but not actually
> migrated to 16.x only. Then hadoop ships with 16 for curator & downstream
> apps, but we say "you can probably roll back to 11 provided you don't use
> features x-y-z".
>
> On 23 September 2014 21:55, Robert Kanter  wrote:
>
> > At the same time, not being able to use Curator will require a lot of
> extra
> > code, a lot of which we probably already have from the ZKRMStateStore,
> but
> > it's not available to use in hadoop-auth.  We'd need to create our own ZK
> > libraries that Hadoop components can use, but (a) that's going to take a
> > while, and (b) it seems silly to reinvent the wheel when Curator already
> > does all this.
> >
> > I agree that upgrading Guava will be a compatibility problem though...
> >
> > On Tue, Sep 23, 2014 at 9:30 AM, Sandy Ryza 
> > wrote:
> >
> > > If we've broken compatibility in branch-2, that's a bug that we need to
> > > fix. HADOOP-10868 has not yet made it into a release; I don't see it
> as a
> > > justification for solidifying the breakage.
> > >
> > > -1 to upgrading Guava in branch-2.
> > >
> > > On Tue, Sep 23, 2014 at 3:06 AM, Steve Loughran <
> ste...@hortonworks.com>
> > > wrote:
> > >
> > > > +1 to upgrading guava. Irrespective of downstream apps, the hadoop
> > source
> > > > tree is now internally inconsistent
> > > >
> > > > On 22 September 2014 17:56, Sangjin Lee  wrote:
> > > >
> > > > > I agree that a more robust solution is to have better classloading
> > > > > isolation.
> > > > >
> > > > > Still, IMHO guava (and possibly protobuf as well) sticks out like a
> > > sore
> > > > > thumb. There are just too many issues in trying to support both
> guava
> > > 11
> > > > > and guava 16. Independent of what we may do with the classloading
> > > > > isolation, we should still consider upgrading guava.
> > > > >
> > > > > My 2 cents.
> > > > >
> > > > > On Sun, Sep 21, 2014 at 3:11 PM, Karthik Kambatla <
> > ka...@cloudera.com>
> > > > > wrote:
> > > > >
> > > > > > Upgrading Guava version is tricky. While it helps in many cases,
> it
> > > can
> > > > > > break existing applications/deployments. I understand we do not
> > have
> > > a
> > > > > > policy for updating dependencies, but still we should be careful
> > with
> > > > > > Guava.
> > > > > >
> > > > > > I would be more inclined towards a more permanent solution to
> this
> > > > > problem
> > > > > > - how about prioritizing classpath isolation so applications
> aren't
> > > > > > affected by Hadoop dependency updates at all? I understand that
> > will
> > > > also
> > > > > > break user applications, but it might be the driving feature for
> > > Hadoop
> > > > > > 3.0?
> > > > > >
> > > > > > On Fri, Sep 19, 2014 at 5:13 PM, Sangjin Lee 
> > > wrote:
> > > > > >
> > > > > > > I would also agree on upgrading guava. Yes I am aware of the
> > > > potential
> > > > > > > impact on customers who might rely on hadoop bringing in guava
> > 11.
> > > > > > However,
> > > > > > > IMHO the balance tipped over to the other side a while ago;
> i.e.
> > I
> > > > > think
> > > > > > > there are far more people using guava 16 in their code and
> > > scrambling
> > > > > to
> > > > > > > make things work than the other way around.
> > > > > > >
> > > > > > > On Thu, Sep 18, 2014 at 2:40 PM, Steve Loughran <
> > > > > ste...@hortonworks.com>
> > > > > > > wrote:
> > > > > > >
> > > > > > > > I know we've been ignoring the Guava version problem, but
> > > > > HADOOP-10868
> > > > > > > > added a transitive dependency on Guava 16 by way of Curator
> > 2.6.
> > > > > > > >
> > > > > > > > Maven currently forces the build to use Guava 11.0.2, but
> this
> > is
> > > > > > hiding
> > > > > > > at
> > > > > > > > compile timeall code paths from curator which may use
> classes &
> > > > > methods
> > > > > > > > that aren't there.
> > > > > > > >
> > > > > > > > I need curator for my own work (2.4.1 & Guava 14.0 was what
> I'd
> > > > been
> > > > > > > > using), so don't think we can go back.
> > > > > > > >
> > > > > > > > HADOOP-11102 covers the problem -but doesn't propose a
> specific
> > > > > > solution.
> > > > > > > > But to me the one that seems most likely to work is: update
> > Guava
> > > > > > > >
> > > > > > > > -steve
> > > > > > > >
> > > > > > > > --
> > > > > > > > CONFIDENTIALITY NOTICE
> > > > > > > > NOTICE: This message is intended for the use of the
> individual
> > or
> > > > > > entity
> > > > > > > to
> > > > > > > > which it is addressed and may contain informat

Re: Time to address the Guava version problem

2014-09-23 Thread Steve Loughran
I'm using curator elsewhere, it does log a lot (as does the ZK client), but
it solves a lot of problem. It's being adopted more downstream too.

I'm wondering if we can move the code to the extent we know it works with
Guava 16, with the hadoop core being 16-compatible, but not actually
migrated to 16.x only. Then hadoop ships with 16 for curator & downstream
apps, but we say "you can probably roll back to 11 provided you don't use
features x-y-z".

On 23 September 2014 21:55, Robert Kanter  wrote:

> At the same time, not being able to use Curator will require a lot of extra
> code, a lot of which we probably already have from the ZKRMStateStore, but
> it's not available to use in hadoop-auth.  We'd need to create our own ZK
> libraries that Hadoop components can use, but (a) that's going to take a
> while, and (b) it seems silly to reinvent the wheel when Curator already
> does all this.
>
> I agree that upgrading Guava will be a compatibility problem though...
>
> On Tue, Sep 23, 2014 at 9:30 AM, Sandy Ryza 
> wrote:
>
> > If we've broken compatibility in branch-2, that's a bug that we need to
> > fix. HADOOP-10868 has not yet made it into a release; I don't see it as a
> > justification for solidifying the breakage.
> >
> > -1 to upgrading Guava in branch-2.
> >
> > On Tue, Sep 23, 2014 at 3:06 AM, Steve Loughran 
> > wrote:
> >
> > > +1 to upgrading guava. Irrespective of downstream apps, the hadoop
> source
> > > tree is now internally inconsistent
> > >
> > > On 22 September 2014 17:56, Sangjin Lee  wrote:
> > >
> > > > I agree that a more robust solution is to have better classloading
> > > > isolation.
> > > >
> > > > Still, IMHO guava (and possibly protobuf as well) sticks out like a
> > sore
> > > > thumb. There are just too many issues in trying to support both guava
> > 11
> > > > and guava 16. Independent of what we may do with the classloading
> > > > isolation, we should still consider upgrading guava.
> > > >
> > > > My 2 cents.
> > > >
> > > > On Sun, Sep 21, 2014 at 3:11 PM, Karthik Kambatla <
> ka...@cloudera.com>
> > > > wrote:
> > > >
> > > > > Upgrading Guava version is tricky. While it helps in many cases, it
> > can
> > > > > break existing applications/deployments. I understand we do not
> have
> > a
> > > > > policy for updating dependencies, but still we should be careful
> with
> > > > > Guava.
> > > > >
> > > > > I would be more inclined towards a more permanent solution to this
> > > > problem
> > > > > - how about prioritizing classpath isolation so applications aren't
> > > > > affected by Hadoop dependency updates at all? I understand that
> will
> > > also
> > > > > break user applications, but it might be the driving feature for
> > Hadoop
> > > > > 3.0?
> > > > >
> > > > > On Fri, Sep 19, 2014 at 5:13 PM, Sangjin Lee 
> > wrote:
> > > > >
> > > > > > I would also agree on upgrading guava. Yes I am aware of the
> > > potential
> > > > > > impact on customers who might rely on hadoop bringing in guava
> 11.
> > > > > However,
> > > > > > IMHO the balance tipped over to the other side a while ago; i.e.
> I
> > > > think
> > > > > > there are far more people using guava 16 in their code and
> > scrambling
> > > > to
> > > > > > make things work than the other way around.
> > > > > >
> > > > > > On Thu, Sep 18, 2014 at 2:40 PM, Steve Loughran <
> > > > ste...@hortonworks.com>
> > > > > > wrote:
> > > > > >
> > > > > > > I know we've been ignoring the Guava version problem, but
> > > > HADOOP-10868
> > > > > > > added a transitive dependency on Guava 16 by way of Curator
> 2.6.
> > > > > > >
> > > > > > > Maven currently forces the build to use Guava 11.0.2, but this
> is
> > > > > hiding
> > > > > > at
> > > > > > > compile timeall code paths from curator which may use classes &
> > > > methods
> > > > > > > that aren't there.
> > > > > > >
> > > > > > > I need curator for my own work (2.4.1 & Guava 14.0 was what I'd
> > > been
> > > > > > > using), so don't think we can go back.
> > > > > > >
> > > > > > > HADOOP-11102 covers the problem -but doesn't propose a specific
> > > > > solution.
> > > > > > > But to me the one that seems most likely to work is: update
> Guava
> > > > > > >
> > > > > > > -steve
> > > > > > >
> > > > > > > --
> > > > > > > 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

Re: Time to address the Guava version problem

2014-09-23 Thread Robert Kanter
At the same time, not being able to use Curator will require a lot of extra
code, a lot of which we probably already have from the ZKRMStateStore, but
it's not available to use in hadoop-auth.  We'd need to create our own ZK
libraries that Hadoop components can use, but (a) that's going to take a
while, and (b) it seems silly to reinvent the wheel when Curator already
does all this.

I agree that upgrading Guava will be a compatibility problem though...

On Tue, Sep 23, 2014 at 9:30 AM, Sandy Ryza  wrote:

> If we've broken compatibility in branch-2, that's a bug that we need to
> fix. HADOOP-10868 has not yet made it into a release; I don't see it as a
> justification for solidifying the breakage.
>
> -1 to upgrading Guava in branch-2.
>
> On Tue, Sep 23, 2014 at 3:06 AM, Steve Loughran 
> wrote:
>
> > +1 to upgrading guava. Irrespective of downstream apps, the hadoop source
> > tree is now internally inconsistent
> >
> > On 22 September 2014 17:56, Sangjin Lee  wrote:
> >
> > > I agree that a more robust solution is to have better classloading
> > > isolation.
> > >
> > > Still, IMHO guava (and possibly protobuf as well) sticks out like a
> sore
> > > thumb. There are just too many issues in trying to support both guava
> 11
> > > and guava 16. Independent of what we may do with the classloading
> > > isolation, we should still consider upgrading guava.
> > >
> > > My 2 cents.
> > >
> > > On Sun, Sep 21, 2014 at 3:11 PM, Karthik Kambatla 
> > > wrote:
> > >
> > > > Upgrading Guava version is tricky. While it helps in many cases, it
> can
> > > > break existing applications/deployments. I understand we do not have
> a
> > > > policy for updating dependencies, but still we should be careful with
> > > > Guava.
> > > >
> > > > I would be more inclined towards a more permanent solution to this
> > > problem
> > > > - how about prioritizing classpath isolation so applications aren't
> > > > affected by Hadoop dependency updates at all? I understand that will
> > also
> > > > break user applications, but it might be the driving feature for
> Hadoop
> > > > 3.0?
> > > >
> > > > On Fri, Sep 19, 2014 at 5:13 PM, Sangjin Lee 
> wrote:
> > > >
> > > > > I would also agree on upgrading guava. Yes I am aware of the
> > potential
> > > > > impact on customers who might rely on hadoop bringing in guava 11.
> > > > However,
> > > > > IMHO the balance tipped over to the other side a while ago; i.e. I
> > > think
> > > > > there are far more people using guava 16 in their code and
> scrambling
> > > to
> > > > > make things work than the other way around.
> > > > >
> > > > > On Thu, Sep 18, 2014 at 2:40 PM, Steve Loughran <
> > > ste...@hortonworks.com>
> > > > > wrote:
> > > > >
> > > > > > I know we've been ignoring the Guava version problem, but
> > > HADOOP-10868
> > > > > > added a transitive dependency on Guava 16 by way of Curator 2.6.
> > > > > >
> > > > > > Maven currently forces the build to use Guava 11.0.2, but this is
> > > > hiding
> > > > > at
> > > > > > compile timeall code paths from curator which may use classes &
> > > methods
> > > > > > that aren't there.
> > > > > >
> > > > > > I need curator for my own work (2.4.1 & Guava 14.0 was what I'd
> > been
> > > > > > using), so don't think we can go back.
> > > > > >
> > > > > > HADOOP-11102 covers the problem -but doesn't propose a specific
> > > > solution.
> > > > > > But to me the one that seems most likely to work is: update Guava
> > > > > >
> > > > > > -steve
> > > > > >
> > > > > > --
> > > > > > 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.
> > > > > >
> > > > >
> > > >
> > >
> >
> > --
> > 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.
> >
>


Re: Time to address the Guava version problem

2014-09-23 Thread Sandy Ryza
If we've broken compatibility in branch-2, that's a bug that we need to
fix. HADOOP-10868 has not yet made it into a release; I don't see it as a
justification for solidifying the breakage.

-1 to upgrading Guava in branch-2.

On Tue, Sep 23, 2014 at 3:06 AM, Steve Loughran 
wrote:

> +1 to upgrading guava. Irrespective of downstream apps, the hadoop source
> tree is now internally inconsistent
>
> On 22 September 2014 17:56, Sangjin Lee  wrote:
>
> > I agree that a more robust solution is to have better classloading
> > isolation.
> >
> > Still, IMHO guava (and possibly protobuf as well) sticks out like a sore
> > thumb. There are just too many issues in trying to support both guava 11
> > and guava 16. Independent of what we may do with the classloading
> > isolation, we should still consider upgrading guava.
> >
> > My 2 cents.
> >
> > On Sun, Sep 21, 2014 at 3:11 PM, Karthik Kambatla 
> > wrote:
> >
> > > Upgrading Guava version is tricky. While it helps in many cases, it can
> > > break existing applications/deployments. I understand we do not have a
> > > policy for updating dependencies, but still we should be careful with
> > > Guava.
> > >
> > > I would be more inclined towards a more permanent solution to this
> > problem
> > > - how about prioritizing classpath isolation so applications aren't
> > > affected by Hadoop dependency updates at all? I understand that will
> also
> > > break user applications, but it might be the driving feature for Hadoop
> > > 3.0?
> > >
> > > On Fri, Sep 19, 2014 at 5:13 PM, Sangjin Lee  wrote:
> > >
> > > > I would also agree on upgrading guava. Yes I am aware of the
> potential
> > > > impact on customers who might rely on hadoop bringing in guava 11.
> > > However,
> > > > IMHO the balance tipped over to the other side a while ago; i.e. I
> > think
> > > > there are far more people using guava 16 in their code and scrambling
> > to
> > > > make things work than the other way around.
> > > >
> > > > On Thu, Sep 18, 2014 at 2:40 PM, Steve Loughran <
> > ste...@hortonworks.com>
> > > > wrote:
> > > >
> > > > > I know we've been ignoring the Guava version problem, but
> > HADOOP-10868
> > > > > added a transitive dependency on Guava 16 by way of Curator 2.6.
> > > > >
> > > > > Maven currently forces the build to use Guava 11.0.2, but this is
> > > hiding
> > > > at
> > > > > compile timeall code paths from curator which may use classes &
> > methods
> > > > > that aren't there.
> > > > >
> > > > > I need curator for my own work (2.4.1 & Guava 14.0 was what I'd
> been
> > > > > using), so don't think we can go back.
> > > > >
> > > > > HADOOP-11102 covers the problem -but doesn't propose a specific
> > > solution.
> > > > > But to me the one that seems most likely to work is: update Guava
> > > > >
> > > > > -steve
> > > > >
> > > > > --
> > > > > 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.
> > > > >
> > > >
> > >
> >
>
> --
> 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.
>


Re: Time to address the Guava version problem

2014-09-23 Thread Steve Loughran
+1 to upgrading guava. Irrespective of downstream apps, the hadoop source
tree is now internally inconsistent

On 22 September 2014 17:56, Sangjin Lee  wrote:

> I agree that a more robust solution is to have better classloading
> isolation.
>
> Still, IMHO guava (and possibly protobuf as well) sticks out like a sore
> thumb. There are just too many issues in trying to support both guava 11
> and guava 16. Independent of what we may do with the classloading
> isolation, we should still consider upgrading guava.
>
> My 2 cents.
>
> On Sun, Sep 21, 2014 at 3:11 PM, Karthik Kambatla 
> wrote:
>
> > Upgrading Guava version is tricky. While it helps in many cases, it can
> > break existing applications/deployments. I understand we do not have a
> > policy for updating dependencies, but still we should be careful with
> > Guava.
> >
> > I would be more inclined towards a more permanent solution to this
> problem
> > - how about prioritizing classpath isolation so applications aren't
> > affected by Hadoop dependency updates at all? I understand that will also
> > break user applications, but it might be the driving feature for Hadoop
> > 3.0?
> >
> > On Fri, Sep 19, 2014 at 5:13 PM, Sangjin Lee  wrote:
> >
> > > I would also agree on upgrading guava. Yes I am aware of the potential
> > > impact on customers who might rely on hadoop bringing in guava 11.
> > However,
> > > IMHO the balance tipped over to the other side a while ago; i.e. I
> think
> > > there are far more people using guava 16 in their code and scrambling
> to
> > > make things work than the other way around.
> > >
> > > On Thu, Sep 18, 2014 at 2:40 PM, Steve Loughran <
> ste...@hortonworks.com>
> > > wrote:
> > >
> > > > I know we've been ignoring the Guava version problem, but
> HADOOP-10868
> > > > added a transitive dependency on Guava 16 by way of Curator 2.6.
> > > >
> > > > Maven currently forces the build to use Guava 11.0.2, but this is
> > hiding
> > > at
> > > > compile timeall code paths from curator which may use classes &
> methods
> > > > that aren't there.
> > > >
> > > > I need curator for my own work (2.4.1 & Guava 14.0 was what I'd been
> > > > using), so don't think we can go back.
> > > >
> > > > HADOOP-11102 covers the problem -but doesn't propose a specific
> > solution.
> > > > But to me the one that seems most likely to work is: update Guava
> > > >
> > > > -steve
> > > >
> > > > --
> > > > 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.
> > > >
> > >
> >
>

-- 
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.


Re: Time to address the Guava version problem

2014-09-22 Thread Sangjin Lee
I agree that a more robust solution is to have better classloading
isolation.

Still, IMHO guava (and possibly protobuf as well) sticks out like a sore
thumb. There are just too many issues in trying to support both guava 11
and guava 16. Independent of what we may do with the classloading
isolation, we should still consider upgrading guava.

My 2 cents.

On Sun, Sep 21, 2014 at 3:11 PM, Karthik Kambatla 
wrote:

> Upgrading Guava version is tricky. While it helps in many cases, it can
> break existing applications/deployments. I understand we do not have a
> policy for updating dependencies, but still we should be careful with
> Guava.
>
> I would be more inclined towards a more permanent solution to this problem
> - how about prioritizing classpath isolation so applications aren't
> affected by Hadoop dependency updates at all? I understand that will also
> break user applications, but it might be the driving feature for Hadoop
> 3.0?
>
> On Fri, Sep 19, 2014 at 5:13 PM, Sangjin Lee  wrote:
>
> > I would also agree on upgrading guava. Yes I am aware of the potential
> > impact on customers who might rely on hadoop bringing in guava 11.
> However,
> > IMHO the balance tipped over to the other side a while ago; i.e. I think
> > there are far more people using guava 16 in their code and scrambling to
> > make things work than the other way around.
> >
> > On Thu, Sep 18, 2014 at 2:40 PM, Steve Loughran 
> > wrote:
> >
> > > I know we've been ignoring the Guava version problem, but HADOOP-10868
> > > added a transitive dependency on Guava 16 by way of Curator 2.6.
> > >
> > > Maven currently forces the build to use Guava 11.0.2, but this is
> hiding
> > at
> > > compile timeall code paths from curator which may use classes & methods
> > > that aren't there.
> > >
> > > I need curator for my own work (2.4.1 & Guava 14.0 was what I'd been
> > > using), so don't think we can go back.
> > >
> > > HADOOP-11102 covers the problem -but doesn't propose a specific
> solution.
> > > But to me the one that seems most likely to work is: update Guava
> > >
> > > -steve
> > >
> > > --
> > > 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.
> > >
> >
>


Re: Time to address the Guava version problem

2014-09-22 Thread Steve Loughran
On 21 September 2014 23:11, Karthik Kambatla  wrote:

> Upgrading Guava version is tricky. While it helps in many cases, it can
> break existing applications/deployments. I understand we do not have a
> policy for updating dependencies, but still we should be careful with
> Guava.
>

I agree, but the classpath is currently in an inconsistent state: it
incudes Guava 11 and a library  built against Guava 16.


>
> I would be more inclined towards a more permanent solution to this problem
> - how about prioritizing classpath isolation so applications aren't
> affected by Hadoop dependency updates at all? I understand that will also
> break user applications, but it might be the driving feature for Hadoop
> 3.0?
>


I think this would be good;

if you look at where we're going with YARN-deployed apps, there is a trend
towards pushing up all the JARs, using the distributed cache to reduce the
cost of that upload. All you should really need at the far end are the .xml
files.

Except this has caused a problem with branch-2 to surface, the native libs
aren't binary-signature-compatible with 2.5 or earlier JARs -look  at
HADOOP-11064

This something to be fixed —but it highlights the problem where even the
native .lib, .so. .dll files are implicitly part of the in-hadoop
compatibility layer.

so: the "upload all JARs" strategy has weaknesses too; some OSGi solution
could address that, though we need time playing with that before being able
to claim it solves all problems ... I worry that it may help address JAR
dependencies at the price of performance.



Returning to Guava, which can't be put off as we are already in a mess


>
> On Fri, Sep 19, 2014 at 5:13 PM, Sangjin Lee  wrote:
>
> > I would also agree on upgrading guava. Yes I am aware of the potential
> > impact on customers who might rely on hadoop bringing in guava 11.
> However,
> > IMHO the balance tipped over to the other side a while ago; i.e. I think
> > there are far more people using guava 16 in their code and scrambling to
> > make things work than the other way around.
> >
>

I concur ... to many things you build downstream need a 15+ guava. Which
includes Hadoop now ... we just haven't fully admitted it yet.

Steve






> > On Thu, Sep 18, 2014 at 2:40 PM, Steve Loughran 
> > wrote:
> >
> > > I know we've been ignoring the Guava version problem, but HADOOP-10868
> > > added a transitive dependency on Guava 16 by way of Curator 2.6.
> > >
> > > Maven currently forces the build to use Guava 11.0.2, but this is
> hiding
> > at
> > > compile timeall code paths from curator which may use classes & methods
> > > that aren't there.
> > >
> > > I need curator for my own work (2.4.1 & Guava 14.0 was what I'd been
> > > using), so don't think we can go back.
> > >
> > > HADOOP-11102 covers the problem -but doesn't propose a specific
> solution.
> > > But to me the one that seems most likely to work is: update Guava
> > >
> > > -steve
> > >
> > > --
> > > 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.
> > >
> >
>

-- 
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.


Re: Time to address the Guava version problem

2014-09-21 Thread Karthik Kambatla
Upgrading Guava version is tricky. While it helps in many cases, it can
break existing applications/deployments. I understand we do not have a
policy for updating dependencies, but still we should be careful with
Guava.

I would be more inclined towards a more permanent solution to this problem
- how about prioritizing classpath isolation so applications aren't
affected by Hadoop dependency updates at all? I understand that will also
break user applications, but it might be the driving feature for Hadoop
3.0?

On Fri, Sep 19, 2014 at 5:13 PM, Sangjin Lee  wrote:

> I would also agree on upgrading guava. Yes I am aware of the potential
> impact on customers who might rely on hadoop bringing in guava 11. However,
> IMHO the balance tipped over to the other side a while ago; i.e. I think
> there are far more people using guava 16 in their code and scrambling to
> make things work than the other way around.
>
> On Thu, Sep 18, 2014 at 2:40 PM, Steve Loughran 
> wrote:
>
> > I know we've been ignoring the Guava version problem, but HADOOP-10868
> > added a transitive dependency on Guava 16 by way of Curator 2.6.
> >
> > Maven currently forces the build to use Guava 11.0.2, but this is hiding
> at
> > compile timeall code paths from curator which may use classes & methods
> > that aren't there.
> >
> > I need curator for my own work (2.4.1 & Guava 14.0 was what I'd been
> > using), so don't think we can go back.
> >
> > HADOOP-11102 covers the problem -but doesn't propose a specific solution.
> > But to me the one that seems most likely to work is: update Guava
> >
> > -steve
> >
> > --
> > 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.
> >
>


Re: Time to address the Guava version problem

2014-09-19 Thread Sangjin Lee
I would also agree on upgrading guava. Yes I am aware of the potential
impact on customers who might rely on hadoop bringing in guava 11. However,
IMHO the balance tipped over to the other side a while ago; i.e. I think
there are far more people using guava 16 in their code and scrambling to
make things work than the other way around.

On Thu, Sep 18, 2014 at 2:40 PM, Steve Loughran 
wrote:

> I know we've been ignoring the Guava version problem, but HADOOP-10868
> added a transitive dependency on Guava 16 by way of Curator 2.6.
>
> Maven currently forces the build to use Guava 11.0.2, but this is hiding at
> compile timeall code paths from curator which may use classes & methods
> that aren't there.
>
> I need curator for my own work (2.4.1 & Guava 14.0 was what I'd been
> using), so don't think we can go back.
>
> HADOOP-11102 covers the problem -but doesn't propose a specific solution.
> But to me the one that seems most likely to work is: update Guava
>
> -steve
>
> --
> 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.
>


Time to address the Guava version problem

2014-09-18 Thread Steve Loughran
I know we've been ignoring the Guava version problem, but HADOOP-10868
added a transitive dependency on Guava 16 by way of Curator 2.6.

Maven currently forces the build to use Guava 11.0.2, but this is hiding at
compile timeall code paths from curator which may use classes & methods
that aren't there.

I need curator for my own work (2.4.1 & Guava 14.0 was what I'd been
using), so don't think we can go back.

HADOOP-11102 covers the problem -but doesn't propose a specific solution.
But to me the one that seems most likely to work is: update Guava

-steve

-- 
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.