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

Updated cms::Exception using modern C++ #45745

Merged
merged 1 commit into from
Sep 10, 2024

Conversation

Dr15Jones
Copy link
Contributor

PR description:

  • Added format option
  • Use concepts to constrain operator<<

PR validation:

Code compiles. New unit tests passes.

- Added format option
- Use concepts to constrain operator<<
@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 19, 2024

cms-bot internal usage

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @Dr15Jones for master.

It involves the following packages:

  • FWCore/Utilities (core)

@Dr15Jones, @cmsbuild, @makortel, @smuzaffar can you please review it and eventually sign? Thanks.
@felicepantaleo, @makortel, @missirol, @wddgit this is something you requested to watch as well.
@antoniovilela, @mandrenguyen, @rappoccio, @sextonkennedy you are the release manager for this.

cms-bot commands are listed here

@Dr15Jones
Copy link
Contributor Author

please test

@cmsbuild
Copy link
Contributor

-1

Failed Tests: Build ClangBuild
Size: This PR adds an extra 24KB to repository
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-7880cb/41020/summary.html
COMMIT: 8c13810
CMSSW: CMSSW_14_1_X_2024-08-19-1100/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/45745/41020/install.sh to create a dev area with all the needed externals and cmssw changes.

The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic:

You can see more details here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-7880cb/41020/git-recent-commits.json
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-7880cb/41020/git-merge-result

Build

I found compilation error when building:

  File "/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/cms/cmssw-patch/CMSSW_14_1_X_2024-08-19-1100/src/CondFormats/Serialization/python/condformats_serialization_generate.py", line 601, in main
    SerializationCodeGenerator( scramFlags=args[1:] ).generate( opts.output )
  File "/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/cms/cmssw-patch/CMSSW_14_1_X_2024-08-19-1100/src/CondFormats/Serialization/python/condformats_serialization_generate.py", line 506, in __init__
    raise Exception('Please, resolve all errors before proceeding.')
