[ https://issues.apache.org/jira/browse/KUDU-3545?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17916174#comment-17916174 ]
ASF subversion and git services commented on KUDU-3545: ------------------------------------------------------- Commit d932324e802aa397324c2181dfc55aaee39f4f69 in kudu's branch refs/heads/master from Alexey Serbin [ https://gitbox.apache.org/repos/asf?p=kudu.git;h=d932324e8 ] [thirdparty] fix building LLVM/CLANG 11.0.0 with GCC13 GCC13 (G++13) is the default system compiler on contemporary Linux OS flavors such as Ubuntu 24.04 LTS. With this patch it's now possible to compile LLVM/CLANG in Kudu's thirdparty on Ubuntu 24.04 and 24.04.1 LTS. This patch picks up a few relevant updates from the LLVM project's upstream repository [1] with minor tweaks to adapt to the change in the source files layout that happened in LLVM/CLANG 12. The updates prevent the leakage of the parts of the standard library installed on the build machine into the components of the LLVM/CLANG that are supposed to be completely freestanding and standalone. I guess it should help not only with making it possible to build LLVM/CLANG 11 with GCC13, but also address the root cause of the issues we have hit on SLES15 and elsewhere in the codegen that's reported in a few Jira items such as KUDU-3479 and KUDU-3545 [2][3]. However, there might be some extra patches beyond the ones already included. Anyway, I haven't verified this hypothesis yet. We definitely need to upgrade from LLVM 11.0.0 to LLVM 19.1.6 and I suspect it should help us to address [2] and [3] along with other updates and fixes. However, it's a separate task on its own, while this patch focuses on making the current version of LLVM/CLANG in the Kudu's thirdparty buildable on recent Linux OS releases (such as Ubuntu 24.04 LTS). I also snuck in an update to skip building compiler-rt tests since they aren't run in the scope of building LLVM/CLANG as a thirdparty component of the Apache Kudu project. [1] https://github.com/llvm/llvm-project [2] https://issues.apache.org/jira/browse/KUDU-3479 [3] https://issues.apache.org/jira/browse/KUDU-3545 Change-Id: I9b8282c85bbac5f25eae885e4b3ec183104bc540 Reviewed-on: http://gerrit.cloudera.org:8080/22279 Tested-by: Alexey Serbin <ale...@apache.org> Reviewed-by: Ashwani Raina <ara...@cloudera.com> Reviewed-by: Abhishek Chennaka <achenn...@cloudera.com> > codegen test fails on SLES with higher libgcc version > ----------------------------------------------------- > > Key: KUDU-3545 > URL: https://issues.apache.org/jira/browse/KUDU-3545 > Project: Kudu > Issue Type: Bug > Components: codegen > Reporter: Ashwani Raina > Assignee: Ashwani Raina > Priority: Minor > > On a SLES 15 withlibgcc_s1-13.2.1+git7813-150000.1.6.1.x86_64 version, > codegen-test fails with following crash: > {noformat} > *** SIGABRT (@0x3162e) received by PID 202286 (TID 0x7f71d1bfe700) from PID > 202286; stack trace: *** > @ 0x7f71d41f5910 (unknown) > @ 0x7f71d2725d2b __GI_raise > @ 0x7f71d27273e5 __GI_abort > @ 0x7f71d28d78d7 (unknown) > @ 0x7f71d28f1009 __deregister_frame > @ 0x7f71d4d6c9e0 llvm::RTDyldMemoryManager::deregisterEHFrames() > @ 0x7f71d4976b02 llvm::MCJIT::~MCJIT() > @ 0x7f71d4977241 llvm::MCJIT::~MCJIT() > @ 0x7f71d481c222 std::default_delete<>::operator()() > @ 0x7f71d481c12d std::unique_ptr<>::~unique_ptr() > @ 0x7f71d481bfaf kudu::codegen::JITWrapper::~JITWrapper() > @ 0x7f71d4835f34 > kudu::codegen::RowProjectorFunctions::~RowProjectorFunctions() > @ 0x7f71d4835f50 > kudu::codegen::RowProjectorFunctions::~RowProjectorFunctions() > @ 0x46297c kudu::RefCountedThreadSafe<>::DeleteInternal() > @ 0x45f3d1 kudu::DefaultRefCountedThreadSafeTraits<>::Destruct() > @ 0x45acb0 kudu::RefCountedThreadSafe<>::Release() > @ 0x7f71d480c191 > kudu::codegen::CodeCache::EvictionCallback::EvictedEntry() > @ 0x7f71d3c5e4bb kudu::(anonymous > namespace)::CacheShard<>::FreeEntry() > @ 0x7f71d3c60b31 kudu::(anonymous namespace)::CacheShard<>::Insert() > @ 0x7f71d3c5fb73 kudu::(anonymous namespace)::ShardedCache<>::Insert() > @ 0x7f71d480bab6 kudu::codegen::CodeCache::AddEntry() > @ 0x7f71d4811fea kudu::codegen::(anonymous > namespace)::CompilationTask::RunWithStatus() > @ 0x7f71d4811a64 kudu::codegen::(anonymous > namespace)::CompilationTask::Run() > @ 0x7f71d481288a > _ZZN4kudu7codegen18CompilationManager19RequestRowProjectorEPKNS_6SchemaES4_PSt10unique_ptrINS0_12RowProjectorESt14default_deleteIS6_EEENKUlvE_clEv > @ 0x7f71d4813e72 > _ZNSt17_Function_handlerIFvvEZN4kudu7codegen18CompilationManager19RequestRowProjectorEPKNS1_6SchemaES6_PSt10unique_ptrINS2_12RowProjectorESt14default_deleteIS8_EEEUlvE_E9_M_invokeERKSt9_Any_data > @ 0x452430 std::function<>::operator()() > @ 0x7f71d3d98648 kudu::ThreadPool::DispatchThread() > @ 0x7f71d3d98ee9 _ZZN4kudu10ThreadPool12CreateThreadEvENKUlvE_clEv > @ 0x7f71d3d9a6a0 > _ZNSt17_Function_handlerIFvvEZN4kudu10ThreadPool12CreateThreadEvEUlvE_E9_M_invokeERKSt9_Any_data > @ 0x452430 std::function<>::operator()() > @ 0x7f71d3d89482 kudu::Thread::SuperviseThread() > @ 0x7f71d41e96ea start_thread > {noformat} > From the stack frame, it seems that __deregister_frame is probably being fed > some invalid input that is already de-initialised before calling the > __deregister_frame. > We seem to be hitting this assert: > [https://github.com/gcc-mirror/gcc/blob/65e2c932019b4e36d7c1d49952dc006fa7419a3d/libgcc/unwind-dw2-fde.c#L291C11-L291C11] > gcc_assert (in_shutdown || ob); -- This message was sent by Atlassian Jira (v8.20.10#820010)