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

drop type spec in CommonTools #32464

Merged
merged 2 commits into from Dec 16, 2020
Merged

Conversation

jeongeun
Copy link
Contributor

PR description:

Update the safer syntax for existing parameter :

  • drop type specifications where the original parameter exists.
  • move all parameter inside the clone

Instead of modifying parameters with full type specs, which can be interpreted as an insertion of a new parameter, it is a safer way to protect from parameter name mistakes and will also help in possible parameter migrations.
(The previous PR for RecoHI is PR#32031, PR#32386, PR#32396)

In this PR, a total of 11 files changed.

CommonTools/ParticleFlow : 7 files
CommonTools/PileupAlgos : 1 file
CommonTools/RecoAlgos : 1 file
CommonTools/RecoUtils : 2 files

PR validation:

Event Content comparison check was also done and there is no change with these updates.
Tested in CMSSW_11_2_X, the basic test all passed in the CMSSW PR instructions.

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-32464/20371

  • This PR adds an extra 24KB to repository

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @jeongeun (JeongEun Lee) for master.

It involves the following packages:

CommonTools/ParticleFlow
CommonTools/PileupAlgos
CommonTools/RecoAlgos
CommonTools/RecoUtils

@perrotta, @jpata, @cmsbuild, @santocch, @slava77 can you please review it and eventually sign? Thanks.
@rappoccio, @jdolen, @makortel, @abbiendi, @jhgoh, @ahinzmann, @gkasieczka, @hatakeyamak, @clelange, @cbernet this is something you requested to watch as well.
@silviodonato, @dpiparo, @qliphy you are the release manager for this.

cms-bot commands are listed here

@perrotta
Copy link
Contributor

please test

pfTausSelectionDiscriminator = hpsSelectionDiscriminator.clone(
PFTauProducer = "pfTausCombiner"
)
pfTausProducerSansRefs = hpsPFTauProducerSansRefs.clone(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a duplicate of the explicit configuration three lines below (a duplicate that was already present in the original config).
The two configurations look different, the explicit one being probably the correct one: which is the one picked up by python?
@mbluj @swozniewski please check and suggest which one of the two instances of pfTausProducerSansRefs to remove (or suggest otherwise, in case I misunderstood the usage of this duplication)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In our understanding python takes most recent definition of an object, so here it is the explicit one.
The explicit definition indeed differs a bit from the first one which is a clone of Tau POG default (modulo different input). We guess that it was an intended choice to define it differently, so we suggest to keep only the explicit one. However, maybe owners of this configuration should bless the choice if it is possible to identify them (*)?

Technical suggestion: it could be nicer to have a clone definition with settings as the present in the explicit one? It can either use default Tau POG configuration to clone or one from default cfi (RecoTauTag.RecoTau.recoTauCleaner_cfi) It will look more or less like this:

pfTausProducerSansRefs = hpsPFTauProducerSansRefs.clone(
    src = "pfTausCombiner",
    outputSelection = "",
    verbosity = 0,
    cleaners = [
        cleaners.unitCharge,
        cms.PSet(
            name = cms.string("leadStripPtLt2_5"),
            plugin = cms.string("RecoTauStringCleanerPlugin"),
            tolerance = cleaners.tolerance_default,
            selection = cms.string("signalPiZeroCandidates().size() = 0 | signalPiZeroCandidates()[0].pt > 2.5"),
            selectionPassFunction = cms.string("0"),
            selectionFailValue = cms.double(1e3)
        ),
        cms.PSet(
            name = cms.string("HPS_Select"),
            plugin = cms.string("RecoTauDiscriminantCleanerPlugin"),
            tolerance = cleaners.tolerance_default,
            src = cms.InputTag("pfTausSelectionDiscriminator"),
        ),
        cleaners.combinedIsolation
    ]
)

(*) Is this config a part of PF2PAT? So, it is owned by PFlow or XPOG?

@perrotta
Copy link
Contributor

please test

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-32464/20386

  • This PR adds an extra 24KB to repository

@cmsbuild
Copy link
Contributor

Pull request #32464 was updated. @perrotta, @jpata, @santocch, @slava77 can you please check and sign again.

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-49b471/11624/summary.html
CMSSW: CMSSW_11_3_X_2020-12-14-1100/slc7_amd64_gcc900

Comparison Summary

Summary:

  • No significant changes to the logs found
  • Reco comparison results: 7 differences found in the comparisons
  • DQMHistoTests: Total files compared: 36
  • DQMHistoTests: Total histograms compared: 2747284
  • DQMHistoTests: Total failures: 12
  • DQMHistoTests: Total nulls: 1
  • DQMHistoTests: Total successes: 2747249
  • DQMHistoTests: Total skipped: 22
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.004 KiB( 35 files compared)
  • DQMHistoSizes: changed ( 312.0 ): 0.004 KiB MessageLogger/Warnings
  • Checked 153 log files, 37 edm output root files, 36 DQM output files

@perrotta
Copy link
Contributor

+1

  • Dropped type specifications from cloned/modifed modules in pythons configs, as stated in the PR description
  • Also a duplicate definition of pfTausProducerSansRefs previously in CommonTools/ParticleFlow/python/pfTaus_cff.py had been removed (thank you @mbluj for suggesting the fix)
  • Jenkins tests pass and show no differences in reco outputs wrt the baseline

@silviodonato
Copy link
Contributor

merge

@cmsbuild cmsbuild merged commit 827ebb7 into cms-sw:master Dec 16, 2020
@santocch
Copy link

+1

@cmsbuild
Copy link
Contributor

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 be automatically merged.

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

6 participants