Exception: Please, resolve all errors before proceeding.
gmake: *** [tmp/el8_amd64_gcc12/src/CondFormats/BTauObjects/src/CondFormatsBTauObjects/a/Serialization.cc] Error 1
>> Compiling  src/CondFormats/BTauObjects/src/BTagCalibration.cc
/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/gcc/12.3.1-40d504be6370b5a30e3947a6e575ca28/bin/c++ -c -DGNU_GCC -D_GNU_SOURCE -DTBB_USE_GLIBCXX_VERSION=120301 -DTBB_SUPPRESS_DEPRECATED_MESSAGES -DTBB_PREVIEW_RESUMABLE_TASKS=1 -DTBB_PREVIEW_TASK_GROUP_EXTENSIONS=1 -DBOOST_SPIRIT_THREADSAFE -DPHOENIX_THREADSAFE -DBOOST_MATH_DISABLE_STD_FPCLASSIFY -DBOOST_UUID_RANDOM_PROVIDER_FORCE_POSIX -DCMSSW_GIT_HASH='CMSSW_14_1_X_2024-08-19-1100' -DPROJECT_NAME='CMSSW' -DPROJECT_VERSION='CMSSW_14_1_X_2024-08-19-1100' -Isrc -Ipoison -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/cms/cmssw-patch/CMSSW_14_1_X_2024-08-19-1100/src -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/pcre/8.43-e34796d17981e9b6d174328c69446455/include -isystem/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/boost/1.80.0-7ac88d918a6883d593abc133ee0eb2e9/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/bz2lib/1.0.6-d065ccd79984efc6d4660f410e4c81de/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/libuuid/2.34-27ce4c3579b5b1de2808ea9c4cd8ed29/include -isystem/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/lcg/root/6.30.09-5371975256c236eab45164692fccb0e2/include -isystem/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/tbb/v2021.9.0-2391c941213c757dc9a1835b31681235/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/xz/5.2.5-6f3f49b07db84e10c9be594a1176c114/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/zlib/1.2.11-1a082fc322b0051b504cc023f21df178/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/fmt/10.2.1-deba157dd76fed17ac8b42adc60ff53f/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/md5/1.0.0-5b594b264e04ae51e893b1d69a797ec6/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/tinyxml2/6.2.0-68d511689c5dbd9a0d296bbb795fa052/include -I/data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_14_1_X_2024-08-19-1100/src/CondFormats/BTauObjects/src -O3 -pthread -pipe -Werror=main -Werror=pointer-arith -Werror=overlength-strings -Wno-vla -Werror=overflow -std=c++20 -ftree-vectorize -Werror=array-bounds -Werror=format-contains-nul -Werror=type-limits -fvisibility-inlines-hidden -fno-math-errno --param vect-max-version-for-alias-checks=50 -Xassembler --compress-debug-sections -Wno-error=array-bounds -Warray-bounds -fuse-ld=bfd -march=x86-64-v2 -felide-constructors -fmessage-length=0 -Wall -Wno-non-template-friend -Wno-long-long -Wreturn-type -Wextra -Wpessimizing-move -Wclass-memaccess -Wno-cast-function-type -Wno-unused-but-set-parameter -Wno-ignored-qualifiers -Wno-unused-parameter -Wunused -Wparentheses -Werror=return-type -Werror=missing-braces -Werror=unused-value -Werror=unused-label -Werror=address -Werror=format -Werror=sign-compare -Werror=write-strings -Werror=delete-non-virtual-dtor -Werror=strict-aliasing -Werror=narrowing -Werror=unused-but-set-variable -Werror=reorder -Werror=unused-variable -Werror=conversion-null -Werror=return-local-addr -Wnon-virtual-dtor -Werror=switch -fdiagnostics-show-option -Wno-unused-local-typedefs -Wno-attributes -Wno-psabi -Wno-error=unused-variable -DBOOST_DISABLE_ASSERTS -flto=auto -fipa-icf -flto-odr-type-merging -fno-fat-lto-objects -Wodr -fPIC -MMD -MF tmp/el8_amd64_gcc12/src/CondFormats/BTauObjects/src/CondFormatsBTauObjects/BTagCalibration.cc.d src/CondFormats/BTauObjects/src/BTagCalibration.cc -o tmp/el8_amd64_gcc12/src/CondFormats/BTauObjects/src/CondFormatsBTauObjects/BTagCalibration.cc.o
>> Compiling  src/CondFormats/BTauObjects/src/BTagEntry.cc
/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/gcc/12.3.1-40d504be6370b5a30e3947a6e575ca28/bin/c++ -c -DGNU_GCC -D_GNU_SOURCE -DTBB_USE_GLIBCXX_VERSION=120301 -DTBB_SUPPRESS_DEPRECATED_MESSAGES -DTBB_PREVIEW_RESUMABLE_TASKS=1 -DTBB_PREVIEW_TASK_GROUP_EXTENSIONS=1 -DBOOST_SPIRIT_THREADSAFE -DPHOENIX_THREADSAFE -DBOOST_MATH_DISABLE_STD_FPCLASSIFY -DBOOST_UUID_RANDOM_PROVIDER_FORCE_POSIX -DCMSSW_GIT_HASH='CMSSW_14_1_X_2024-08-19-1100' -DPROJECT_NAME='CMSSW' -DPROJECT_VERSION='CMSSW_14_1_X_2024-08-19-1100' -Isrc -Ipoison -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/cms/cmssw-patch/CMSSW_14_1_X_2024-08-19-1100/src -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/pcre/8.43-e34796d17981e9b6d174328c69446455/include -isystem/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/boost/1.80.0-7ac88d918a6883d593abc133ee0eb2e9/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/bz2lib/1.0.6-d065ccd79984efc6d4660f410e4c81de/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/libuuid/2.34-27ce4c3579b5b1de2808ea9c4cd8ed29/include -isystem/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/lcg/root/6.30.09-5371975256c236eab45164692fccb0e2/include -isystem/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/tbb/v2021.9.0-2391c941213c757dc9a1835b31681235/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/xz/5.2.5-6f3f49b07db84e10c9be594a1176c114/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/zlib/1.2.11-1a082fc322b0051b504cc023f21df178/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/fmt/10.2.1-deba157dd76fed17ac8b42adc60ff53f/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/md5/1.0.0-5b594b264e04ae51e893b1d69a797ec6/include -I/cvmfs/cms-ib.cern.ch/sw/x86_64/nweek-02851/el8_amd64_gcc12/external/tinyxml2/6.2.0-68d511689c5dbd9a0d296bbb795fa052/include -I/data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_14_1_X_2024-08-19-1100/src/CondFormats/BTauObjects/src -O3 -pthread -pipe -Werror=main -Werror=pointer-arith -Werror=overlength-strings -Wno-vla -Werror=overflow -std=c++20 -ftree-vectorize -Werror=array-bounds -Werror=format-contains-nul -Werror=type-limits -fvisibility-inlines-hidden -fno-math-errno --param vect-max-version-for-alias-checks=50 -Xassembler --compress-debug-sections -Wno-error=array-bounds -Warray-bounds -fuse-ld=bfd -march=x86-64-v2 -felide-constructors -fmessage-length=0 -Wall -Wno-non-template-friend -Wno-long-long -Wreturn-type -Wextra -Wpessimizing-move -Wclass-memaccess -Wno-cast-function-type -Wno-unused-but-set-parameter -Wno-ignored-qualifiers -Wno-unused-parameter -Wunused -Wparentheses -Werror=return-type -Werror=missing-braces -Werror=unused-value -Werror=unused-label -Werror=address -Werror=format -Werror=sign-compare -Werror=write-strings -Werror=delete-non-virtual-dtor -Werror=strict-aliasing -Werror=narrowing -Werror=unused-but-set-variable -Werror=reorder -Werror=unused-variable -Werror=conversion-null -Werror=return-local-addr -Wnon-virtual-dtor -Werror=switch -fdiagnostics-show-option -Wno-unused-local-typedefs -Wno-attributes -Wno-psabi -Wno-error=unused-variable -DBOOST_DISABLE_ASSERTS -flto=auto -fipa-icf -flto-odr-type-merging -fno-fat-lto-objects -Wodr -fPIC -MMD -MF tmp/el8_amd64_gcc12/src/CondFormats/BTauObjects/src/CondFormatsBTauObjects/BTagEntry.cc.d src/CondFormats/BTauObjects/src/BTagEntry.cc -o tmp/el8_amd64_gcc12/src/CondFormats/BTauObjects/src/CondFormatsBTauObjects/BTagEntry.cc.o
>> Compiling  src/CondFormats/BTauObjects/src/T_EventSetup_BTagCalibration.cc


