Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[cling] Crash when dictionary headers can not be found #11933

Closed
Nowakus opened this issue Dec 19, 2022 · 1 comment
Closed

[cling] Crash when dictionary headers can not be found #11933

Nowakus opened this issue Dec 19, 2022 · 1 comment
Labels

Comments

@Nowakus
Copy link
Contributor

Nowakus commented Dec 19, 2022

The newest ROOT version in LCG dev3 nightlies crashes in a situation where the earlier versions (<6.27) printed this message:

   Error in cling::AutoLoadingVisitor::InsertIntoAutoLoadingState:      
   Missing FileEntry for TestClassPrimitives.h   
   requested to autoload type TestClassPrimitives   

Now I see this stack trace instead:

#0  0x00007fffebc82b61 in cling::AutoLoadingVisitor::InsertIntoAutoLoadingState(clang::Decl*, std::pair<llvm::StringRef, llvm::StringRef>)::{lambda(llvm::StringRef, bool)#1}::operator()(llvm::StringRef, bool) const () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so
#1  0x00007fffebc835ac in cling::AutoLoadingVisitor::VisitDecl(clang::Decl*) ()
   from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so
#2  0x00007fffebc970c9 in clang::RecursiveASTVisitor<cling::AutoLoadingVisitor>::TraverseCXXRecordDecl(clang::CXXRecordDecl*) ()
   from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so
#3  0x00007fffebc8274a in cling::AutoloadCallback::TransactionCommitted(cling::Transaction const&) ()
   from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so
#4  0x00007fffebc64088 in cling::MultiplexInterpreterCallbacks::TransactionCommitted(cling::Transaction const&) ()
   from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so
#5  0x00007fffebce26f7 in cling::IncrementalParser::commitTransaction(llvm::PointerIntPair<cling::Transaction*, 2u, cling::IncrementalParser::EParseResult, llvm::PointerLikeTypeTraits<cling::Transaction*>, llvm::PointerIntPairInfo<cling::Transaction*, 2u, llvm::PointerLikeTypeTraits<cling::Transaction*> > >&, bool) ()
   from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so
#6  0x00007fffebce5429 in cling::IncrementalParser::Compile(llvm::StringRef, cling::CompilationOptions const&) ()
   from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so
#7  0x00007fffebc5ad22 in cling::Interpreter::declare(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, cling::Transaction**) ()
   from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so
#8  0x00007fffebbc61e0 in TCling::RegisterModule(char const*, char const**, char const**, char const*, char const*, void (*)(), std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > > const&, char const**, bool, bool) () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so
#9  0x00007ffff7a077e6 in TROOT::InitInterpreter() () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCore.so
#10 0x00007ffff7a07bdf in ROOT::Internal::GetROOT2() () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCore.so
#11 0x00007ffff7b037c9 in TClass::GetClass(char const*, bool, bool, unsigned long, unsigned long) ()
   from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCore.so
#12 0x00007ffff7b13ff8 in TClassRef::InternalGetClass() const () from /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCore.so

