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

[muon-bugfix] disabled trigger matching in ZmmSkim #23710

Closed
wants to merge 1 commit into from

Conversation

drkovalskyi
Copy link
Contributor

This bug fix is for the issue reported in #23704. The fix disables the trigger matching in ZmmSkim, which is not properly configured for reHLT. No trigger matching is needed for the skim, so it's better to disable it rather than pollute the customization file to overrider the HLT process name for reHLT workflows.

…become necessary, one needs to update the cmsDriver customization that overrides HLT process, so that it all works properly for reHLT
@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

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

It involves the following packages:

DPGAnalysis/Skims

@GurpreetSinghChahal, @cmsbuild, @prebello, @fabozzi can you please review it and eventually sign? Thanks.
@davidlange6, @slava77, @fabiocos you are the release manager for this.

cms-bot commands are listed here

@slava77
Copy link
Contributor

slava77 commented Jun 28, 2018

I see patMuons in many more places in the release
https://github.com/cms-sw/cmssw/search?p=2&q=muonProducer_cfi&unscoped_q=muonProducer_cfi
it would be good to make fixes to all places where the trigger info is not appropriately available

@slava77
Copy link
Contributor

slava77 commented Jun 28, 2018

@cmsbuild please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Jun 28, 2018

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/28935/console Started: 2018/06/28 14:16

@fabiocos
Copy link
Contributor

@drkovalskyi @slava77 this will work, I tried it myself this morning. But is this really a fix? The idea is that the module works if there is some appropriate information available, and in that workflow this is not true, so in a sense it is a fix. But I agree with Slava that this should be adequately protected

@drkovalskyi
Copy link
Contributor Author

reHLT for patMuons is fixed in 2fdbe18
Only clones are affected since no one sets properly HLT process for them. So do you propose to disable trigger matching in the clones that are not used in any of the tests? Isn't it extreme conner case that no one really cares about?

@slava77
Copy link
Contributor

slava77 commented Jun 28, 2018 via email

@drkovalskyi
Copy link
Contributor Author

@fabiocos this can only work if all producers use the same HLT process name. By default it's set to HLT and we override it in camDriver command where it's set consistent right now for patTrigger, slimmedPatTrigger and patMuons. Any clones of these producers will use a wrong HLT process for reHLT. Do we really won't to pollute Configuration/Applications/python/ConfigBuilder.py with all the clones regardless if they need HLT or not? For ZmmSkim I know that we don't need it.

@drkovalskyi
Copy link
Contributor Author

I just want to avoid 10 more PRs which will fix crashes in other places
one by one when they are discovered incrementally

Me too, but we need to converge on a specific solution. I can find all clones and disable trigger matching for them. Putting them all in the ConfigBuilder is overkill in my opinion.

@slava77
Copy link
Contributor

slava77 commented Jun 28, 2018 via email

@slava77
Copy link
Contributor

slava77 commented Jun 28, 2018

@drkovalskyi
Copy link
Contributor Author

It's possible not to pollute the ConfigBuilder substantially by looping
over all producers with type PATMuonProducer and replace the parameter
there consistently for all.

Where? Only ConfigBuilder knows for sure what the user wants, i.e. whether they want HLT or reHLT process. To make a loop there would be a super ugly thing, i.e. the code stored as text to insert code do the change. This won't fix all possible conner cases.
I can disable matching by default and enable it only for patMuons. This probably is the safest solution. Do you agree?

@slava77
Copy link
Contributor

slava77 commented Jun 28, 2018 via email

@davidlange6
Copy link
Contributor

davidlange6 commented Jun 28, 2018 via email

@drkovalskyi
Copy link
Contributor Author

drkovalskyi commented Jun 28, 2018

I'm saying I'll set matching OFF by default and re-enable it only for patMuons. In this case no other changes will be needed on top what we already have. Clones will be safe.

customizeHLTforCMSSW is not a solution unless it's used for patTrigger, slimmedPatTrigger and patMuons to guarantee consistency and it's not the case at the moment. The failure is caused by inconsistency caused by partial change of the HLT process in ConfigBuilder.

@drkovalskyi
Copy link
Contributor Author

note that there is a function in ConfigBuilder that is meant to replace the HLT process name appropriately. (so the pollution is already there). It could be used in this case - eg

It's already used for patMuons: 2fdbe18
The failure is in clones (for example here: https://github.com/drkovalskyi/cmssw/blob/07cefc59230cc4ec25a5ac05eca30412507e81ac/DPGAnalysis/Skims/python/ZMuSkim_cff.py#L85)
Apparently clone starts with the module default, instead of configuration set with the ConfigBuilder. Am I using it incorrectly somehow?

@fabiocos
Copy link
Contributor

as we are already too late for pre6, I think that we need to converge in a safe way by this afternoon. So I suggest:

  1. switch off by default the matching in pre6, and in a following PR propose the final clean soution

  2. just take the PR out of the release for the time being (ugly if we may avoid it in a harmless way)

Then one can test with more calm the best solution

@drkovalskyi
Copy link
Contributor Author

I think disabling it by default and re-enabling only for patMuons is safe and final. By if you want to simply disable it it's certainly safe. So what do we do?

@fabiocos
Copy link
Contributor

let's disable it globally in muonProducer. Then after pre6 you may check with calm for the most robust solution to switch it on properly where needed

@fabiocos
Copy link
Contributor

in this way the code will stay available in the release, but it will not harm for the time being

@drkovalskyi
Copy link
Contributor Author

Ok.

@cmsbuild
Copy link
Contributor

-1

Tested at: 07cefc5

You can see the results of the tests here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-23710/28935/summary.html

I found follow errors while testing this PR

Failed tests: RelVals

  • RelVals:

The relvals timed out after 2 hours.

@cmsbuild
Copy link
Contributor

Comparison not run due to runTheMatrix errors (RelVals and Igprof tests were also skipped)

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.

None yet

5 participants