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

BuildRules: Fix for class version checks #9543

Merged
merged 4 commits into from
Dec 4, 2024

Conversation

smuzaffar
Copy link
Contributor

@smuzaffar smuzaffar commented Dec 3, 2024

See cms-sw/cmssw#46678 (comment)
edmCheckClassVersion was move from FWCore/Utilities to FWCore/Reflection

New build rules

  • uses the correct path for edmCheckClassVersion
  • fails if edmCheckClassVersion or edmCheckClassTransients are not found

@cmsbuild
Copy link
Contributor

cmsbuild commented Dec 3, 2024

A new Pull Request was created by @smuzaffar for branch IB/CMSSW_15_0_X/master.

@aandvalenzuela, @cmsbuild, @iarspider, @smuzaffar can you please review it and eventually sign? Thanks.
@antoniovilela, @mandrenguyen, @rappoccio, @sextonkennedy you are the release manager for this.
cms-bot commands are listed here

@cmsbuild
Copy link
Contributor

cmsbuild commented Dec 3, 2024

cms-bot internal usage

@smuzaffar
Copy link
Contributor Author

test parameters:

  • full_cmssw = true

@smuzaffar
Copy link
Contributor Author

please test

this should fail with error like

>> Checking EDM Class Version for src/SimDataFormats/CaloAnalysis/src/classes_def.xml in libSimDataFormatsCaloAnalysis.so
error: class 'CaloParticle' has a different checksum for ClassVersion 4. Increment ClassVersion to 5 and assign it to checksum 2074797506
Suggestion: You can run 'scram build updateclassversion' to generate src/SimDataFormats/CaloAnalysis/src/classes_def.xml.generated with updated ClassVersion
gmake: *** [config/SCRAM/GMake/Makefile.rules:1875: tmp/el8_amd64_gcc12/src/SimDataFormats/CaloAnalysis/src/SimDataFormatsCaloAnalysis/libSimDataFormatsCaloAnalysis.so] Error 1

@smuzaffar
Copy link
Contributor Author

type bugfix

@cmsbuild
Copy link
Contributor

cmsbuild commented Dec 3, 2024

-1

Failed Tests: Build
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-dd3e80/43207/summary.html
COMMIT: 266a0d0
CMSSW: CMSSW_15_0_X_2024-12-03-1100/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmsdist/9543/43207/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-dd3e80/43207/git-recent-commits.json
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-dd3e80/43207/git-merge-result

Build

I found compilation error when building:

>> Checking EDM Class Transients in libDataFormatsBeamSpotCudaAsync.so
@@@@ ----> OK  EDM Class Version 
>> Checking EDM Class Transients in libDataFormatsBeamSpotROCmAsync.so
@@@@ ----> OK  EDM Class Version 
>> Checking EDM Class Transients in libDataFormatsCLHEP.so
error: class 'CTPPSDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1554945820
error: class 'TotemRPDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1915602617
error: class 'CTPPSDiamondDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 3253161212
error: class 'CTPPSPixelDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1640295022
error: class 'TotemTimingDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 3647294361
@@@@ ----> OK  EDM Class Version 


@smuzaffar
Copy link
Contributor Author

please test with cms-sw/cmssw#46851

@cmsbuild
Copy link
Contributor

cmsbuild commented Dec 3, 2024

-1

Failed Tests: Build
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-dd3e80/43217/summary.html
COMMIT: 266a0d0
CMSSW: CMSSW_15_0_X_2024-12-03-1100/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmsdist/9543/43217/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-dd3e80/43217/git-recent-commits.json
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-dd3e80/43217/git-merge-result

Build

I found compilation error when building:

>> Checking EDM Class Transients in libDataFormatsBeamSpotROCmAsync.so
@@@@ ----> OK  EDM Class Version 
>> Checking EDM Class Transients in libDataFormatsCSCDigi.so
@@@@ ----> OK  EDM Class Version 
>> Checking EDM Class Transients in libDataFormatsCSCRecHit.so
error: class 'CTPPSDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1554945820
error: class 'TotemRPDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1915602617
error: class 'CTPPSDiamondDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 3253161212
error: class 'CTPPSPixelDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1640295022
error: class 'TotemTimingDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 3647294361
Suggestion: You can run 'scram build updateclassversion' to generate src/DataFormats/CTPPSDetId/src/classes_def.xml.generated with updated ClassVersion


@makortel
Copy link
Contributor

makortel commented Dec 3, 2024