Another similar stack trace:

 0x7f102bf7db61 cling::AutoLoadingVisitor::InsertIntoAutoLoadingState(clang::Decl*, std::pair<llvm::StringRef, llvm::StringRef>)::{lambda(llvm::StringRef, bool)#1}::operator()(llvm::StringRef, bool) const ??:0   + 0x7f102bf7db61 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xba0b61]]
 0x7f102bf7e5ac cling::AutoLoadingVisitor::VisitDecl(clang::Decl*) ??:0   + 0x7f102bf7e5ac [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xba15ac]]
 0x7f102bf920c9 clang::RecursiveASTVisitor<cling::AutoLoadingVisitor>::TraverseCXXRecordDecl(clang::CXXRecordDecl*) ??:0   + 0x7f102bf920c9 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xbb50c9]]
 0x7f102bf7d74a cling::AutoloadCallback::TransactionCommitted(cling::Transaction const&) ??:0   + 0x7f102bf7d74a [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xba074a]]
 0x7f102bf5f088 cling::MultiplexInterpreterCallbacks::TransactionCommitted(cling::Transaction const&) ??:0   + 0x7f102bf5f088 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xb82088]]
 0x7f102bfdd6f7 cling::IncrementalParser::commitTransaction(llvm::PointerIntPair<cling::Transaction*, 2u, cling::IncrementalParser::EParseResult, llvm::PointerLikeTypeTraits<cling::Transaction*>, llvm::PointerIntPairInfo<cling::Transaction*, 2u, llvm::PointerLikeTypeTraits<cling::Transaction*> > >&, bool) ??:0   + 0x7f102bfdd6f7 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xc006f7]]
 0x7f102bfe0429 cling::IncrementalParser::Compile(llvm::StringRef, cling::CompilationOptions const&) ??:0   + 0x7f102bfe0429 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xc03429]]
 0x7f102bf55d22 cling::Interpreter::declare(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, cling::Transaction**) ??:0   + 0x7f102bf55d22 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xb78d22]]
 0x7f102bec11e0 TCling::RegisterModule(char const*, char const**, char const**, char const*, char const*, void (*)(), std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > > const&, char const**, bool, bool) ??:0   + 0x21c0 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xae41e0]]
 0x7f1031e518d4 TROOT::RegisterModule(char const*, char const**, char const**, char const*, char const*, void (*)(), std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > > const&, char const**, bool) ??:0   + 0xb4 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCore.so D[0x1a28d4]]
 0x7f10046f3892 (anonymous namespace)::TriggerDictionaryInitialization_libAthenaPoolTestAthenaPoolCnvDict_Impl() ??:0   + 0x7f10046f3892 [/build/atnight/localbuilds/nightlies/master--dev3LCG/build/build/Athena/x86_64-centos7-gcc11-opt/lib/libAthenaPoolTestAthenaPoolCnvDict.so D[0x2892]]
 0x7f1034a6f9c3 _dl_init_internal ??:0   + 0x7f1034a6f9c3 [/lib64/ld-linux-x86-64.so.2 D[0xf9c3]]
 0x7f1034a7459e dl_open_worker ??:0   + 0x7f1034a7459e [/lib64/ld-linux-x86-64.so.2 D[0x1459e]]
 0x7f1034a6f7d4 _dl_catch_error ??:0   + 0x7f1034a6f7d4 [/lib64/ld-linux-x86-64.so.2 D[0xf7d4]]
 0x7f1034a73b8b _dl_open ??:0   + 0x7f1034a73b8b [/lib64/ld-linux-x86-64.so.2 D[0x13b8b]]
 0x7f1034059fab dlopen_doit ??:0   + 0x7f1034059fab [/lib64/libdl.so.2 D[0xfab]]
 0x7f1034a6f7d4 _dl_catch_error ??:0   + 0x7f1034a6f7d4 [/lib64/ld-linux-x86-64.so.2 D[0xf7d4]]
 0x7f103405a5ad _dlerror_run ??:0   + 0x7f103405a5ad [/lib64/libdl.so.2 D[0x15ad]]
 0x7f103405a041 dlopen@@GLIBC_2.2.5 ??:0   + 0x31 [/lib64/libdl.so.2 D[0x1041]]
 0x7f100b3323d4 ath_dlopen ??:0   + 0x84 [/build/atnight/localbuilds/nightlies/master--dev3LCG/build/build/Athena/x86_64-centos7-gcc11-opt/lib/libAthDSoCallBacks.so D[0x13d4]]
 0x7f103405a05a dlopen@@GLIBC_2.2.5 ??:0   + 0x4a [/lib64/libdl.so.2 D[0x105a]]
 0x7f102c046c45 cling::utils::platform::DLOpen(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) ??:0   + 0x7f102c046c45 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xc69c45]]
 0x7f102bf3eff1 cling::DynamicLibraryManager::loadLibrary(llvm::StringRef, bool, bool) ??:0   + 0x7f102bf3eff1 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xb61ff1]]
 0x7f102be771c6 TCling::Load(char const*, bool) ??:0   + 0x1a6 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xa9a1c6]]
 0x7f1031ec07c9 TSystem::Load(char const*, char const*, bool) ??:0   + 0x799 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCore.so D[0x2117c9]]
 0x7f1031e4ec71 TROOT::LoadClass(char const*, char const*, bool) ??:0   + 0x71 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCore.so D[0x19fc71]]
 0x7f102be752c3 TCling::ShallowAutoLoadImpl(char const*) ??:0   + 0x2e3 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xa982c3]]
 0x7f102be8c0c4 TCling::DeepAutoLoadImpl(char const*, std::unordered_set<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, bool) ??:0   + 0x164 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xaaf0c4]]
 0x7f102be8c604 TCling::AutoLoad(char const*, bool) ??:0   + 0x214 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xaaf604]]
 0x7f102be8c7e1 TCling::AutoLoad(std::type_info const&, bool) ??:0   + 0xe1 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCling.so D[0xaaf7e1]]
 0x7f1031f4c8e9 TClass::GetClass(std::type_info const&, bool, bool, unsigned long, unsigned long) ??:0   + 0x4b9 [/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Thu/ROOT/HEAD/x86_64-centos7-gcc11-opt/lib/libCore.so D[0x29d8e9]]

The second crash can be reproduced like this:

> source /cvmfs/atlas.cern.ch/repo/ATLASLocalRootBase/x86_64/AtlasSetup/current/AtlasSetup/scripts/asetup.sh master--dev3LCG,latest,Athena 
> root
root[]   TClass::GetClass("PixelRDOElemLinkVec_p1")

 *** Break *** segmentation violation

Cheers, Marcin

@Nowakus Nowakus added the bug label Dec 19, 2022
vgvassilev added a commit to vgvassilev/root that referenced this issue Dec 19, 2022
FonsRademakers pushed a commit to root-project/cling that referenced this issue Dec 20, 2022
@github-actions
Copy link

Hi @Axel-Naumann,

It appears this issue is closed, but wasn't yet added to a project. Please add upcoming versions that will include the fix, or 'not applicable' otherwise.

Sincerely,
🤖

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant