-
Notifications
You must be signed in to change notification settings - Fork 4.4k
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
Migrate most of MixingModule and PreMixingModule to EventSetup consumes #31697
Conversation
The code-checks are being triggered in jenkins. |
-code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-31697/18856
Code check has found code style and quality issues which could be resolved by applying following patch(s)
|
The code-checks are being triggered in jenkins. |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-31697/18858
|
A new Pull Request was created by @makortel (Matti Kortelainen) for master. It involves the following packages: CalibTracker/SiPixelESProducers @perrotta, @civanch, @yuanchao, @slava77, @christopheralanwest, @mdhildreth, @cmsbuild, @tocheng, @tlampen, @jpata, @pohsun, @kpedro88 can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
@cmsbuild, please test |
The tests are being triggered in jenkins.
|
+1 |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
+1 Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-2430a0/14351/summary.html CMS Clang-Tidy warnings: There are Clang-Tidy warnings. See https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-2430a0/14351/llvm-analysis/cmsclangtidy.txt for details. Comparison SummarySummary:
|
+1
|
+1
|
+Upgrade |
+1 |
kind reminder @cms-sw/db-l2 |
@ggovi Could you please review and sign? Thanks. |
+1 |
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. @silviodonato, @dpiparo, @qliphy (and backports should be raised in the release meeting by the corresponding L2) |
+1 |
PR description:
This PR is part of #31061. In addition of plain migration to EventSetup consumes I did some refactoring related to getting the EventSetup products (like moving the
get()
calls from beginRun/beginLumi to Event, and passing around const references to ES products instead ofedm::ESHandle
). It has two caveats (which make the "most of") that need to be discussed/agreed:I noticed the
MixingModule
(andBMixingModule
base class, so affects all mixing modules) have the capability of updating the mixing parameters from the EventSetup, see e.g.cmssw/SimGeneral/MixingModule/plugins/MixingModule.cc
Lines 290 to 301 in c51856d
cmssw/Mixing/Base/src/PileUp.cc
Lines 235 to 240 in c51856d
For the EventSetup consumes that alone is fine, but the pixel digitizer uses the bunchspacing to decide which of the two ES products it gets
cmssw/SimTracker/SiPixelDigitizer/plugins/SiPixelDigitizerAlgorithm.cc
Lines 587 to 595 in c51856d
In principle it could be possible for the product-to-be-got to change in the IOV boundaries of
MixingRcd
(if this mode of operation would be enabled), on the other hand updates after the first event are, in fact, already made impossible bycmssw/SimTracker/SiPixelDigitizer/plugins/SiPixelDigitizer.cc
Lines 260 to 264 in c51856d
Nevertheless, it could be that the mixing parameters would be read from an EventSetup object instead of configuration. If this mode of operation needs to be supported, we need to figure out some way to get only (right) one of the
SiPixelDynamicInefficiency
products instead of both as in this PR. Possibilities include an ESProducer mayConsume-type feature, or abstracting the choice between the products into a new ESProducer. Anyway, the big question is if MixingModule infrastructure has to continue to support changing mixing parameters based onMixingModuleConfig
EventSetup product?Answer below: this mode should continue to be supported. To be done in a subsequent PR.
I did not migrate
DataMixingModule
(because it is not being used). Likely it becomes even more broken with this PR. I hope this is acceptable.Answer below: Breaking
DataMixingModule
even more is acceptable.PR validation:
Limited matrix runs.