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

Convert ObjectViewCleaner from legacy producer to stream producer #17715

Merged
merged 2 commits into from Mar 7, 2017

Conversation

cmsbuild
Copy link
Contributor

@cmsbuild cmsbuild commented Mar 2, 2017

Significant changes were implemented during the conversion:

  1. In the legacy version, a C-style array of Booleans was used in the determination of whether to consider a candidate "clean". The array was necessary because of a set of nested loops that were inverted with respect to the natural logic of the module. I removed the C-style array and placed the "candidates" loop on the outside, so that a simple if (shouldKeep(candidate)...) statement could be used to determine if a candidate is clean.

  2. In one of the inner loops, the Boolean variable was being set to false, indicating that the candidate should not be considered clean. However, instead of moving on to the next candidate, the loop continued until the entire container was traversed. Since the false flag could never be turned back to true, this approach was inefficient. I replaced that implementation with a function call where, if the candidate overlaps with a (e.g.) jet, instead of setting a flag, the function just returns false.

I would appreciate it if the maintainers can check the changes in logic. I do not believe I have introduced errors, but that statement is based on just testing runTheMatrix.py -l 9.0, which may be insufficient.
Automatically ported from CMSSW_9_0_X #17596 (original by @knoepfel).
Please wait for a new IB (12 to 24H) before requesting to test this PR.

@cmsbuild
Copy link
Contributor Author

cmsbuild commented Mar 2, 2017

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

It involves the following packages:

Validation/RecoTau

@cmsbuild, @dmitrijus, @vanbesien, @davidlange6 can you please review it and eventually sign? Thanks.
@Muzaffar, @davidlange6, @smuzaffar you are the release manager for this.

cms-bot commands are listed here #13028

@knoepfel
Copy link
Contributor

knoepfel commented Mar 6, 2017

Can this PR be retested and merged if the tests pass? Thanks.

@Dr15Jones

@Dr15Jones
Copy link
Contributor

please test

@cmsbuild
Copy link
Contributor Author

cmsbuild commented Mar 6, 2017

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/18160/console Started: 2017/03/06 15:06

@cmsbuild
Copy link
Contributor Author

cmsbuild commented Mar 6, 2017

@cmsbuild
Copy link
Contributor Author

cmsbuild commented Mar 6, 2017

Comparison job queued.

@cmsbuild
Copy link
Contributor Author

cmsbuild commented Mar 6, 2017

@dmitrijus
Copy link
Contributor

+1

@cmsbuild
Copy link
Contributor Author

cmsbuild commented Mar 7, 2017

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 requires discussion in the ORP meeting before it's merged. @Muzaffar, @davidlange6, @smuzaffar

@davidlange6
Copy link
Contributor

+1

@cmsbuild cmsbuild merged commit 2a7edb4 into cms-sw:master Mar 7, 2017
@knoepfel knoepfel deleted the convert-ObjectViewCleaner branch March 17, 2017 19:40
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