-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
[cxxmodules] Use the global module index only when no rootmap candidate is found #9592
Conversation
Starting build on |
b5b4eb4
to
122eb25
Compare
Starting build on |
Build failed on ROOT-ubuntu2004/soversion. Failing tests: |
Build failed on ROOT-performance-centos8-multicore/default. Errors:
Failing tests:
|
Build failed on ROOT-debian10-i386/cxx14. Failing tests: |
Build failed on mac11/cxx17. Errors:
Failing tests:
And 12 more |
122eb25
to
be8fce4
Compare
Starting build on |
Build failed on ROOT-ubuntu2004/soversion. Failing tests:
|
Build failed on ROOT-debian10-i386/cxx14. Failing tests:
|
Build failed on ROOT-performance-centos8-multicore/default. Failing tests:
|
…te is found In the hybrid mode when we use ROOT with modules and third party software without modules we have two name resolution systems: the global module index (GMI) and the rootmaps. In case an identifier is defined in both (eg TMVA::Event and X::Event), the GMI will take priority and load the TMVA module without later allowing the system to look for other candidates. This patch uses the GMI only when no rootmap file has told ROOT that it provides names for the given namespace. This fixes root-project#9583
be8fce4
to
e94089f
Compare
Starting build on |
Build failed on mac11/cxx17. Failing tests:
And 4 more |
@vgvassilev I see |
The GMI contains Identifier->list_of_modules mapping. This means that a lookup for |
@smuzaffar, could you test this PR for CMSSW as it would likely end up in v6-26 and is in the core of ROOT name resolution mechanism. cc: @davidlange6 |
@vgvassilev , cmssw tests for latest root master + this change are now running via cms-sw/cmsdist#7558 |
@vgvassilev , this lookgs good in cmssw |
@smuzaffar, thanks a lot for the prompt feedback! |
@vgvassilev , I also tested this for our CXXMODULE IBs and most of relvals failed with errors like
this is a different error than what we get in out CXXMODULE IBs https://cmssdt.cern.ch/SDT/cgi-bin/buildlogs/raw/slc7_amd64_gcc10/CMSSW_12_3_CXXMODULE_X_2022-01-19-2300/pyRelValMatrixLogs/run/135.1_TTbar_13+TTbarFS_13+HARVESTUP15FS+MINIAODMCUP15FS/step3_TTbar_13+TTbarFS_13+HARVESTUP15FS+MINIAODMCUP15FS.log ? |
@smuzaffar, indeed, now the failure looks very basic. @davidlange6, I remember we've seen such a failure but did we manage ever to solve it? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
On Jan 21, 2022, at 9:54 AM, Vassil Vassilev ***@***.***> wrote:
@smuzaffar, indeed, now the failure looks very basic.
@davidlange6, I remember we've seen such a failure but did we manage ever to solve it?
No, we didn't... though the only dictionary not found errors we have now are of a different sort (lets see if they go away)
…
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you were mentioned.
|
In the hybrid mode when we use ROOT with modules and third party software without modules we have two name resolution systems: the global module index (GMI) and the rootmaps. In case an identifier is defined in both (eg TMVA::Event and X::Event), the GMI will take priority and load the TMVA module without later allowing the system to look for other candidates.
This patch uses the GMI only when no rootmap file has told ROOT that it provides names for the given namespace.
This fixes #9583