Skip to content

Conversation

@makortel
Copy link
Contributor

@makortel makortel commented Dec 10, 2025

PR description:

This PR applies the ROOT schema evolution pattern that avoids the use of std::auto_ptr (that was formally removed in C++17), for which a test was developed in #48817, to the std::auto_ptr<gen::PdfInfo> -to-std::unique_ptr<gen::PdfInfo> read rules for GenEventInfoProduct and LHEEventProduct.

In addition, the first commit fixes the LHEEventProduct read rule to include all versions before 13 (that came up in #49538). I included it here to because I had to touch the same line in classes_def.xml, and doing that change first makes the backporting easier.

Fixes #43422
Fixes #43923
Resolves cms-sw/framework-team#1538
Resolves cms-sw/framework-team#1714

PR validation:

Code compiles, and the deprecation warnings along

>> Compiling scram_x86-64-v2 LCG dictionary: tmp/el8_amd64_gcc13/src/SimDataFormats/GeneratorProducts/src/SimDataFormatsGeneratorProducts/lcgdict/SimDataFormatsGeneratorProducts_xr.cc
/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc13/external/gcc/13.4.0-6908cfdf803923e783448096ca4f0923/bin/c++ -MMD -MF tmp/el8_amd64_gcc13/src/SimDataFormats/GeneratorProducts/src/SimDataFormatsGeneratorProducts/scram_x86-64-v2/lcgdict/SimDataFormatsGeneratorProducts_xr.cc.d -I. -c -DCMS_MICRO_ARCH='x86-64-v2' -DGNU_GCC -D_GNU_SOURCE -DTBB_USE_GLIBCXX_VERSION=130400 -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 -DBOOST_MPL_IGNORE_PARENTHESES_WARNING -DCMSSW_GIT_HASH='CMSSW_16_0_X_2025-12-09-2300' -DPROJECT_NAME='CMSSW' -DPROJECT_VERSION='CMSSW_16_0_X_2025-12-09-2300' -Isrc -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc13/external/pcre/8.43-6d98fda3bfd074ebb583e2d6a2c75d25/include -isystem/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc13/external/boost/1.80.0-6fb83b2bac2398768f2cc6374a639c37/include -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc13/external/bz2lib/1.0.6-d113e1c6278c07eeaff5f84db9548446/include -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc13/external/hepmc/2.06.10-903e23142392c852f3df97c32fbd4659/include -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc13/external/libuuid/2.34-5ba7a8abfc0c5fecdc448cca360c25ff/include -isystem/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc13/lcg/root/6.36.07-0490e78b33943d48f9af1c19441a9d2e/include -isystem/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc13/external/tbb/v2022.3.0-54089f7aad511dfcd272d65c5ee4b3ab/include -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc13/external/xz/5.6.4-b9c4ffbc390ed320a5d57fd552e29a05/include -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc13/external/zlib/1.2.13-589f6bb51bbeba38a7adf5a10ea8a093/include -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc13/external/hepmc3/3.2.7-f8f0da18d94695d72ff740910e834c9f/include -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc13/external/md5/1.0.0-26057075013e190e56dad37d35219376/include -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc13/external/tinyxml2/6.2.0-67924ead96ecb4e69aad321b767979a5/include -DCMSSW_REFLEX_DICT -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 -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=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 -Os -Wno-unused-variable -march=x86-64-v2 -flto=auto -fipa-icf -flto-odr-type-merging -fno-fat-lto-objects -Wodr  -fPIC  tmp/el8_amd64_gcc13/src/SimDataFormats/GeneratorProducts/src/SimDataFormatsGeneratorProducts/lcgdict/SimDataFormatsGeneratorProducts_xr.cc -o tmp/el8_amd64_gcc13/src/SimDataFormats/GeneratorProducts/src/SimDataFormatsGeneratorProducts/scram_x86-64-v2/lcgdict/SimDataFormatsGeneratorProducts_xr.cc.o
  tmp/el8_amd64_gcc13/src/SimDataFormats/GeneratorProducts/src/SimDataFormatsGeneratorProducts/lcgdict/SimDataFormatsGeneratorProducts_xr.cc:234:62: warning: 'template<class> class std::auto_ptr' is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
   234 |    static TGenericClassInfo *GenerateInitInstanceLocal(const auto_ptr<gen::PdfInfo>*)
      |                                                              ^~~~~~~~

are gone. Testing of the actual behavior relies of the test of the pattern added in #48817, and in existing tests (including runTheMatrix) in PR and IB tests.

If this PR is a backport please specify the original PR and why you need to backport that PR. If this PR will be backported please specify to which release cycle the backport is meant for:

The first commit will be backported (at least down to 15_0_X).

@cmsbuild
Copy link
Contributor

cmsbuild commented Dec 10, 2025

cms-bot internal usage

@makortel makortel changed the title Auto ptr pdf info Evolve auto_ptr<gen::PdfInfo>-to-unique_ptr read rules to avoid std::auto_ptr Dec 10, 2025
@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-49593/47131

@cmsbuild
Copy link
Contributor

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

It involves the following packages:

  • SimDataFormats/GeneratorProducts (generators)

@cmsbuild, @lviliani, @mkirsano, @sensrcn, @theofil can you please review it and eventually sign? Thanks.
@apsallid, @bsunanda, @denizsun, @fabiocos, @martinamalberti, @missirol, @mmusich, @rovere, @salimcerci, @youyingli this is something you requested to watch as well.
@ftenchini, @mandrenguyen, @sextonkennedy you are the release manager for this.

cms-bot commands are listed here

@makortel
Copy link
Contributor Author

@cmsbuild, please test

@cmsbuild
Copy link
Contributor

+1

Size: This PR adds an extra 24KB to repository
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-284a32/49886/summary.html
COMMIT: fde5708
CMSSW: CMSSW_16_0_X_2025-12-10-1100/el8_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/49593/49886/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • You potentially added 4 lines to the logs
  • ROOTFileChecks: Some differences in event products or their sizes found
  • Reco comparison results: 5 differences found in the comparisons
  • Reco comparison had 4 failed jobs
  • DQMHistoTests: Total files compared: 53
  • DQMHistoTests: Total histograms compared: 4273241
  • DQMHistoTests: Total failures: 67
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 4273154
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 52 files compared)
  • Checked 227 log files, 198 edm output root files, 53 DQM output files
  • TriggerResults: no differences found

