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

Issue exception for ROOT file forward incompatiblity problem [10_6] #43902

Merged
merged 3 commits into from
Feb 13, 2024

Conversation

Dr15Jones
Copy link
Contributor

PR description:

  • Throw an exception if the ParameterSet parsing finds an unknown entry type. This problem is occurring presently in older releases if they try to read files which contain the new string encoding for ParameterSets.
  • Throw exception if TFile::Open returns nullptr.

PR validation:

This code was tested in CMSSW_10_6_30 and even with the backport seg faulted when reading a file generated in CMSSW_13_3. The problem was traced down to ROOT silently ignoring a failure while unzipping StreamerInfo. Added additional check on nullptr from TFile::Open gives a graceful exit to the job from an exception.

If this PR is a backport please specify the original PR and why you need to backport that PR.

Part of large scale backport of #43894

fixes cms-sw/framework-team#804

This assert was happening when an old release tried to read a file
written by a newer release.
An unzip error in the StreamerInfo appears to generate a nullptr
without issuing an ROOT Error message.
@Dr15Jones
Copy link
Contributor Author

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Feb 7, 2024

A new Pull Request was created by @Dr15Jones (Chris Jones) for CMSSW_10_6_X.

It involves the following packages:

  • FWCore/ParameterSet (core)
  • IOPool/Input (core)

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

cms-bot commands are listed here

@cmsbuild
Copy link
Contributor

cmsbuild commented Feb 7, 2024

cms-bot internal usage

}
if (file_->IsZombie()) {
file_ = nullptr; // propagate_const<T> has no reset() function
return;
throw edm::Exception(errors::FileOpenError) << "TFile::Open returned zombie.";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we do these changes in master too (irrespective of this issue at hand)?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we do these changes in master too (irrespective of this issue at hand)?

@makortel
What is the conclusion to this question? Thanks.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I put the changes in master as well.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The master PR is #43920

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks

@cmsbuild
Copy link
Contributor

cmsbuild commented Feb 7, 2024

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-fb8f96/37289/summary.html
COMMIT: 3e06fac
CMSSW: CMSSW_10_6_X_2024-02-04-0000/slc7_amd64_gcc700
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/43902/37289/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

@makortel
Copy link
Contributor

+core

@cmsbuild
Copy link
Contributor

This pull request is fully signed and it will be integrated in one of the next CMSSW_10_6_X IBs (tests are also fine) and once validation in the development release cycle CMSSW_14_1_X is complete. This pull request will now be reviewed by the release team before it's merged. @sextonkennedy, @antoniovilela, @rappoccio (and backports should be raised in the release meeting by the corresponding L2)

@antoniovilela
Copy link
Contributor

+1

@cmsbuild cmsbuild merged commit 41aa212 into cms-sw:CMSSW_10_6_X Feb 13, 2024
10 checks passed
@Dr15Jones Dr15Jones deleted the forwardCompat_10_6 branch February 21, 2024 19:03
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.

None yet

4 participants