Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Moving to newer boost version #47412

Open
smuzaffar opened this issue Feb 20, 2025 · 14 comments
Open

Moving to newer boost version #47412

smuzaffar opened this issue Feb 20, 2025 · 14 comments

Comments

@smuzaffar
Copy link
Contributor

@cms-sw/alca-l2 @cms-sw/db-l2 , currently we are using a 4 years old boost 1.80.0 (in CMSSW_13_0 and newer release cycles). A newer, though still 2 years old, version 1.87.0 is available. Is it good time to try to update boost for 15.1.X ?

If no objections then we can open cmsdist PR to test it for 15.1.X

@cmsbuild
Copy link
Contributor

cmsbuild commented Feb 20, 2025

cms-bot internal usage

@cmsbuild
Copy link
Contributor

A new Issue was created by @smuzaffar.

@Dr15Jones, @antoniovilela, @makortel, @mandrenguyen, @rappoccio, @sextonkennedy, @smuzaffar can you please review it and eventually sign/assign? Thanks.

cms-bot commands are listed here

@makortel
Copy link
Contributor

assign core, alca, db

@cmsbuild
Copy link
Contributor

New categories assigned: core,alca,db

@atpathak,@consuegs,@Dr15Jones,@francescobrivio,@makortel,@perrotta,@smuzaffar you have been requested to review this Pull request/Issue and eventually sign? Thanks

@perrotta
Copy link
Contributor

If no objections then we can open cmsdist PR to test it for 15.1.X

Let have it tested in 15_1_X

@mmusich
Copy link
Contributor

mmusich commented Feb 21, 2025

Let have it tested in 15_1_X

do we know already (or have means of testing upfront) if payloads written in 15.1.X will thus become unreadable in earlier releases?

@francescobrivio
Copy link
Contributor

Let have it tested in 15_1_X

do we know already (or have means of testing upfront) if payloads written in 15.1.X will thus become unreadable in earlier releases?

From a quick look at boostorg/serialization@boost-1.80.0...boost-1.87.0 I do see several differences, so probably back compatibility isn't preserved as it was in the 1.78 -> 1.80 transition...

@mmusich
Copy link
Contributor

mmusich commented Feb 21, 2025

I do see several differences, so probably back compatibility isn't preserved as it was in the 1.78 -> 1.80 transition...

if that is verified, it would be at least common courtesy to give a heads up to the people developing conditions that their new developments in 15.1.X are not going to be transparently applicable in the data-taking release of 2025

@perrotta
Copy link
Contributor

I do see several differences, so probably back compatibility isn't preserved as it was in the 1.78 -> 1.80 transition...

if that is verified, it would be at least common courtesy to give a heads up to the people developing conditions that their new developments in 15.1.X are not going to be transparently applicable in the data-taking release of 2025

Sure.
If the cmsdist PR is opened, as suggested here, then tests can be done with it before merging

@smuzaffar
Copy link
Contributor Author

I will open a cmsdist and may be integrate it in to DEVEL Ibs so that you can run most tests

@smuzaffar
Copy link
Contributor Author

Boost 1.87.0 is now available in 15.1.X DEVEL IBs. @cms-sw/alca-l2 @cms-sw/db-l2 @cms-sw/daq-l2 can you please run you tests to verify if this looks good

@smuzaffar
Copy link
Contributor Author

smuzaffar commented Feb 25, 2025

By the way the condTestRegression unit test passed with the following summary

SELF: CMSSW_15_1_DEVEL_X_2025-02-24-2300 [el8_amd64_gcc12]

                                                Write | Read: CMSSW_15_1_DEVEL_X_2025-02-24-2300 [el8_amd64_gcc12] |
                     CMSSW_10_4_0 [slc7_amd64_gcc700] |                                                       True |
                     CMSSW_11_1_0 [slc7_amd64_gcc820] |                                                       True |
                     CMSSW_11_3_0 [slc7_amd64_gcc900] |                                                       True |
                      CMSSW_12_3_0 [slc7_amd64_gcc10] |                                                       True |
 CMSSW_15_1_DEVEL_X_2025-02-24-2300 [el8_amd64_gcc12] |                                                       True |
                      CMSSW_7_6_6 [slc6_amd64_gcc493] |                                                       True |
                      CMSSW_8_1_0 [slc6_amd64_gcc530] |                                                       True |
                      CMSSW_8_1_0 [slc6_amd64_gcc600] |                                                       True |
                      CMSSW_9_0_1 [slc6_amd64_gcc630] |                                                       True |

@mmusich
Copy link
Contributor

mmusich commented Feb 25, 2025

By the way the condTestRegression unit test passed with the following summary

I guess this test means very little.
A more realistic test such as

#!/bin/bash -ex

START=$PWD
scram p CMSSW CMSSW_15_1_DEVEL_X_2025-02-24-2300
cd CMSSW_15_1_DEVEL_X_2025-02-24-2300/src/
eval `scram runtime -sh`
git cms-addpkg CondTools/SiPixel
cd CondTools/SiPixel/test/
cmsRun SiPixelVCalDB_cfg.py
cp -pr *.db $START/
cd $START
scram p CMSSW CMSSW_15_1_X_2025-02-24-2300
cd CMSSW_15_1_X_2025-02-24-2300/src/
eval `scram runtime -sh`
git cms-addpkg CondTools/SiPixel
cd CondTools/SiPixel/test/
cp -pr $START/*.db .
cmsRun SiPixelVCalReader_cfg.py

results in:

----- Begin Fatal Exception 25-Feb-2025 21:25:20 CET-----------------------
An exception of category 'ConditionDatabase' occurred while
   [0] Processing  Event run: 313000 lumi: 1 event: 1 stream: 0
   [1] Running path 'p'
   [2] Prefetching for module SiPixelVCalReader/'VCalReader'
   [3] Calling method for EventSetup module PoolDBESSource/'VCalReaderSource'
   [4] Retrieving data product SiPixelVCal '' in record SiPixelVCalRcd
Exception Message:
Payload of type SiPixelVCal with id 56355a54c2a43333358a77c297d458308ed50602 could not be loaded. An exception of category 'ConditionDatabase' occurred.
Exception Message:
De-serialization failed: the current boost version (1_80) is unable to read the payload. Data might have been serialized with an incompatible version. Payload serialization info:  {
"CMSSW_version": "CMSSW_15_1_DEVEL_X_2025-02-24-2300",
"architecture": "el8_amd64_gcc12",
"technology": "boost/serialization",
"tech_version": "1_87"
 }
 from default_deserialize 
 from Session::fetchPayload 
----- End Fatal Exception -------------------------------------------------

confirming the suspicions at #47412 (comment)

@smorovic
Copy link
Contributor

Boost 1.87.0 is now available in 15.1.X DEVEL IBs. @cms-sw/alca-l2 @cms-sw/db-l2 @cms-sw/daq-l2 can you please run you tests to verify if this looks good

Retested with CMSSW_15_1_DEVEL_X_2025-02-25-2300 and everything ok for DAQ.

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

No branches or pull requests

7 participants