Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[thirdparty] Force Boost to use /dev/random for uuid
This patch adjusts the Boost thirdparty build to force it to use /dev/random instead of getrandom(2) which is used by deafult when compiled on Linux 3.17 or later. In the latest Kudu 1.14.0 binary jar we saw crashes in Hive pre-commit tests because that jar was compiled on CentOS 7 and therefore used a getrandom(2) call which was not available in the Hive precommit container. Below is an example failure log: INFO [cluster stderr printer] cluster.MiniKuduCluster: terminate called after throwing an instance of 'boost::wrapexcept<boost::uuids::entropy_error>' INFO [cluster stderr printer] cluster.MiniKuduCluster: what(): getrandom INFO [cluster stderr printer] cluster.MiniKuduCluster: *** Aborted at 1616564512 (unix time) try "date -d @1616564512" if you are using GNU date *** INFO [cluster stderr printer] cluster.MiniKuduCluster: PC: @ 0x7f67d1f963d7 __GI_raise INFO [cluster stderr printer] cluster.MiniKuduCluster: *** SIGABRT (@0x9c4000051e8) received by PID 20968 (TID 0x7f67d0c23a00) from PID 20968; stack trace: *** INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d442f201 (unknown) INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d65e1630 (unknown) INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d1f963d7 __GI_raise INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d1f97ac8 __GI_abort INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d28a79d5 __gnu_cxx::__verbose_terminate_handler() INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d28a5946 (unknown) INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d28a5973 std::terminate() INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d28a5b93 __cxa_throw INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d478c138 boost::throw_exception<>() INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d47c2d9d kudu::ObjectIdGenerator::Next() INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d8d9906c kudu::FsManager::CreateInstanceMetadata() INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d8d9f4df kudu::FsManager::CreateInitialFileSystemLayout() INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d8e6dc46 kudu::server::ServerBase::Init() INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d9f9e8ba kudu::kserver::KuduServer::Init() INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d9ed36af kudu::master::Master::Init() INFO [cluster stderr printer] cluster.MiniKuduCluster: @ 0x7f67d9eecaa6 kudu::master::RunMasterServer() ... Change-Id: I229f691ed851617e2aa183465726b8cc5e10039c Reviewed-on: http://gerrit.cloudera.org:8080/17354 Tested-by: Grant Henke <[email protected]> Reviewed-by: Alexey Serbin <[email protected]>
- Loading branch information