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

use rawDataRepacker in presence of hi_run run class in a bunch of DQM online clients #45681

Merged

Conversation

mmusich
Copy link
Contributor

@mmusich mmusich commented Aug 9, 2024

PR description:

Title says it all, for HIon run (i.e hi_run run class), use the FEDRawDataCollection_rawDataRepacker_*_* input collection instead of FEDRawDataCollection_rawDataCollector_*_* as a second step to avoid keeping it around in the stream HIDQM after the initial effort at #43120.
This PR targets to continue the work in that direction (see also discussion at CMSHLT-3306).

PR validation:

I generated some input streamer files using the recipe at https://github.com/cms-data/DQM-Integration/blob/main/README.md and then run over files generated in such a way with:

cmsRun DQM/Integration/python/clients/[*]_dqm_sourceclient-live_cfg.py runInputDir=. runNumber=362321 runkey=hi_run scanOnce=True datafnPosition=4

All clients touched in this PR run correctly.

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:

Not a backport, will be backported to 14.0.X.

@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 9, 2024

cms-bot internal usage

@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 9, 2024

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-45681/41236

@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 9, 2024

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

It involves the following packages:

  • DQM/Integration (dqm)

@antoniovagnerini, @cmsbuild, @nothingface0, @rvenditti, @syuvivida, @tjavaid can you please review it and eventually sign? Thanks.
@batinkov, @francescobrivio, @threus 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

@mmusich
Copy link
Contributor Author

mmusich commented Aug 9, 2024

type bug-fix

@mmusich
Copy link
Contributor Author

mmusich commented Aug 9, 2024

@cmsbuild, please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 9, 2024

+1

Size: This PR adds an extra 28KB to repository
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-da351e/40851/summary.html
COMMIT: 2723b5b
CMSSW: CMSSW_14_1_X_2024-08-09-1100/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/45681/40851/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
  • Reco comparison results: 9 differences found in the comparisons
  • DQMHistoTests: Total files compared: 45
  • DQMHistoTests: Total histograms compared: 3422822
  • DQMHistoTests: Total failures: 6
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 3422796
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 44 files compared)
  • Checked 196 log files, 165 edm output root files, 45 DQM output files
  • TriggerResults: no differences found

@mmusich
Copy link
Contributor Author

mmusich commented Aug 14, 2024

@cms-sw/dqm-l2 please review.

@mmusich
Copy link
Contributor Author

mmusich commented Aug 19, 2024

For the record, this PR was tested generating streamer files using the following script:

#!/bin/bash -ex

# cmsrel CMSSW_14_0_14_MULTIARCHS
# cd CMSSW_14_0_14_MULTIARCHS/src
# git cms-addpkg DQM/Integration
# mkdir DQM/Integration/data
# cmsenv
# scram b

# run 362321, LSs 231-232
INPUTFILE=root://eoscms.cern.ch//eos/cms/store/user/cmsbuild//store/hidata/HIRun2022A/HITestRaw0/RAW/v1/000/362/321/00000/f467ee64-fc64-47a6-9d8a-7ca73ebca2bd.root

HLTMENU=/dev/CMSSW_14_0_0/HIon/V173

rm -rf run362321*

# run on 100 events of LS 231, with 100 events per input file
convertToRaw -f 100 -l 100 -r 362321:231 -s rawDataRepacker -o . -- "${INPUTFILE}"

tmpfile=$(mktemp)
hltConfigFromDB --configName "${HLTMENU}" > "${tmpfile}"
sed -i 's|process = cms.Process( "HLT" )|from Configuration.Eras.Era_Run3_cff import Run3\nprocess = cms.Process( "HLT", Run3 )|g' "${tmpfile}"
cat <<@EOF >> "${tmpfile}"
process.load('run362321_cff')
process.hltOnlineBeamSpotESProducer.timeThreshold = int(1e6)

# override the GlobalTag, connection string and pfnPrefix
from Configuration.AlCa.GlobalTag import GlobalTag as customiseGlobalTag
process.GlobalTag = customiseGlobalTag(
    process.GlobalTag,
    globaltag = "140X_dataRun3_HLT_v3",
    conditions = "L1Menu_CollisionsHeavyIons2023_v1_1_5_xml,L1TUtmTriggerMenuRcd,frontier://FrontierProd/CMS_CONDITIONS,,9999-12-31 23:59:59.000"
)

# run the Full L1T emulator, then repack the data into a new RAW collection, to be used by the HLT
from HLTrigger.Configuration.CustomConfigs import L1REPACK
process = L1REPACK(process, "uGT")

# to run without any HLT prescales
del process.PrescaleService

command_to_remove = 'keep FEDRawDataCollection_rawDataCollector_*_*'
if command_to_remove in process.hltOutputHIDQM.outputCommands:
   process.hltOutputHIDQM.outputCommands.remove(command_to_remove)

# # to run using the same HLT prescales as used online in LS 231
# process.PrescaleService.forceDefault = True
@EOF
edmConfigDump "${tmpfile}" > hlt.py

#cmsRun hlt.py &> hlt.log

# remove input files to save space
#rm -f run362321/run362321_ls0*_index*.*

cat run362321/run362321_ls0000_streamHIDQM_pid918575.ini run362321/run362321_ls0231_streamHIDQM_pid918575.dat > DQM/Integration/data/run362321/run362321_ls0231_streamHIDQM_pid918575.dat
cp -pr run362321/run362321_ls0231_streamHIDQM_pid918575.jsn DQM/Integration/data/run362321

and then run the various DQM online clients with e.g.

cmsRun DQM/Integration/python/clients/mutracking_dqm_sourceclient-live_cfg.py runInputDir=./DQM/Integration/data/ runNumber=362321 runkey=hi_run scanOnce=True datafnPosition=4 

@tjavaid
Copy link

tjavaid commented Aug 24, 2024

+1

@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, @rappoccio, @antoniovilela (and backports should be raised in the release meeting by the corresponding L2)

@mandrenguyen
Copy link
Contributor

+1

@cmsbuild cmsbuild merged commit 76cf93f into cms-sw:master Aug 25, 2024
11 checks passed
@mmusich mmusich deleted the mm_dev_rawDataRepackerLabel_inHIOnlineDQM branch August 25, 2024 11:16
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.

4 participants