You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hawq.apache.org by Shubham Sharma <ss...@pivotal.io> on 2017/12/15 00:47:18 UTC

Travis CI build failing for master repo - HAWQ-1572

Hi,

The travis CI build is failing for master and new commits. The CI is
erroring out with

configure: error: thrift is required
The command “./configure” failed and exited with 1 during .

I was able to reproduce this issue and looking at the config.log it looks
like it is failing at the line below while running a conftest.cpp -

/usr/local/include/thrift/stdcxx.h:32:10: fatal error:
'boost/tr1/functional.hpp' file not found

The root cause of the problem is compatibility of thrift 0.11 with boost
1.65.1 . Travis recently upgraded there xcode to 9.2 and list of default
packages now contains boost 1.65.1 and thrift 0.11.

Thrift uses stdcxx.h
<https://github.com/apache/thrift/blob/041c3c777db9639b0a9195bc6aa1f935501fd506/lib/cpp/src/thrift/stdcxx.h#L32>
which
includes boost/tr1/functional.hpp library. The support for tr1 has been
removed in boost 1.65, see here
<http://www.boost.org/users/history/version_1_65_0.html> under topic
“Removed Libraries”.
Since tr1 library is no longer present in boost 1.65, this causes thrift to
fail and eventually ./configure fails


*Solution*
As a solution I recommend that we uninstall boost 1.65 and install boost
1.60(the last compatible build with thrift). Tested on my fork of hawq repo
with this solution and the build passes.

I am not sure if this is a problem with thrift that they are not yet
compatible with boost 1.65 yet or a problem with travis ci that they have
included two incompatible versions. Will love to hear community's thoughts
on it.

-- 
Regards,
Shubham

Re: Travis CI build failing for master repo - HAWQ-1572

Posted by Radar Lei <rl...@pivotal.io>.
Thrift version higher than 0.9.x might not break the current feature tests,
but may have potential issues. Any one have context of this history, please
give your inputs, thanks.

Shubham, I think we can fix the CI first since Travis is only used for HAWQ
build verification and some simple tests, then we can investigate the
thrift version issue later. Thanks.

Regards,
Radar

On Fri, Dec 15, 2017 at 1:57 PM, Shubham Sharma <ss...@pivotal.io> wrote:

