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

access per event per product parameter sets #580

Merged
merged 1 commit into from Aug 21, 2013

Conversation

wmtan
Copy link
Contributor

@wmtan wmtan commented Aug 21, 2013

This pull request is an improvement to the handling of provenance in the framework for thread safety and removing unnecessary redundancy. The changes outside the framework are the minimal adaptation to the framework change 3) listed below.

The framework changes consist of:

  1. The vector of process configurations is no longer persisted, because the information is redundant. The information is contained in the vector of process histories, which is still persisted.
  2. The branch description for each product no longer contains a transient map from the process configuration ID to the parameter set ID, and no longer contains a transient map from the process configuration ID to the name of the module that produced the product. This information was redundant, as this information can be obtained through the process history ID.
  3. In implementing 2, the function Provenance::psetID, which returned the parameter set ID of the module that produced the product was replaced by a free function that takes the provenance as an argument and returns the parameter set directly (not the parameter set ID). The function Provenance::moduleName() was also replaced by a free function. These new functions must internally retrieve a parameter set. This means they can no longer be member functions of Provenance, because this would cause a cyclic package dependency, The new free functions are in the package FWCore/Common Several packages outside the framework were minimally adapted to this change.
  4. The edmProvDump command and one framework unit test needed adaptions because of 3).
  5. edmProvDump was updated to use C++11 range for loops.
  6. For physical design reasons, the Provenance class, and several classes containing it, (none persistable), will, in the future (not in this pull request) be moved from DataFormats/Provenance to FWCore/Common. This is not done now, but to prepare for this all framework includes of Provenance.h now use the new Provenance.h header in FWCore/Common.
  7. Because of the changes 2) and 3) above, the "parameterSetsMustMatch" parameter for merging files is obsolete. The default was "permissive". With this pull request, this parameter will effectively always be permissive,as strict mode is obsolete. This has zero practical effect because this parameter was never used explicitly anywhere in CMSSW, so permissive mode was always in effect. Note: The "branchesMustMatch" parameter is unaffected by this pull request.

@ghost ghost assigned nclopezo Aug 21, 2013
@ktf
Copy link
Contributor

ktf commented Aug 21, 2013

@Dr15Jones @thspeer @Martin-Grunewald @perrotta @civanch @mdhildreth @demattia can you review and sign?
@nclopezo can you run the tests?

@thspeer
Copy link
Contributor

thspeer commented Aug 21, 2013

Working @thspeer

@demattia
Copy link
Contributor

+1

@cmsbuild
Copy link
Contributor

The following categories have been signed by @demattia: Calibration and Alignment

@cms-git-alca

@cmsbuild
Copy link
Contributor

The following categories have been signed by gruenew (a.k.a. @Martin-Grunewald on GitHub): HLT

@cms-git-hlt, @cms-git-fastsim

@nclopezo
Copy link
Contributor

Hi,

I took these changes on top of CMSSW_7_0_X_2013-08-21-0200, I ran the unit tests and RelVals, all tests passed.

You can see the logs here:

https://cmssdt.cern.ch/jenkins/job/Pull-Request-Integration/ARCHITECTURE=slc5_amd64_gcc472/196/consoleFull

@cmsbuild
Copy link
Contributor

The following categories have been signed by speer (a.k.a. @thspeer on GitHub): Reconstruction

@cms-git-reconstruction

@cmsbuild
Copy link
Contributor

The following categories have been signed by chrjones (a.k.a. @Dr15Jones on GitHub): Core

@cms-git-visualization, @cms-git-core, @cms-git-geometry

@ktf
Copy link
Contributor

ktf commented Aug 21, 2013

Bypassing sim signature since this is really a technical fix.

ktf added a commit that referenced this pull request Aug 21, 2013
access per event per product parameter sets
@ktf ktf merged commit 739c2e6 into cms-sw:CMSSW_7_0_X Aug 21, 2013
@cmsbuild
Copy link
Contributor

The following categories have been signed by @civanch: Full Simulation

@cms-git-simulation

@wmtan wmtan deleted the AccessPerEventPerProductParameterSets branch August 21, 2013 15:30
jbsauvan pushed a commit to jbsauvan/cmssw that referenced this pull request Jan 26, 2016
arizzi added a commit to arizzi/cmssw that referenced this pull request Jan 13, 2017
add testPDFWeightsProducer from testPDFWeightsTest
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