Hello, Jim.

Ok. Here is the explanation.

I wrote to this mailing list in order to find out the possibility of successful build Impala in Ubuntu 16.04 ppc64le (if there is a support of ppc64le in Impala project/code). As one can see in previous messages of this thread, colleagues describe me a possible way in which one can try to successfully build github apache Impala with cloudera native-toolchain. There were no noticed objections from colleagues in this thread which obviously lead to stop try to build Impala on ppc64le.

But for now, after passing some "barriers" in build process and after some tricks, I finally pass configure stage of ./buildall.sh Impala script (including toolchain check) and met the following error (see below) on console while Impala build process (./buildall.sh executed).

So, looking at the error, naturally the question arises: is there de facto a possibility for now to build github apache Impala with cloudera native-toolchain in Ubuntu 16.04 ppc64le ? (Impala project supports Ubuntu 16.04 ppc64le installation?)

If 'yes' - then could you, please, give some comments about the reason of the following error (below) while Impala+"native-toolchain" build in Ubuntu 16.04 ppc64le ? and about the way to resolve the error to successfully build Impala ? (May be there is some another commit of impala which is more "friendly" with ppc64le and native-toolchain for now)

    >>And I have a lot of error messages while Impala compiling process
   in Ubuntu 16.04 ppc64le, e.g.:
    >>
    >>
    >>...
    >>make[2]: *** Deleting file
   'be/generated-sources/gen-cpp/ImpalaInternalService_types.cpp'
    >>In file included from
   /home/build/impala/be/src/gutil/spinlock_internal.h:40:0,
    >>                 from
   /home/build/impala/be/src/gutil/spinlock_internal.cc:44:
    >>/home/build/impala/be/src/gutil/atomicops.h:88:2: error: #error
   You need to implement atomic operations for this architecture
    >> #error You need to implement atomic operations for this architecture
    >>  ^
    >>/home/build/impala/be/src/gutil/atomicops.h:321:8: error:
   âAtomic32â does not name a type
    >> inline Atomic32 Acquire_CompareAndSwap(volatile Atomic32* ptr,
    >>
    >>...
    >>
    >> Impala build process failed.



On 08/27/19 17:32, Jim Apple wrote:
I'm a bit confused. The text of the error was "You need to implement atomic operations for this architecture", right? Maybe could you be a bit more descriptive about what your understanding of that is and why it is a surprising error?

On Tue, Aug 27, 2019 at 2:51 AM Koltsov Dmitriy <d.kolt...@yadro.com <mailto:d.kolt...@yadro.com>> wrote:

    Ok, Tim.

    Now it's clear - github.com/apache/impala
    <http://github.com/apache/impala> and
    github.com/cloudera/native-toolchain
    <http://github.com/cloudera/native-toolchain> should be used for
    build in Ubuntu 16.04 ppc64le.

    But then still there is the question - could you, please, give
    some comments about possible reason of the error shown below when
    I tried this combination of impala and native-toolchain ? ... and
    about possible ways to solve it ? May be there is some another
    commit of impala which is more "friendly" with ppc64le and
    native-toolchain for now ?

        >>And I have a lot of error messages while compiling process,
        e.g.:
        >>
        >>
        >>...
        >>make[2]: *** Deleting file
        'be/generated-sources/gen-cpp/ImpalaInternalService_types.cpp'
        >>In file included from
        /home/build/impala/be/src/gutil/spinlock_internal.h:40:0,
        >>                 from
        /home/build/impala/be/src/gutil/spinlock_internal.cc:44:
        >>/home/build/impala/be/src/gutil/atomicops.h:88:2: error:
        #error You need to implement atomic operations for this
        architecture
        >> #error You need to implement atomic operations for this
        architecture
        >>  ^
        >>/home/build/impala/be/src/gutil/atomicops.h:321:8: error:
        âAtomic32â does not name a type
        >> inline Atomic32 Acquire_CompareAndSwap(volatile Atomic32* ptr,
        >>
        >>...
        >>
        >> Impala build process failed.




    On 08/27/19 01:51, Tim Armstrong wrote:
    Hi Dmitry,
    > But only by that moment I've noticed that there is a
    significant difference between github.com/cloudera/Impala
    <http://github.com/cloudera/Impala> and github.com/apache/impala
    <http://github.com/apache/impala> - while build.
    > And all previous steps I tried with github apache impala and
    cloudera native-toolchain.
    That is the right thing to do. Apache Impala master is the latest
    and greatest. github.com/cloudera/impala
    <http://github.com/cloudera/impala> mainly hosts snapshots of the
    source from different Cloudera releases. It looks like the
    default branch was cdh5-trunk, which is a fairly old version of
    Impala at this point.



    On Mon, Aug 26, 2019 at 1:50 PM Koltsov Dmitriy
    <d.kolt...@yadro.com <mailto:d.kolt...@yadro.com>> wrote:

        Hello Tim.

        After some tricks I have success in building Kudu stub.
        Thanks for advice.

        But only by that moment I've noticed that there is a
        significant difference between github.com/cloudera/Impala
        <http://github.com/cloudera/Impala> and
        github.com/apache/impala <http://github.com/apache/impala> -
        while build.
        And all previous steps I tried with github apache impala and
        cloudera native-toolchain.

        So, for now, after I successfully got Kudu stub, I've tried
        to build final Impala build with github apache impala and
        cloudera native-toolchain in Ubuntu 16.04 ppc64le. And I have
        a lot of error messages while compiling process, e.g.:

            ...
            make[2]: *** Deleting file
            'be/generated-sources/gen-cpp/ImpalaInternalService_types.cpp'
            In file included from
            /home/build/impala/be/src/gutil/spinlock_internal.h:40:0,
                             from
            /home/build/impala/be/src/gutil/spinlock_internal.cc:44:
            /home/build/impala/be/src/gutil/atomicops.h:88:2: error:
            #error You need to implement atomic operations for this
            architecture
             #error You need to implement atomic operations for this
            architecture
              ^
            /home/build/impala/be/src/gutil/atomicops.h:321:8: error:
            âAtomic32â does not name a type
             inline Atomic32 Acquire_CompareAndSwap(volatile
            Atomic32* ptr,

        ...

        Impala build process failed.



        So, hence now I'm trying only to use cloudera github impala
        and cloudera native-toolchain. I use previously build
        cloudera native-toolchain (git cloned from github), set
        IMPALA_TOOLCHAIN var to the appropriate location; current
        commit of cloudera impala is 7dd2c81. But when ./buildall.sh
        is executed I have the following error:

        -- Added static library dependency pprof:
        /home/build/impala/toolchain/gperftools-2.5/lib/libprofiler.a
        -- ----------> Adding thirdparty library gtest. <----------
        -- Header files: /home/build/impala/toolchain/gtest-1.6.0/include
        -- Added static library dependency gtest:
        /home/build/impala/toolchain/gtest-1.6.0/lib/libgtest.a
        CMake Error at cmake_modules/FindLlvmBinaries.cmake:33 (message):
          Could not find llvm-config
        Call Stack (most recent call first):
          CMakeLists.txt:208 (find_package)


        -- Configuring incomplete, errors occurred!
        See also
        "/home/build/impala_cloudera/CMakeFiles/CMakeOutput.log".
        See also "/home/build/impala_cloudera/CMakeFiles/CMakeError.log".
        Error in /home/build/impala_cloudera/bin/make_impala.sh at
        line 161: cmake . ${CMAKE_ARGS[@]}

        Though IMPALA_TOOLCHAIN path points to directory which
        contains LLVM build: "llvm-5.0.1-p1" dir is in the path, with
        all appropriate files.




        _
        __*Question:*_ Could you, please, give a comment about
        possible reason of the error and about how it could be resolved ?





        btw: there is some inconsistency about llvm versions between
        one in ./bin/impala-config.sh (export
        IMPALA_LLVM_VERSION=3.9.1) and default one of llvm build in
        cloudera native-toolchain (5.0.1-p1).






        On 08/24/19 03:49, Tim Armstrong wrote:
        Ah I see. I think if you run bin/bootstrap_toolchain.py
        manually it will build the stub for you.

        I wouldn't be surprised if this requires some tweaks to the
        scripts to make it work since they weren't written for this
        exact case in mind (the original use case for the kudu stubs
        was for OSes that Kudu didn't support but Impala did, like
        CentOS 5).

        On Wed, Aug 21, 2019 at 11:12 AM Koltsov Dmitriy
        <d.kolt...@yadro.com <mailto:d.kolt...@yadro.com>> wrote:

            Hello, Tim.

            Thanks for reply.

            When I'm trying to build Impala I am of course using
            already built clouder native-toolchain (cloned from
            github repo). This native-toolchain has no

            kudu in final build directory. So, when I'm trying to
            build Impala pointing this build through
            IMPALA_TOOLCHAIN variable with
            SKIP_TOOLCHAIN_BOOSTRAP=true then I have an error
            mentioned by me above (see the fragment below). Could
            you, please, inform if there is a possibility to
            instruct Impala building process not to use Kudu in
            Impala build on Ubuntu 16.04 ppc64le ?

            > > -- ----------> Adding thirdparty library libunwind.
            <---------->

            > > -- Header files:
            /home/build/impala/toolchain/libunwind-1.3-rc1-p3/include>

            > > -- Added shared library dependency libunwind:>

            > >
            /home/build/native-toolchain/build/libunwind-1.3-rc1-p3/lib64/>


            > > CMake Error at CMakeLists.txt:409 (find_package):>

            > > Could not find a package configuration file provided
            by "kuduClient" with>

            > > any of the following names:>

            > >>

            > > kuduClientConfig.cmake>

            > > kuduclient-config.cmake>

            > >>

            > > Add the installation prefix of "kuduClient" to
            CMAKE_PREFIX_PATH or set>

            > > "kuduClient_DIR" to a directory containing one of
            the above files. If>

            > > "kuduClient" provides a separate development package
            or SDK, be sure it>

            > > has>

            > > been installed.>

            > >>

            > >>

            > > -- Configuring incomplete, errors occurred!>

            > > See also
            "/home/build/impala/CMakeFiles/CMakeOutput.log".>

            > > See also
            "/home/build/impala/CMakeFiles/CMakeError.log".>

            > > /home/build/impala#>

            > > /home/build/impala#>

            On 2019/08/21 16:47:48, Tim Armstrong
            <t...@cloudera.com> <mailto:t...@cloudera.com> wrote:

            > Hi Dmitry,>

            >

            > The toolchain bootstrap process downloads pre-built
            binaries, and we don't>

            > have any for PPC.>

            >

            > You would need to build the toolchain locally for PPC,
            then point the>

            > Impala build at it. These instructions might be
            helpful for you ->

            >
            
https://cwiki.apache.org/confluence/display/IMPALA/Building+native-toolchain+from+scratch+and+using+with+Impala>


            > .>

            >

            >

            >

            > On Tue, Aug 20, 2019 at 3:53 PM Koltsov Dmitriy
            <d....@yadro.com> <mailto:d....@yadro.com> wrote:>

            >

            > > I've looked at the contents of impala-config.sh. As
            I understand - I>

            > > should manually set KUDU_IS_SUPPORTED=false in order
            to make general impala>

            > > build process to download kudu and build stub. But I
            use native_toolchain>

            > > and so var SKIP_TOOLCHAIN_BOOTSTRAP=true. So it
            seems that there is mutual>

            > > exclusion: if I want to build impala with github
            cloudera native_toolchain>

            > > then code branch for kudu stub building is disabled>

            > > (SKIP_TOOLCHAIN_BOOTSTRAP=true), and if I set>

            > > SKIP_TOOLCHAIN_BOOTSTRAP=false to enable general
            build process to download>

            > > and build kudu stub then there will be no other
            components available from>

            > > cloudera native_toolchain.>

            > >>

            > > For example, when I use first case with
            SKIP_TOOLCHAIN_BOOTSTRAP=true and>

            > > manually KUDU_IS_SUPPORTED=false set in
            impala-config.sh, then I have the>

            > > following error when trying ./buildall.sh for
            cloudera impala:>

            > >>

            > > ...>

            > > -- ----------> Adding thirdparty library krb5.
            <---------->

            > > -- Header files: /usr/include>

            > > -- Added shared library dependency krb5:>

            > > /usr/lib/powerpc64le-linux-gnu/libkrb5.so>

            > > -- Found Kerberos: /usr/sbin/kadmin.local>

            > > -- Added shared library dependency rt:>

            > > /usr/lib/powerpc64le-linux-gnu/librt.so>

            > > -- Added shared library dependency dl:>

            > > /usr/lib/powerpc64le-linux-gnu/libdl.so>

            > > -- Found LIBUNWIND:>

            > >
            /home/build/native-toolchain/build/libunwind-1.3-rc1-p3/lib64/>


            > > -- ----------> Adding thirdparty library libunwind.
            <---------->

            > > -- Header files:
            /home/build/impala/toolchain/libunwind-1.3-rc1-p3/include>

            > > -- Added shared library dependency libunwind:>

            > >
            /home/build/native-toolchain/build/libunwind-1.3-rc1-p3/lib64/>


            > > CMake Error at CMakeLists.txt:409 (find_package):>

            > > Could not find a package configuration file provided
            by "kuduClient" with>

            > > any of the following names:>

            > >>

            > > kuduClientConfig.cmake>

            > > kuduclient-config.cmake>

            > >>

            > > Add the installation prefix of "kuduClient" to
            CMAKE_PREFIX_PATH or set>

            > > "kuduClient_DIR" to a directory containing one of
            the above files. If>

            > > "kuduClient" provides a separate development package
            or SDK, be sure it>

            > > has>

            > > been installed.>

            > >>

            > >>

            > > -- Configuring incomplete, errors occurred!>

            > > See also
            "/home/build/impala/CMakeFiles/CMakeOutput.log".>

            > > See also
            "/home/build/impala/CMakeFiles/CMakeError.log".>

            > > /home/build/impala#>

            > > /home/build/impala#>

            > >>

            > >>

            > > Could you please describe how can one exactly build
            cloudera impala with>

            > > its native_toolchain and kudu stub simultaneously on
            Ubuntu 16.04 ppc64le ?>

            > >>

            > >>

            > >>

            > >>

            > >>

            > > Regards,>

            > > Koltsov Dmitriy>

            > > System Engineer, YADRO>

            > >>

            > >>

            > >>

            > > On 08/16/19 18:15, Lars Volker wrote:>

            > >>

            > > For the Impala toolchain you can start with this
            list of commits>

            > > <https://gerrit.cloudera.org/#/q/ppc64le>
            <https://gerrit.cloudera.org/#/q/ppc64le>, in particular
            this review>

            > > <https://gerrit.cloudera.org/#/c/9077/>
            <https://gerrit.cloudera.org/#/c/9077/>.>

            > >>

            > > I don't know about kudu, you might want to ask on
            their mailing list or>

            > > their slack channel. If you look in impala-config.sh
            for>

            > > the KUDU_IS_SUPPORTED flag, you should find a way to
            build Impala without>

            > > Kudu.>

            > >>

            > > Cheers, Lars>

            > >>

            > >>

            > >>

            > > On Fri, Aug 16, 2019 at 5:32 AM Koltsov Dmitriy
            <d....@yadro.com> <mailto:d....@yadro.com>>

            > > wrote:>

            > >>

            > >> Hello, Lars!>

            > >>>

            > >> Thanks for operative answer.>

            > >>>

            > >> And could please inform about actual commit number
            of the>

            > >> native-toolchain on github which can be build
            successfully at that moment ?>

            > >>>

            > >> Btw: I ask about it because build process for
            current commit of>

            > >> native-toolchain finishes with error. And error is
            because of kudu build>

            > >> fail (other components of toolchain have been built
            fine). For now build.sh>

            > >> file in this commit of kudu src have explicit
            switch to disable ppc64le.>

            > >> And if I manually enable ppc64le case then code
            will try to build kudu from>

            > >> github; but github version kudu tries to build own
            toolchain while>

            > >> thirdparty building and it seems that for know
            current commit of github>

            > >> kudu has an error on the way to build kudu on
            Ubuntu 16.04 ppc64le.>

            > >>>

            > >> So another question is - Can Kudu be build on
            Ubuntu 16.04 ppc64le ? If>

            > >> yes - could you please inform me about appropriate
            commit of github kudu or>

            > >> maybe about another way to build it ?>

            > >>>

            > >>>

            > >>>

            > >> Regards,>

            > >> Koltsov Dmitriy>

            > >> System Engineer, YADRO>

            > >>>

            > >>>

            > >> On 16.08.2019 00:39, Lars Volker wrote:>

            > >>>

            > >> In short the answer is "likely not". We don't have
            any tests for ppc64le.>

            > >> About two years ago we had some commits to enable
            the toolchain on power,>

            > >> but I can't recall or find any changes to Impala
            itself related to that>

            > >> effort.>

            > >>>

            > >> Cheers, Lars>

            > >>>

            > >> On Thu, Aug 15, 2019 at 11:53 AM Koltsov Dmitriy
            <d....@yadro.com> <mailto:d....@yadro.com>>

            > >> wrote:>

            > >>>

            > >>> Hello!>

            > >>>>

            > >>> Could you please inform if Impala can be build and
            run on Ubuntu 16.04>

            > >>> ppc64le ?>

            > >>>>

            > >>>>

            > >>>>

            > >>>>

            > >>> -->

            > >>> Regards,>

            > >>> Koltsov Dmitriy>

            > >>> System Engineer, YADRO.>

            > >>>>

            > >>>>

            > >>>

            > >>

            >




Reply via email to