> Hi Radar, am not aware of compatibility problems with higher version of
> thrift. From what I tested with thrift 0.11and boost 1.60 the build
> passes(as
> seen in the new pr <https://github.com/apache/incubator-hawq/pull/1323>)
> am
> not sure if it might cause any issues later during usage. Before this
> failure, recent travis CI was using thrift 0.10 which had a successful
> build as well. What were the compatibility problems that were observed
> before ?
> Even with thrift 0.9.x we would have to switch to a lower version of boost
> because the current default version of travis ci's mac image installs boost
> 1.65.1 which has removed the tr1 module and will cause failure.
>
> On Thu, Dec 14, 2017 at 9:38 PM, Radar Lei <rl...@pivotal.io> wrote:
>
> > Thanks Shubham to address this issue.
> >
> > I noticed thrift is upgraded to 0.11, I remember HAWQ have compatible
> > problem with newer version of thrift.
> >
> > So another question is should we use thrift newer than 0.9.x?
> >
> > Regards,
> > Radar
> >
> > On Fri, Dec 15, 2017 at 8:47 AM, Shubham Sharma <ss...@pivotal.io>
> > wrote:
> >
> > > Hi,
> > >
> > > The travis CI build is failing for master and new commits. The CI is
> > > erroring out with
> > >
> > > configure: error: thrift is required
> > > The command “./configure” failed and exited with 1 during .
> > >
> > > I was able to reproduce this issue and looking at the config.log it
> looks
> > > like it is failing at the line below while running a conftest.cpp -
> > >
> > > /usr/local/include/thrift/stdcxx.h:32:10: fatal error:
> > > 'boost/tr1/functional.hpp' file not found
> > >
> > > The root cause of the problem is compatibility of thrift 0.11 with
> boost
> > > 1.65.1 . Travis recently upgraded there xcode to 9.2 and list of
> default
> > > packages now contains boost 1.65.1 and thrift 0.11.
> > >
> > > Thrift uses stdcxx.h
> > > <https://github.com/apache/thrift/blob/041c3c777db9639b0a9195bc6aa1f9
> > > 35501fd506/lib/cpp/src/thrift/stdcxx.h#L32>
> > > which
> > > includes boost/tr1/functional.hpp library. The support for tr1 has been
> > > removed in boost 1.65, see here
> > > <http://www.boost.org/users/history/version_1_65_0.html> under topic
> > > “Removed Libraries”.
> > > Since tr1 library is no longer present in boost 1.65, this causes
> thrift
> > to
> > > fail and eventually ./configure fails
> > >
> > >
> > > *Solution*
> > > As a solution I recommend that we uninstall boost 1.65 and install
> boost
> > > 1.60(the last compatible build with thrift). Tested on my fork of hawq
> > repo
> > > with this solution and the build passes.
> > >
> > > I am not sure if this is a problem with thrift that they are not yet
> > > compatible with boost 1.65 yet or a problem with travis ci that they
> have
> > > included two incompatible versions. Will love to hear community's
> > thoughts
> > > on it.
> > >
> > > --
> > > Regards,
> > > Shubham
> > >
> >
>
>
>
> --
> Regards,
> Shubham Sharma
> Staff Customer Engineer
> Pivotal Global Support Services
> ssharma@pivotal.io
> Direct Tel: +1(510)-304-8201
> Office Hours: Mon-Fri 9:00 am to 5:00 pm PDT
> Out of Office Hours Contact +1 877-477-2269
>

Re: Travis CI build failing for master repo - HAWQ-1572

Posted by Shubham Sharma <ss...@pivotal.io>.
Hi Radar, am not aware of compatibility problems with higher version of
thrift. From what I tested with thrift 0.11and boost 1.60 the build passes(as
seen in the new pr <https://github.com/apache/incubator-hawq/pull/1323>) am
not sure if it might cause any issues later during usage. Before this
failure, recent travis CI was using thrift 0.10 which had a successful
build as well. What were the compatibility problems that were observed
before ?
Even with thrift 0.9.x we would have to switch to a lower version of boost
because the current default version of travis ci's mac image installs boost
1.65.1 which has removed the tr1 module and will cause failure.

On Thu, Dec 14, 2017 at 9:38 PM, Radar Lei <rl...@pivotal.io> wrote:

> Thanks Shubham to address this issue.
>
> I noticed thrift is upgraded to 0.11, I remember HAWQ have compatible
> problem with newer version of thrift.
>
> So another question is should we use thrift newer than 0.9.x?
>
> Regards,
> Radar
>
> On Fri, Dec 15, 2017 at 8:47 AM, Shubham Sharma <ss...@pivotal.io>
> wrote:
>
> > Hi,
> >
> > The travis CI build is failing for master and new commits. The CI is
> > erroring out with
> >
> > configure: error: thrift is required
> > The command “./configure” failed and exited with 1 during .
> >
> > I was able to reproduce this issue and looking at the config.log it looks
> > like it is failing at the line below while running a conftest.cpp -
> >
> > /usr/local/include/thrift/stdcxx.h:32:10: fatal error:
> > 'boost/tr1/functional.hpp' file not found
> >
> > The root cause of the problem is compatibility of thrift 0.11 with boost
> > 1.65.1 . Travis recently upgraded there xcode to 9.2 and list of default
> > packages now contains boost 1.65.1 and thrift 0.11.
> >
> > Thrift uses stdcxx.h
> > <https://github.com/apache/thrift/blob/041c3c777db9639b0a9195bc6aa1f9
> > 35501fd506/lib/cpp/src/thrift/stdcxx.h#L32>
> > which
> > includes boost/tr1/functional.hpp library. The support for tr1 has been
> > removed in boost 1.65, see here
> > <http://www.boost.org/users/history/version_1_65_0.html> under topic
> > “Removed Libraries”.
> > Since tr1 library is no longer present in boost 1.65, this causes thrift
> to
> > fail and eventually ./configure fails
> >
> >
> > *Solution*
> > As a solution I recommend that we uninstall boost 1.65 and install boost
> > 1.60(the last compatible build with thrift). Tested on my fork of hawq
> repo
> > with this solution and the build passes.
> >
> > I am not sure if this is a problem with thrift that they are not yet
> > compatible with boost 1.65 yet or a problem with travis ci that they have
> > included two incompatible versions. Will love to hear community's
> thoughts
> > on it.
> >
> > --
> > Regards,
> > Shubham
> >
>



-- 
Regards,
Shubham Sharma
Staff Customer Engineer
Pivotal Global Support Services
ssharma@pivotal.io
Direct Tel: +1(510)-304-8201
Office Hours: Mon-Fri 9:00 am to 5:00 pm PDT
Out of Office Hours Contact +1 877-477-2269

Re: Travis CI build failing for master repo - HAWQ-1572

Posted by Radar Lei <rl...@pivotal.io>.
Thanks Shubham to address this issue.

I noticed thrift is upgraded to 0.11, I remember HAWQ have compatible
problem with newer version of thrift.

So another question is should we use thrift newer than 0.9.x?

Regards,
Radar

On Fri, Dec 15, 2017 at 8:47 AM, Shubham Sharma <ss...@pivotal.io> wrote:

> Hi,
>
> The travis CI build is failing for master and new commits. The CI is
> erroring out with
>
> configure: error: thrift is required
> The command “./configure” failed and exited with 1 during .
>
> I was able to reproduce this issue and looking at the config.log it looks
> like it is failing at the line below while running a conftest.cpp -
>
> /usr/local/include/thrift/stdcxx.h:32:10: fatal error:
> 'boost/tr1/functional.hpp' file not found
>
> The root cause of the problem is compatibility of thrift 0.11 with boost
> 1.65.1 . Travis recently upgraded there xcode to 9.2 and list of default
> packages now contains boost 1.65.1 and thrift 0.11.
>
> Thrift uses stdcxx.h
> <https://github.com/apache/thrift/blob/041c3c777db9639b0a9195bc6aa1f9
> 35501fd506/lib/cpp/src/thrift/stdcxx.h#L32>
> which
> includes boost/tr1/functional.hpp library. The support for tr1 has been
> removed in boost 1.65, see here
> <http://www.boost.org/users/history/version_1_65_0.html> under topic
> “Removed Libraries”.
> Since tr1 library is no longer present in boost 1.65, this causes thrift to
> fail and eventually ./configure fails
>
>
> *Solution*
> As a solution I recommend that we uninstall boost 1.65 and install boost
> 1.60(the last compatible build with thrift). Tested on my fork of hawq repo
> with this solution and the build passes.
>
> I am not sure if this is a problem with thrift that they are not yet
> compatible with boost 1.65 yet or a problem with travis ci that they have
> included two incompatible versions. Will love to hear community's thoughts
> on it.
>
> --
> Regards,
> Shubham
>