Mmh, these errors look concerning. E.g. CTPPSDetId was last changed in 2022 (in cms-sw/cmssw#38886, and not in a way that should require a checksum update). I want to investigate a bit if e.g. cms-sw/cmssw#45423 introduced some bug. For the record below is the full list of checksum errors

error: class 'CTPPSDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1554945820
error: class 'TotemRPDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1915602617
error: class 'CTPPSDiamondDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 3253161212
error: class 'CTPPSPixelDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1640295022
error: class 'TotemTimingDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 3647294361
error: class 'CaloTowerDetId' has a different checksum for ClassVersion 11. Increment ClassVersion to 12 and assign it to checksum 3039490998
error: class 'EBDetId' has a different checksum for ClassVersion 12. Increment ClassVersion to 13 and assign it to checksum 55396465
error: class 'EEDetId' has a different checksum for ClassVersion 12. Increment ClassVersion to 13 and assign it to checksum 55927906
error: class 'ESDetId' has a different checksum for ClassVersion 12. Increment ClassVersion to 13 and assign it to checksum 58407964
error: class 'EcalTrigTowerDetId' has a different checksum for ClassVersion 12. Increment ClassVersion to 13 and assign it to checksum 1597424810
error: class 'EcalScDetId' has a different checksum for ClassVersion 12. Increment ClassVersion to 13 and assign it to checksum 800615613
error: class 'EcalPnDiodeDetId' has a different checksum for ClassVersion 12. Increment ClassVersion to 13 and assign it to checksum 1385551474
error: class 'reco::ElectronSeed' has a different checksum for ClassVersion 13. Increment ClassVersion to 14 and assign it to checksum 438154954
error: class 'L2MuonTrajectorySeed' has a different checksum for ClassVersion 12. Increment ClassVersion to 13 and assign it to checksum 4137731643
error: class 'L3MuonTrajectorySeed' has a different checksum for ClassVersion 12. Increment ClassVersion to 13 and assign it to checksum 934859799
error: class 'reco::ConvBremSeed' has a different checksum for ClassVersion 12. Increment ClassVersion to 13 and assign it to checksum 1070104702

@smuzaffar
Copy link
Contributor Author

locally checking out all these packages and getting https://github.com/cms-sw/cmssw/pull/46851/files changes did not show any errors. as cms-sw/cmssw#46851 is merged now, so I will trigger an IB and then rerun the tests

@makortel
Copy link
Contributor

makortel commented Dec 3, 2024

Using the same IB as the tests (CMSSW_15_0_X_2024-12-03-1100), I checked DataFormats/CTPPSDetId/src/classes_def.xml (containing CTPPSDetId, CTPPSDiamondDetId, CTPPSPixelDetId, TotemRPDetId, TotemTimingDetId) and DataFormats/MuonSeed/src/classes_def.xml (containing L2MuonTrajectorySeed, L3MuonTrajectorySeed) with edmDumpClassVersion and edmCheckClassVersion, and both scripts report the same checksum as are written in the classes_def.xml files.

@smuzaffar
Copy link
Contributor Author

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Dec 3, 2024

-1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-dd3e80/43223/summary.html
COMMIT: d09cc34
CMSSW: CMSSW_15_0_X_2024-12-03-1100/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmsdist/9543/43223/install.sh to create a dev area with all the needed externals and cmssw changes.

@smuzaffar
Copy link
Contributor Author

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Dec 3, 2024

Pull request #9543 was updated.

@cmsbuild
Copy link
Contributor

cmsbuild commented Dec 3, 2024

-1

Failed Tests: Build
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-dd3e80/43226/summary.html
COMMIT: 8f4886c
CMSSW: CMSSW_15_0_X_2024-12-03-1100/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmsdist/9543/43226/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-dd3e80/43226/git-recent-commits.json
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-dd3e80/43226/git-merge-result

Build

I found compilation error when building:

>> Checking EDM Class Transients in libDataFormatsBeamSpotROCmAsync.so
@@@@ ----> OK  EDM Class Version 
>> Checking EDM Class Transients in libDataFormatsCLHEP.so
@@@@ ----> OK  EDM Class Version 
>> Checking EDM Class Transients in libDataFormatsCSCDigi.so
error: class 'CTPPSDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1554945820
error: class 'TotemRPDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1915602617
error: class 'CTPPSDiamondDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 3253161212
error: class 'CTPPSPixelDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1640295022
error: class 'TotemTimingDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 3647294361
@@@@ ----> OK  EDM Class Version 


@smuzaffar
Copy link
Contributor Author

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Dec 4, 2024

-1

Failed Tests: Build
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-dd3e80/43233/summary.html
COMMIT: 8f4886c
CMSSW: CMSSW_15_0_X_2024-12-03-1900/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmsdist/9543/43233/install.sh to create a dev area with all the needed externals and cmssw changes.

Build

I found compilation error when building:

>> Checking EDM Class Transients in libDataFormatsBeamSpotCudaAsync.so
@@@@ ----> OK  EDM Class Version 
>> Checking EDM Class Transients in libDataFormatsCLHEP.so
@@@@ ----> OK  EDM Class Version 
>> Checking EDM Class Transients in libDataFormatsCSCDigi.so
error: class 'CTPPSDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1554945820
error: class 'TotemRPDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1915602617
error: class 'CTPPSDiamondDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 3253161212
error: class 'CTPPSPixelDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 1640295022
error: class 'TotemTimingDetId' has a different checksum for ClassVersion 3. Increment ClassVersion to 4 and assign it to checksum 3647294361
Suggestion: You can run 'scram build updateclassversion' to generate src/DataFormats/CTPPSDetId/src/classes_def.xml.generated with updated ClassVersion


@cmsbuild
Copy link
Contributor

cmsbuild commented Dec 4, 2024

Pull request #9543 was updated.

@smuzaffar smuzaffar changed the base branch from IB/CMSSW_15_0_X/master to IB/CMSSW_15_0_X/devel December 4, 2024 10:01
@smuzaffar
Copy link
Contributor Author

lets get this in DEVEL IBs

@smuzaffar smuzaffar merged commit 6fd3f2e into IB/CMSSW_15_0_X/devel Dec 4, 2024
2 of 3 checks passed
@smuzaffar smuzaffar deleted the class-version-check-fix branch December 5, 2024 08:46
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.

3 participants