You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues-all@impala.apache.org by "YifanZhang (Jira)" <ji...@apache.org> on 2021/07/30 09:36:00 UTC

[jira] [Updated] (IMPALA-10833) Upgrade toolchain to support run kudu client on old version Unix platforms

     [ https://issues.apache.org/jira/browse/IMPALA-10833?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

YifanZhang updated IMPALA-10833:
--------------------------------
    Description: 
Kudu client library in Impala 4.0 toolchain was built on Linux 3.17 or later on which Boost use getrandom(2) to generate UUID. When run impala on an older version platform, it could crash when use kudu tables. Below is a coredump stack of impalad:
{code:java}
#0  0x00007f25eb0ec1f7 in raise () from /lib64/libc.so.6
#1  0x00007f25eb0ed8e8 in abort () from /lib64/libc.so.6
#2  0x00007f25eba25475 in __gnu_cxx::__verbose_terminate_handler () at ../../../../gcc-7.5.0/libstdc++-v3/libsupc++/vterminate.cc:95
#3  0x00007f25eba23236 in __cxxabiv1::__terminate (handler=<optimized out>) at ../../../../gcc-7.5.0/libstdc++-v3/libsupc++/eh_terminate.cc:47
#4  0x00007f25eba23281 in std::terminate () at ../../../../gcc-7.5.0/libstdc++-v3/libsupc++/eh_terminate.cc:57
#5  0x00007f25eba234c4 in __cxxabiv1::__cxa_throw (obj=obj@entry=0x4a47ad30, 
    tinfo=tinfo@entry=0x7f25ed44c8f0 <typeinfo for boost::wrapexcept<boost::uuids::entropy_error>>, dest=dest@entry=
    0x7f25ecf926c0 <boost::wrapexcept<boost::uuids::entropy_error>::~wrapexcept()>) at ../../../../gcc-7.5.0/libstdc++-v3/libsupc++/eh_throw.cc:93
#6  0x00007f25ecfc29f1 in throw_exception<boost::uuids::entropy_error> (loc=..., e=...)
    at /mnt/source/kudu/kudu-b5e7362e69/thirdparty/installed/uninstrumented/include/boost/throw_exception.hpp:171
#7  get_random_bytes (siz=<optimized out>, buf=<optimized out>, this=<optimized out>)
    at /mnt/source/kudu/kudu-b5e7362e69/thirdparty/installed/uninstrumented/include/boost/uuid/detail/random_provider_getrandom.ipp:55
#8  operator() (this=<optimized out>) at /mnt/source/kudu/kudu-b5e7362e69/thirdparty/installed/uninstrumented/include/boost/uuid/random_generator.hpp:211
#9  kudu::ObjectIdGenerator::Next[abi:cxx11]() (this=this@entry=0x7f25ed463c50 <_ZZN4kudu6client10KuduClientC4EvE13oid_generator>)
    at /mnt/source/kudu/kudu-b5e7362e69/src/kudu/util/oid_generator.cc:49
#10 0x00007f25ecdb9a2b in kudu::client::KuduClient::KuduClient (this=0x42d42dc0) at /mnt/source/kudu/kudu-b5e7362e69/src/kudu/client/client.cc:460
#11 0x00007f25ecdbf521 in kudu::client::KuduClientBuilder::Build (this=this@entry=0x7f0a548a6170, client=client@entry=0x141d26b0)
    at /mnt/source/kudu/kudu-b5e7362e69/src/kudu/client/client.cc:377
