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
Refactor parts of the thinning code #30906
Conversation
…parate sort I will rely on that when checking the constraints for slimming, in the hope of being able to provide more helpful error messages.
The code-checks are being triggered in jenkins. |
A new Pull Request was created by @makortel (Matti Kortelainen) for master. It involves the following packages: DataFormats/Common @makortel, @smuzaffar, @cmsbuild, @Dr15Jones can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
@cmsbuild, please test |
@Dr15Jones @wddgit Please review |
The tests are being triggered in jenkins.
|
-1 Tested at: ed0cbd1 CMSSW: CMSSW_11_2_X_2020-07-24-1400 I found follow errors while testing this PR Failed tests: Build HeaderConsistency
I found compilation error when building: >> Building LCG reflex dict from header file src/DataFormats/Candidate/src/classes.h In file included from input_line_8:54: In file included from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_2_X_2020-07-24-1400/src/DataFormats/Candidate/interface/Candidate.h:12: In file included from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_2_X_2020-07-24-1400/src/DataFormats/Candidate/interface/const_iterator.h:9: In file included from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_2_X_2020-07-24-1400/src/DataFormats/Candidate/interface/CandidateFwd.h:10: /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_2_X_2020-07-24-1400/src/DataFormats/Common/interface/Ptr.h:193:32: error: no viable overloaded '=' std::tie(prod, iKey) = *optProd; ~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~ /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_11_2_X_2020-07-24-1400/src/DataFormats/Common/interface/Ptr.h:218:5: note: in instantiation of member function 'edm::Ptr::getData_' requested here getData_(); ^ |
Comparison not run due to Build errors (RelVals and Igprof tests were also skipped) |
@smuzaffar @mrodozov , the build log has at the end
Is this something that should be addressed? (there are also real build errors there) |
About
does
mean that (our) Further inspection shows that with I can work around the failure, but I'm wondering if we're "stuck" with clang 5 in rootcling. |
This makes the calling code easier to read, because of not having to understand when exactly the earlier output-argument is changed and when not.
The code-checks are being triggered in jenkins. |
Pull request #30906 was updated. @makortel, @smuzaffar, @cmsbuild, @Dr15Jones can you please check and sign again. |
@cmsbuild, 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 |
PR description:
This PR is a preparatory step to introduce (constrained) support for slimming objects when performing thinning of collections, as outlined in the discussion of #30544. More specifically, this PR
ThinningProducer::fillDescription()
toThinningProducer::fillPSetDescription()
to follow a naming convention established elsewhere, and callsConfigurationDescriptions::addWithDefaultLabel()
to also generate the cfi (by @bendavid)vThinnedAssociationBranches_
is always sorted.ThinnedAssociationBranches
getThinnedProduct()
andgetThinnedProducts()
inEventPrincipal
,DataGetterHelper
, andBareRootProductGetter
into single functionsgetThinnedProduct()
to returnWrapperBase const*
and the key to thinned collection viastd::optional
instead of the mixture of return value and output argument in the hope of making the calling code easier to understandPR validation:
Framework unit tests pass.