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

Make SwitchProducer work with ConditionalTask #37563

Merged
merged 6 commits into from
Apr 20, 2022

Conversation

makortel
Copy link
Contributor

PR description:

Further testing of ConditionalTask (#37305) for HLT revealed that it and SwitchProducer mechanism didn't work together at all (as discussed in #36938 (comment) onwards). This PR makes the SwitchProducer to work with ConditionalTask with the following changes

  • SwitchProducer case module objects get now their module labels set (previously they were not).
  • In python, if SwitchProducer is on a ConditionalTask or in a Path, the case modules get treated as if they were in an anonymous ConditionalTask associated with the ConditionalTask/Path
  • SwitchProducer with an EDAlias as a chosen case required adding those EDAliases into the ProductRegistry so that the callWhenNewProductsRegistered() callbacks in SwitchProducer get called, that lead to data product consumption being properly registered, that is needed for the module dependence checks in StreamSchedule::tryToPlaceConditionalModules()
    • This step required moving processEDAliases() function out from Schedule.cc
  • The tests I added for SwitchProducer with EDAlias also revealed that the EDAlias treatment was generally broken for ConditionalTask.

PR validation:

Framework unit tests run. The HLT test in #36938 (comment) runs as well.

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-37563/29295

  • This PR adds an extra 120KB to repository

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @makortel (Matti Kortelainen) for master.

It involves the following packages:

  • FWCore/Framework (core)
  • FWCore/Integration (core)
  • FWCore/ParameterSet (core)

@cmsbuild, @smuzaffar, @Dr15Jones, @makortel can you please review it and eventually sign? Thanks.
@wddgit this is something you requested to watch as well.
@perrotta, @dpiparo, @qliphy you are the release manager for this.

cms-bot commands are listed here

@makortel
Copy link
Contributor Author

enable gpu

Comment on lines +122 to +125
if (not aliasModulesToProcess.empty() and
aliasModulesToProcess.find(moduleLabel) == aliasModulesToProcess.end()) {
continue;
}
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I added the aliasModulesToProcess argument and these lines when extracting the processEDAliases() function into a separate file.

@@ -1298,7 +1298,7 @@ def _insertPaths(self, processPSet, nodeVisitor):
l.sort()
decoratedList.extend(l)
decoratedList.append("@")
iPath.insertInto(processPSet, triggername, decoratedList)
iPath.insertInto(processPSet, triggername, decoratedList[:])
Copy link
Contributor Author

Choose a reason for hiding this comment

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

decoratedList is copied because otherwise the same list object would be shared among the Paths, and the contents would be that of the last Path.

@makortel
Copy link
Contributor Author

@cmsbuild, please test with #37562

@cmsbuild
Copy link
Contributor

-1

Failed Tests: UnitTests RelVals
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-606e7a/23935/summary.html
COMMIT: a964d75
CMSSW: CMSSW_12_4_X_2022-04-14-2300/slc7_amd64_gcc10
Additional Tests: GPU
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmssw/37563/23935/install.sh to create a dev area with all the needed externals and cmssw changes.

Unit Tests

I found errors in the following unit tests:

---> test testTauEmbeddingProducers had ERRORS

RelVals

  • 101.0101.0_SingleElectronE120EHCAL+SingleElectronE120EHCAL/step1_SingleElectronE120EHCAL+SingleElectronE120EHCAL.log

GPU Comparison Summary

Summary:

  • No significant changes to the logs found
  • Reco comparison results: 0 differences found in the comparisons
  • Reco comparison had 3 failed jobs
  • DQMHistoTests: Total files compared: 4
  • DQMHistoTests: Total histograms compared: 19874
  • DQMHistoTests: Total failures: 954
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 18920
  • DQMHistoTests: Total skipped: 0
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 3 files compared)
  • Checked 12 log files, 9 edm output root files, 4 DQM output files
  • TriggerResults: no differences found

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-37563/29335

  • This PR adds an extra 56KB to repository

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-37563/29402

  • This PR adds an extra 120KB to repository

@cmsbuild
Copy link
Contributor

Pull request #37563 was updated. @cmsbuild, @smuzaffar, @Dr15Jones, @makortel can you please check and sign again.

@makortel
Copy link
Contributor Author

@cmsbuild, please test

Addressed Chris' comments.

@cmsbuild
Copy link
Contributor

-1

Failed Tests: UnitTests
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-606e7a/24035/summary.html
COMMIT: ecdb11a
CMSSW: CMSSW_12_4_X_2022-04-19-2300/slc7_amd64_gcc10
Additional Tests: GPU
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/37563/24035/install.sh to create a dev area with all the needed externals and cmssw changes.

Unit Tests

I found errors in the following unit tests:

---> test TestDQMOnlineClient-l1tstage2_dqm_sourceclient had ERRORS

GPU Comparison Summary

Summary:

  • No significant changes to the logs found
  • Reco comparison results: 0 differences found in the comparisons
  • Reco comparison had 3 failed jobs
  • DQMHistoTests: Total files compared: 4
  • DQMHistoTests: Total histograms compared: 19874
  • DQMHistoTests: Total failures: 997
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 18877
  • DQMHistoTests: Total skipped: 0
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 3 files compared)
  • Checked 12 log files, 9 edm output root files, 4 DQM output files
  • TriggerResults: no differences found

Comparison Summary

Summary:

  • No significant changes to the logs found
  • Reco comparison results: 12 differences found in the comparisons
  • DQMHistoTests: Total files compared: 48
  • DQMHistoTests: Total histograms compared: 3589937
  • DQMHistoTests: Total failures: 18
  • DQMHistoTests: Total nulls: 10
  • DQMHistoTests: Total successes: 3589887
  • DQMHistoTests: Total skipped: 22
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 1.9979999999999998 KiB( 47 files compared)
  • DQMHistoSizes: changed ( 1000.0,... ): 0.031 KiB MessageLogger/Errors
  • DQMHistoSizes: changed ( 1000.0,... ): 0.031 KiB MessageLogger/Warnings
  • DQMHistoSizes: changed ( 11634.0,... ): 0.027 KiB MessageLogger/Errors
  • DQMHistoSizes: changed ( 11634.0,... ): 0.027 KiB MessageLogger/Warnings
  • DQMHistoSizes: changed ( 23234.0,... ): 0.023 KiB MessageLogger/Errors
  • DQMHistoSizes: changed ( 23234.0,... ): 0.023 KiB MessageLogger/Warnings
  • DQMHistoSizes: changed ( 4.22,... ): 0.012 KiB MessageLogger/Errors
  • DQMHistoSizes: changed ( 4.22,... ): 0.012 KiB MessageLogger/Warnings
  • Checked 200 log files, 45 edm output root files, 48 DQM output files
  • TriggerResults: no differences found

@makortel
Copy link
Contributor Author

+1

The unit test fails already in the IBs

@cmsbuild
Copy link
Contributor

This pull request is fully signed and it will be integrated in one of the next master IBs (but tests are reportedly failing). This pull request will now be reviewed by the release team before it's merged. @perrotta, @dpiparo, @qliphy (and backports should be raised in the release meeting by the corresponding L2)

@qliphy
Copy link
Contributor

qliphy commented Apr 20, 2022

merge

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.

5 participants