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

Prepare some Geometry ESProducers for concurrent IOVs #24612

Merged
merged 2 commits into from Sep 25, 2018

Conversation

wddgit
Copy link
Contributor

@wddgit wddgit commented Sep 20, 2018

The following types of changes are included:
- changing return type of produce to unique_ptr
- removing unnecessary "dependsOn" callbacks
- some callback content moved to produce
- 4 callbacks were simply empty (did nothing)
- some objects do not need to be cached create on stack
- removing unneeded data members, includes, declarations
- fix potential assert failure if produce called more than once
- fix potential double delete if produce called more than once
- 2 memory leaks
- some general cleanup deleting unnecessary things

The following types of changes are included:
    - changing return type of produce to unique_ptr
    - removing unnecessary "dependsOn" callbacks
    - some callback content moved to produce
    - 4 callbacks were simply empty (did nothing)
    - some objects do not need to be cached create on stack
    - removing unneeded data members, includes, declarations
    - fix potential assert failure if produce called more than once
    - fix potential double delete if produce called more than once
    - 2 memory leaks
    - some general cleanup deleting unnecessary things
@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @wddgit (W. David Dagenhart) for master.

It involves the following packages:

Geometry/EcalMapping
Geometry/HcalCommonData
Geometry/HcalEventSetup
Geometry/HcalTowerAlgo
Geometry/MuonNumbering

@civanch, @Dr15Jones, @cvuosalo, @ianna, @mdhildreth, @cmsbuild can you please review it and eventually sign? Thanks.
@ptcox, @argiro this is something you requested to watch as well.
@davidlange6, @slava77, @fabiocos you are the release manager for this.

cms-bot commands are listed here

@wddgit
Copy link
Contributor Author

wddgit commented Sep 20, 2018

please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 20, 2018

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/30538/console Started: 2018/09/20 22:31

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

Comparison job queued.

@cmsbuild
Copy link
Contributor

Comparison is ready
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-24612/30538/summary.html

Comparison Summary:

  • No significant changes to the logs found
  • Reco comparison results: 4 differences found in the comparisons
  • DQMHistoTests: Total files compared: 32
  • DQMHistoTests: Total histograms compared: 3146746
  • DQMHistoTests: Total failures: 1
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 3146548
  • DQMHistoTests: Total skipped: 197
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 31 files compared)
  • Checked 133 log files, 14 edm output root files, 32 DQM output files

class HcalDDDSimConstantsESModule : public edm::ESProducer {

public:
HcalDDDSimConstantsESModule(const edm::ParameterSet&);
~HcalDDDSimConstantsESModule() override;

typedef std::shared_ptr<HcalDDDSimConstants> ReturnType;
typedef std::unique_ptr<HcalDDDSimConstants> ReturnType;
Copy link
Contributor

Choose a reason for hiding this comment

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

using ReturnType = std::unique_ptr<HcalDDDSimConstants>;


// class EcalMappingRcd;


// #include "FWCore/Framework/interface/EventSetupRecordIntervalFinder.h"
Copy link
Contributor

Choose a reason for hiding this comment

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

please, remove commented out includes

// #include "FWCore/Framework/interface/EventSetupRecordIntervalFinder.h"

#include "FWCore/Framework/interface/ESHandle.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
// #include "Geometry/Records/interface/IdealGeometryRecord.h"
Copy link
Contributor

Choose a reason for hiding this comment

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

please, remove commented out includes

private:
void FillFromDatabase(const std::vector<EcalMappingElement>& ee,
EcalElectronicsMapping& theMap);


const EcalMappingElectronics* Mapping_ ;
// void setIntervalFor(const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue&, edm::ValidityInterval & );
Copy link
Contributor

Choose a reason for hiding this comment

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

please, remove commented out code

@@ -27,18 +27,15 @@ class HcalDDDGeometryEP : public edm::ESProducer {
HcalDDDGeometryEP(const edm::ParameterSet&);
~HcalDDDGeometryEP() override;

typedef std::shared_ptr<CaloSubdetectorGeometry> ReturnType;
typedef std::unique_ptr<CaloSubdetectorGeometry> ReturnType;
Copy link
Contributor

Choose a reason for hiding this comment

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

using ReturnType = std::unique_ptr<CaloSubdetectorGeometry>;

@@ -19,13 +19,11 @@ class HcalHardcodeGeometryEP : public edm::ESProducer {
HcalHardcodeGeometryEP(const edm::ParameterSet&);
~HcalHardcodeGeometryEP() override;

typedef std::shared_ptr<CaloSubdetectorGeometry> ReturnType;
typedef std::unique_ptr<CaloSubdetectorGeometry> ReturnType;
Copy link
Contributor

Choose a reason for hiding this comment

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

using ReturnType = std::unique_ptr<CaloSubdetectorGeometry>;


ReturnType produceIdeal(const HcalRecNumberingRecord&);
ReturnType produceAligned(const HcalGeometryRecord& );

void idealRecordCallBack(const HcalRecNumberingRecord&) {}

private:
edm::ParameterSet ps0;
Copy link
Contributor

Choose a reason for hiding this comment

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

edm::ParameterSet ps0_;

@@ -28,18 +28,15 @@ class HcalTopologyIdealEP : public edm::ESProducer {
HcalTopologyIdealEP(const edm::ParameterSet&);
~HcalTopologyIdealEP() override;

typedef std::shared_ptr<HcalTopology> ReturnType;
typedef std::unique_ptr<HcalTopology> ReturnType;
Copy link
Contributor

Choose a reason for hiding this comment

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

using ReturnType = std::unique_ptr<HcalTopology>;

@@ -39,19 +35,11 @@ class MuonNumberingInitialization : public edm::ESProducer
typedef std::unique_ptr<MuonDDDConstants> ReturnType;
Copy link
Contributor

Choose a reason for hiding this comment

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

using ReturnType = std::unique_ptr<MuonDDDConstants>;

  - deleting commented code and useless comments
  - deleting trailing whitespace
  - converting from typedef to using statements
  - removing an unused copy of a ParameterSet
  - removing unneeded blank lines

Initially motivated by Ianna's comments. I fixed all
those and did more. None of this should change any behavior
@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

Pull request #24612 was updated. @civanch, @Dr15Jones, @cvuosalo, @ianna, @mdhildreth, @cmsbuild can you please check and sign again.

@wddgit
Copy link
Contributor Author

wddgit commented Sep 21, 2018

please test
I pushed a new fix that cleans up all the problems Ianna suggested I fix. Thanks for the suggestions. When I got going I also fixed some other similar things. So the second commit includes:

  - deleting commented code and useless comments
  - deleting trailing whitespace
  - converting from typedef to using statements
  - removing an unused copy of a ParameterSet
  - removing unneeded blank lines

Unless I made a typographical blunder, none of this should effect behavior in any way, although it does make the code easier to read.

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 21, 2018

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/30563/console Started: 2018/09/21 21:06

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

Comparison job queued.

@cmsbuild
Copy link
Contributor

Comparison is ready
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-24612/30563/summary.html

Comparison Summary:

  • No significant changes to the logs found
  • Reco comparison results: 0 differences found in the comparisons
  • DQMHistoTests: Total files compared: 32
  • DQMHistoTests: Total histograms compared: 3146746
  • DQMHistoTests: Total failures: 1
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 3146548
  • DQMHistoTests: Total skipped: 197
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: 0.0 KiB( 31 files compared)
  • Checked 133 log files, 14 edm output root files, 32 DQM output files

@ianna
Copy link
Contributor

ianna commented Sep 25, 2018

+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 now be reviewed by the release team before it's merged. @davidlange6, @slava77, @smuzaffar, @fabiocos (and backports should be raised in the release meeting by the corresponding L2)

@fabiocos
Copy link
Contributor

+1

@cmsbuild cmsbuild merged commit 19d4bed into cms-sw:master Sep 25, 2018
@wddgit wddgit deleted the geometryConcurrentIOVs branch January 14, 2019 15:33
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

4 participants