Clang Build

I found compilation error while trying to compile with clang. Command used:

USER_CUDA_FLAGS='--expt-relaxed-constexpr' USER_CXXFLAGS='-Wno-register -fsyntax-only' scram build -k -j 32 COMPILER='llvm compile'

>> Entering Package FWCore/Utilities
>> Entering Package PhysicsTools/PyTorch
>> Entering Package PhysicsTools/TensorFlowAOT
>> Entering Package RecoHI/HiCentralityAlgos
>> Compile sequence completed for CMSSW CMSSW_14_1_X_2024-08-19-1100
gmake: *** [There are compilation/build errors. Please see the detail log above.] Error 1
+ eval scram build outputlog '&&' '(python3' /data/cmsbld/jenkins/workspace/ib-run-pr-tests/cms-bot/buildLogAnalyzer.py --logDir /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_14_1_X_2024-08-19-1100/tmp/el8_amd64_gcc12/cache/log/src '||' 'true)'
++ scram build outputlog
>> Entering Package CalibTracker/SiStripCommon
Entering library rule at src/CalibTracker/SiStripCommon/plugins
>> Compiling edm plugin src/CalibTracker/SiStripCommon/plugins/PrescaleEventFilter.cc


@Dr15Jones
Copy link
Contributor Author

The failure in clang is do to a bug in 17.0 which is NOT present in clang 16 or 18. This can be seen using compiler explorer https://godbolt.org/z/srcxvEaT8