@makortel
Copy link
Contributor Author

@cmsbuild, please test workflow 2500.0201,2500.0202,2500.0203,2500.0204,2500.0401,2500.0402,2500.0403,
2500.0404

By quick look at least these workflows seem to read older-than-11_0_X AODSIM or MiniAODSIM files, and thus I'd expect to exercise the read rules.

@makortel
Copy link
Contributor Author

@cmsbuild, please test workflow 2500.0201,2500.0202,2500.0203,2500.0204,2500.0401,2500.0402,2500.0403,2500.0404

@cmsbuild
Copy link
Contributor

+1

Size: This PR adds an extra 24KB to repository
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-284a32/49893/summary.html
COMMIT: fde5708
CMSSW: CMSSW_16_0_X_2025-12-10-1100/el8_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/49593/49893/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • You potentially added 4 lines to the logs
  • ROOTFileChecks: Some differences in event products or their sizes found
  • Reco comparison results: 1 differences found in the comparisons
  • Reco comparison had 4 failed jobs
  • DQMHistoTests: Total files compared: 61
  • DQMHistoTests: Total histograms compared: 4285385
  • DQMHistoTests: Total failures: 78
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 4285287
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 60 files compared)
  • Checked 251 log files, 214 edm output root files, 61 DQM output files
  • TriggerResults: no differences found

@makortel
Copy link
Contributor Author

@cmsbuild, please test

@cmsbuild
Copy link
Contributor

Pull request #49593 was updated. @lviliani, @mkirsano, @sensrcn, @theofil can you please check and sign again.

@cmsbuild
Copy link
Contributor

+1

Size: This PR adds an extra 20KB to repository
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-284a32/49939/summary.html
COMMIT: 54bdaa5
CMSSW: CMSSW_16_0_X_2025-12-12-2300/el8_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/49593/49939/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

  • No significant changes to the logs found
  • ROOTFileChecks: Some differences in event products or their sizes found
  • Reco comparison results: 1 differences found in the comparisons
  • Reco comparison had 4 failed jobs
  • DQMHistoTests: Total files compared: 53
  • DQMHistoTests: Total histograms compared: 4273241
  • DQMHistoTests: Total failures: 64
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 4273157
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 52 files compared)
  • Checked 227 log files, 198 edm output root files, 53 DQM output files
  • TriggerResults: no differences found

@makortel
Copy link
Contributor Author

Comparison differences are related to #47071

@makortel
Copy link
Contributor Author

@cms-sw/generators-l2 Could you review and sign? It would be great to have this PR in 16_0_0_pre4.

@makortel
Copy link
Contributor Author

@cms-sw/generators-l2 Ping

@lviliani
Copy link
Contributor

+generators

@cmsbuild
Copy link
Contributor

This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @mandrenguyen, @sextonkennedy, @ftenchini (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

6 participants