-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
Fix esConsumes() for an EDModule that consumes EDProduct with @currentProcess #32217
Conversation
-code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-32217/19961
Code check has found code style and quality issues which could be resolved by applying following patch(s)
|
26a0f35
to
3158047
Compare
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-32217/19962
|
A new Pull Request was created by @makortel (Matti Kortelainen) for master. It involves the following packages: FWCore/Framework @makortel, @smuzaffar, @cmsbuild, @Dr15Jones can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
@cmsbuild, please test |
@Dr15Jones please review |
The tests are being triggered in jenkins.
|
}; | ||
|
||
void ESTestAnalyzerL::analyze(edm::Event const& ev, edm::EventSetup const& es) { | ||
auto const& dataJ = es.getData(esToken_); |
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.
The idea is to test on existence not on content?
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.
Right, the de-reference of the ESHandle
is the important part. I change the following printout to Info or Debug since it is not really important (mostly a leftover from copy-paste from ESTestAnalyzerJ
).
+1 |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
Pull request #32217 was updated. @makortel, @smuzaffar, @cmsbuild, @Dr15Jones can you please check and sign again. |
please test |
The tests are being triggered in jenkins.
|
+1 |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
+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 |
changing to esConsumes after fix in #32217
PR description:
ES tokens use an "empty string optimization", i.e. re-using the
\0
as the first element ofEDConsumerBase::m_tokenLabels
for empty strings. However, when an EDProduct is consumed with@currentProcess
process name,EDConsumerBase::convertCurrentProcessAlias()
overwritesm_tokenLabels
to have something else as the first element, leading toNoProxyException
being thrown when anESHandle
obtained withESGetToken
is dereferenced.This PR fixed
convertCurrentProcessAlias()
to leave\0
as the first element ofm_tokenLabels
.This problem was observed in #31962.
PR validation:
Framework unit tests run. In addition, with #31962
11634.0
step2 runs (that fails without this PR).