@Dr15Jones
Copy link
Contributor Author

@smuzaffar would it be feasible to update our builds to use clang 18?

@smuzaffar
Copy link
Contributor

@smuzaffar would it be feasible to update our builds to use clang 18?

@Dr15Jones , yes I think its time to backport llvm 18.1.6 from CLANG IBs back to production (all warnings for CLANG IBs are fixed).

@makortel
Copy link
Contributor

@cmsbuild, please test for CMSSW_14_1_CLANG_X

In the mean time we could check if this PR would build cleanly with the clang 18.

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-7880cb/41035/summary.html
COMMIT: 8c13810
CMSSW: CMSSW_14_1_CLANG_X_2024-08-19-2300/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/45745/41035/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • You potentially added 526 lines to the logs
  • Reco comparison results: 39260 differences found in the comparisons
  • DQMHistoTests: Total files compared: 45
  • DQMHistoTests: Total histograms compared: 3422510
  • DQMHistoTests: Total failures: 37108
  • DQMHistoTests: Total nulls: 189
  • DQMHistoTests: Total successes: 3385193
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.05 KiB( 44 files compared)
  • DQMHistoSizes: changed ( 140.043 ): -0.008 KiB JetMET/SUSYDQM
  • DQMHistoSizes: changed ( 140.063 ): 0.004 KiB JetMET/SUSYDQM
  • DQMHistoSizes: changed ( 141.042 ): 0.023 KiB JetMET/SUSYDQM
  • DQMHistoSizes: changed ( 141.044 ): 0.043 KiB JetMET/SUSYDQM
  • DQMHistoSizes: changed ( 141.046 ): -0.012 KiB JetMET/SUSYDQM
  • Checked 196 log files, 165 edm output root files, 45 DQM output files
  • TriggerResults: found differences in 8 / 43 workflows

@cmsbuild
Copy link
Contributor

Milestone for this pull request has been moved to CMSSW_14_2_X. Please open a backport if it should also go in to CMSSW_14_1_X.

@cmsbuild cmsbuild modified the milestones: CMSSW_14_1_X, CMSSW_14_2_X Aug 27, 2024
@antoniovilela
Copy link
Contributor

ping (to make bot change milestone)

@cmsbuild cmsbuild modified the milestones: CMSSW_14_1_X, CMSSW_14_2_X Sep 3, 2024
@makortel
Copy link
Contributor

makortel commented Sep 9, 2024

@cmsbuild, please test

We have now clang 18 in the default IB.

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 9, 2024

-1

Failed Tests: UnitTests
Size: This PR adds an extra 12KB to repository
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-7880cb/41412/summary.html
COMMIT: 8c13810
CMSSW: CMSSW_14_2_X_2024-09-08-2300/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmssw/45745/41412/install.sh to create a dev area with all the needed externals and cmssw changes.

Unit Tests

I found 1 errors in the following unit tests:

---> test testSiStripPayloadInspector had ERRORS

Comparison Summary

Summary:

@makortel
Copy link
Contributor

makortel commented Sep 9, 2024

Comparison differences are related to #39803, and unit test failure to #45952

@makortel
Copy link
Contributor

makortel commented Sep 9, 2024

ignore tests-rejected with ib-failure

@makortel
Copy link
Contributor

makortel commented Sep 9, 2024

+core

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 9, 2024

This pull request is fully signed and it will be integrated in one of the next master IBs (test failures were overridden). This pull request will now be reviewed by the release team before it's merged. @mandrenguyen, @sextonkennedy, @rappoccio, @antoniovilela (and backports should be raised in the release meeting by the corresponding L2)

@mandrenguyen
Copy link
Contributor

+1

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

Successfully merging this pull request may close these issues.

6 participants