#12 0x0000000000d6f403 in impala::CreateKuduClient (master_addrs=..., client=client@entry=0x141d26b0) at /data/apache-impala/be/src/exec/kudu-util.cc:100
{code}
Because kudu 1.15 forces Boost to use /dev/[u]random for UUID generation(see [274181 |https://github.com/apache/kudu/commit/27418145bc60ceb009c663626a88e57748a85c9f]and [316f74|https://github.com/apache/kudu/commit/316f74c4c90394df107df3d139b532a49e7dadf1] for more details), I think it's necessary to upgrade toolchain to pull in newer version of kudu client.

 

  was:
Kudu client library in Impala 4.0 toolchain was built on Linux 3.17 or later on which Boost use getrandom(2) to generate UUID. When run impala on an older version platform, it could crash when use kudu tables. Below is a coredump stack of impalad:

 
{code:java}
#0  0x00007f25eb0ec1f7 in raise () from /lib64/libc.so.6
#1  0x00007f25eb0ed8e8 in abort () from /lib64/libc.so.6
#2  0x00007f25eba25475 in __gnu_cxx::__verbose_terminate_handler () at ../../../../gcc-7.5.0/libstdc++-v3/libsupc++/vterminate.cc:95
#3  0x00007f25eba23236 in __cxxabiv1::__terminate (handler=<optimized out>) at ../../../../gcc-7.5.0/libstdc++-v3/libsupc++/eh_terminate.cc:47
#4  0x00007f25eba23281 in std::terminate () at ../../../../gcc-7.5.0/libstdc++-v3/libsupc++/eh_terminate.cc:57
#5  0x00007f25eba234c4 in __cxxabiv1::__cxa_throw (obj=obj@entry=0x4a47ad30, 
    tinfo=tinfo@entry=0x7f25ed44c8f0 <typeinfo for boost::wrapexcept<boost::uuids::entropy_error>>, dest=dest@entry=
    0x7f25ecf926c0 <boost::wrapexcept<boost::uuids::entropy_error>::~wrapexcept()>) at ../../../../gcc-7.5.0/libstdc++-v3/libsupc++/eh_throw.cc:93
#6  0x00007f25ecfc29f1 in throw_exception<boost::uuids::entropy_error> (loc=..., e=...)
    at /mnt/source/kudu/kudu-b5e7362e69/thirdparty/installed/uninstrumented/include/boost/throw_exception.hpp:171
#7  get_random_bytes (siz=<optimized out>, buf=<optimized out>, this=<optimized out>)
    at /mnt/source/kudu/kudu-b5e7362e69/thirdparty/installed/uninstrumented/include/boost/uuid/detail/random_provider_getrandom.ipp:55
#8  operator() (this=<optimized out>) at /mnt/source/kudu/kudu-b5e7362e69/thirdparty/installed/uninstrumented/include/boost/uuid/random_generator.hpp:211
#9  kudu::ObjectIdGenerator::Next[abi:cxx11]() (this=this@entry=0x7f25ed463c50 <_ZZN4kudu6client10KuduClientC4EvE13oid_generator>)
    at /mnt/source/kudu/kudu-b5e7362e69/src/kudu/util/oid_generator.cc:49
#10 0x00007f25ecdb9a2b in kudu::client::KuduClient::KuduClient (this=0x42d42dc0) at /mnt/source/kudu/kudu-b5e7362e69/src/kudu/client/client.cc:460
#11 0x00007f25ecdbf521 in kudu::client::KuduClientBuilder::Build (this=this@entry=0x7f0a548a6170, client=client@entry=0x141d26b0)
    at /mnt/source/kudu/kudu-b5e7362e69/src/kudu/client/client.cc:377
#12 0x0000000000d6f403 in impala::CreateKuduClient (master_addrs=..., client=client@entry=0x141d26b0) at /data/apache-impala/be/src/exec/kudu-util.cc:100
{code}
Because kudu 1.15 forces Boost to use /dev/[u]random for UUID generation(see [274181 |https://github.com/apache/kudu/commit/27418145bc60ceb009c663626a88e57748a85c9f]and [316f74|https://github.com/apache/kudu/commit/316f74c4c90394df107df3d139b532a49e7dadf1] for more details), I think it's necessary to upgrade toolchain to pull in newer version of kudu client.

 


> Upgrade toolchain to support run kudu client on old version Unix platforms
> --------------------------------------------------------------------------
>
>                 Key: IMPALA-10833
>                 URL: https://issues.apache.org/jira/browse/IMPALA-10833
>             Project: IMPALA
>          Issue Type: Wish
>    Affects Versions: Impala 4.0.0
>            Reporter: YifanZhang
>            Priority: Major
>
> Kudu client library in Impala 4.0 toolchain was built on Linux 3.17 or later on which Boost use getrandom(2) to generate UUID. When run impala on an older version platform, it could crash when use kudu tables. Below is a coredump stack of impalad:
> {code:java}
> #0  0x00007f25eb0ec1f7 in raise () from /lib64/libc.so.6
> #1  0x00007f25eb0ed8e8 in abort () from /lib64/libc.so.6
> #2  0x00007f25eba25475 in __gnu_cxx::__verbose_terminate_handler () at ../../../../gcc-7.5.0/libstdc++-v3/libsupc++/vterminate.cc:95
> #3  0x00007f25eba23236 in __cxxabiv1::__terminate (handler=<optimized out>) at ../../../../gcc-7.5.0/libstdc++-v3/libsupc++/eh_terminate.cc:47
> #4  0x00007f25eba23281 in std::terminate () at ../../../../gcc-7.5.0/libstdc++-v3/libsupc++/eh_terminate.cc:57
> #5  0x00007f25eba234c4 in __cxxabiv1::__cxa_throw (obj=obj@entry=0x4a47ad30, 
>     tinfo=tinfo@entry=0x7f25ed44c8f0 <typeinfo for boost::wrapexcept<boost::uuids::entropy_error>>, dest=dest@entry=
>     0x7f25ecf926c0 <boost::wrapexcept<boost::uuids::entropy_error>::~wrapexcept()>) at ../../../../gcc-7.5.0/libstdc++-v3/libsupc++/eh_throw.cc:93
> #6  0x00007f25ecfc29f1 in throw_exception<boost::uuids::entropy_error> (loc=..., e=...)
>     at /mnt/source/kudu/kudu-b5e7362e69/thirdparty/installed/uninstrumented/include/boost/throw_exception.hpp:171
> #7  get_random_bytes (siz=<optimized out>, buf=<optimized out>, this=<optimized out>)
>     at /mnt/source/kudu/kudu-b5e7362e69/thirdparty/installed/uninstrumented/include/boost/uuid/detail/random_provider_getrandom.ipp:55
> #8  operator() (this=<optimized out>) at /mnt/source/kudu/kudu-b5e7362e69/thirdparty/installed/uninstrumented/include/boost/uuid/random_generator.hpp:211
> #9  kudu::ObjectIdGenerator::Next[abi:cxx11]() (this=this@entry=0x7f25ed463c50 <_ZZN4kudu6client10KuduClientC4EvE13oid_generator>)
>     at /mnt/source/kudu/kudu-b5e7362e69/src/kudu/util/oid_generator.cc:49
> #10 0x00007f25ecdb9a2b in kudu::client::KuduClient::KuduClient (this=0x42d42dc0) at /mnt/source/kudu/kudu-b5e7362e69/src/kudu/client/client.cc:460
> #11 0x00007f25ecdbf521 in kudu::client::KuduClientBuilder::Build (this=this@entry=0x7f0a548a6170, client=client@entry=0x141d26b0)
>     at /mnt/source/kudu/kudu-b5e7362e69/src/kudu/client/client.cc:377
> #12 0x0000000000d6f403 in impala::CreateKuduClient (master_addrs=..., client=client@entry=0x141d26b0) at /data/apache-impala/be/src/exec/kudu-util.cc:100
> {code}
> Because kudu 1.15 forces Boost to use /dev/[u]random for UUID generation(see [274181 |https://github.com/apache/kudu/commit/27418145bc60ceb009c663626a88e57748a85c9f]and [316f74|https://github.com/apache/kudu/commit/316f74c4c90394df107df3d139b532a49e7dadf1] for more details), I think it's necessary to upgrade toolchain to pull in newer version of kudu client.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscribe@impala.apache.org
For additional commands, e-mail: issues-all-help@impala.apache.org