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
Using new Run3ScoutingHitPattern class for hitPattern in Run-3 scouting #35685
Conversation
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-35685/25976
|
A new Pull Request was created by @mmasciov (Mario Masciovecchio) for master. It involves the following packages:
@smuzaffar, @Dr15Jones, @makortel, @cmsbuild, @missirol, @Martin-Grunewald, @slava77, @jpata can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
Adding @davidlange6 |
nhp.fillRun3ScoutingHitPatternWithHitPattern(onfile.trk_hitPattern_); | ||
trk_run3ScoutingHitPattern_ = nhp; | ||
]]> | ||
</ioread> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this would mean making the dependence on DataFormats/TrackReco
permanent for DataFormats/Scouting
. Given the RAW-like constraints/guarantees for DataFormats/Scouting
I'd prefer to avoid that if possible.
(I understood from private discussion with @mmasciov that it is not necessary to be able to read EDM ROOT files with the version 3 of Run3ScoutingMuon
; the streamer file format anyway does not support schema evolution)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After checking with @dsperka and the scouting group, it was concluded that indeed it is not necessary to be able to read ROOT files with version 3 of Run3ScoutingMuon
.
Will therefore update the PR.
@mmasciov |
@Martin-Grunewald Yes. Please, see also: |
I'm trying to understand where this is going related to DataFormats/Scouting/interface/Run3ScoutingHitPattern.h and Run3ScoutingHitPattern.cc, which are essentially full copies of the DataFormats/TrackReco/interface/HitPattern.h From the preceding discussion(s) in the scouting meeting I thought that the idea here was to POD-ify the data format of the current version of DataFormats/TrackReco/interface/HitPattern.h for storage. Beyond making a class that would allow to stream this version, I thought that there will just be a conversion module/method that can fill the standard DataFormats/TrackReco/interface/HitPattern.h so that all existing algorithms already using the HitPattern can be reused. But perhaps I misinterpreted and the goal for the use cases is to have the full copy. What will happen if we make some updates in DataFormats/TrackReco/interface/HitPattern.h interface (as we did already e.g. #35205 and #35288 ) without changing the persisted data layout? Wouldn't this need to be propagated to Run3ScoutingHitPattern? BTW, is the current copy in Run3ScoutingHitPattern done after #35288 was merged (Sep 16)? |
Yes, this is what I'm currently working on to update this PR: given that we do not need to read the existing scouting samples that made use of HitPattern, I will just do as you describe above.
Answer to this is yes, BTW. |
@cmsbuild please test |
-1 Failed Tests: Build HeaderConsistency ClangBuild BuildI found compilation error when building: >> Compiling /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_2_X_2021-11-01-1100/src/DataFormats/PatCandidates/src/Jet.cc >> Compiling /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_2_X_2021-11-01-1100/src/DataFormats/PatCandidates/src/JetCorrFactors.cc >> Compiling /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_2_X_2021-11-01-1100/src/DataFormats/PatCandidates/src/MHT.cc >> Compiling /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_2_X_2021-11-01-1100/src/DataFormats/PatCandidates/src/MET.cc >> Compiling /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_2_X_2021-11-01-1100/src/DataFormats/PatCandidates/src/Muon.cc /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_2_X_2021-11-01-1100/src/DataFormats/PatCandidates/src/Conversion.cc:6:1: error: reference to 'Conversion' is ambiguous 6 | Conversion::Conversion(int index) : vtxProb_(0.0), lxy_(0.0), nHitsMax_(0) { index_ = index; } | ^~~~~~~~~~ In file included from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_2_X_2021-11-01-1100/src/DataFormats/PatCandidates/src/Conversion.cc:1: /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_12_2_X_2021-11-01-1100/src/DataFormats/PatCandidates/interface/Conversion.h:21:9: note: candidates are: 'class pat::Conversion' 21 | class Conversion { Clang BuildI found compilation warning while trying to compile with clang. Command used:
See details on the summary page. |
That is a strange compilation error for this PR. |
|
||
class TrackerTopology; | ||
|
||
using namespace reco; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is not allowed in header files global scope
I think that this is from |
Kind ping. I'm wondering if this PR is still targeting |
-1 just taking this off the list of currently active PRs for reco |
What is the plan with this PR? |
@mmasciov should comment. We need to "freeze" the data format for the Run3 MC production soon. |
We need to freeze the scouting data format absolute latest by April 15th for the Run 3 MC production. |
Thanks @dsperka. Just curious, could you clarify what is driving the schedule? I'm just wondering because it doesn't seem to correspond to the last open pre-release of either 12_3_X (March 8) or 12_4_X (May 10-15). |
The TSG set a deadline for the V2 HLT menu 1 month before the 12_4_X deadline |
PR description:
This PR is meant to address issue #32219.
It is introducing a new Run3ScoutingHitPattern class in DataFormats/Scouting, to be used for Run-3 scouting (in Run3ScoutingMuon). The class is a "frozen" copy of version 13 (present version) of reco::HitPattern.
A function is defined in order to fill Run3ScoutingHitPattern from reco::HitPattern as well as to define an IO rule for backwards compatibility (with version 3 of Run3ScoutingMuon).
PR validation:
Rerunning the HLT step ("TEST"), and reading hit pattern for "TEST" and for original "HLT" instance, same objects are retrieved:
FYI @dsperka @jsalfeld