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

Configuration parameter copy and modify functions extended #13224

Merged
merged 1 commit into from Feb 9, 2016

Conversation

Dr15Jones
Copy link
Contributor

The clone and Modifier.toModify methods have been extended to allow further modifications to the parameters after they have been copied.

  1. Specify None as the value of the parameter will cause the parameter to be removed from the configuration
  2. Parameters within embedded PSets can now be modified using a python dict as the value. The keys of the dictionary are the parameter
    names and the values are the new values to use.
    The clone and Modifier.toModify both call the same helper function to do the work of modifying the copied parameters.

The `clone` and `Modifier.toModify` methods have been extended to allow further modifications to the parameters after they have been copied.
1) Specify `None` as the value of the parameter will cause the parameter to be removed from the configuration
2) Parameters within embedded PSets can now be modified using a python dict as the value. The keys of the dictionary are the parameter
    names and the values are the new values to use.
The `clone` and `Modifier.toModify` both call the same helper function to do the work of modifying the copied parameters.
@cmsbuild
Copy link
Contributor

cmsbuild commented Feb 8, 2016

A new Pull Request was created by @Dr15Jones (Chris Jones) for CMSSW_8_0_X.

It involves the following packages:

FWCore/ParameterSet

@cmsbuild, @smuzaffar, @Dr15Jones, @davidlange6 can you please review it and eventually sign? Thanks.
@Martin-Grunewald, @wddgit, @wmtan this is something you requested to watch as well.
@slava77, @Degano, @smuzaffar you are the release manager for this.

cms-bot commands are list here #13028

@Dr15Jones
Copy link
Contributor Author

please test

@Dr15Jones
Copy link
Contributor Author

+1

@cmsbuild
Copy link
Contributor

cmsbuild commented Feb 8, 2016

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/11075/console

@cmsbuild
Copy link
Contributor

cmsbuild commented Feb 8, 2016

This pull request is fully signed and it will be integrated in one of the next CMSSW_8_0_X IBs after it passes the integration tests. This pull request requires discussion in the ORP meeting before it's merged. @slava77, @davidlange6, @Degano, @smuzaffar

@cmsbuild
Copy link
Contributor

cmsbuild commented Feb 8, 2016

-1
Tested at: f574c22
I found an error when building:

In file included from /afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/external/boost/1.57.0-kpegke/include/boost/smart_ptr/detail/spinlock_pool.hpp:25:
In file included from /afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/external/boost/1.57.0-kpegke/include/boost/smart_ptr/detail/spinlock.hpp:50:
In file included from /afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/external/boost/1.57.0-kpegke/include/boost/smart_ptr/detail/spinlock_sync.hpp:18:
In file included from /afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/external/boost/1.57.0-kpegke/include/boost/smart_ptr/detail/yield_k.hpp:28:
In file included from /afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/external/boost/1.57.0-kpegke/include/boost/predef.h:16:
/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/external/boost/1.57.0-kpegke/include/boost/predef/other.h:11:10: fatal error: cannot open file '/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/external/boost/1.57.0-kpegke/include/boost/predef/other/endian.h': Bad address
#include 
         ^
Error: rootcling: compilation failure (tmp/slc6_amd64_gcc493/src/L1Trigger/L1TGlobal/src/L1TriggerL1TGlobal/a/L1TriggerL1TGlobal_xrb0c432e16c_dictUmbrella.h)
gmake: **\* [tmp/slc6_amd64_gcc493/src/L1Trigger/L1TGlobal/src/L1TriggerL1TGlobal/a/L1TriggerL1TGlobal_xr.cc] Error 2
>> Compiling  /tmp/cmsbuild/workspace/ib-any-integration/CMSSW_8_0_X_2016-02-07-2300/src/L1Trigger/L1TGlobal/src/CaloTemplate.cc 


you can see the results of the tests here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-13224/11075/summary.html

@Dr15Jones
Copy link
Contributor Author

please test

davidlange6 added a commit that referenced this pull request Feb 9, 2016
Configuration parameter copy and modify functions extended
@davidlange6 davidlange6 merged commit 0dc13c7 into cms-sw:CMSSW_8_0_X Feb 9, 2016
@Martin-Grunewald
Copy link
Contributor

@Dr15Jones

I am afraid either this PR or #13220 broke things, eg, cmsDriver:

Creating DigiL1Raw GRun_MC
DIGI,L1,DIGI2RAW,ENDJOB
entry /store/relval/CMSSW_7_6_2/RelValProdTTbar_13/GEN-SIM/76X_mcRun2_asymptotic_v12-v1/00000/88639327-209D-E511-BC0D-0025905A6136.root
 ################################################################### 
 # WARNING: this module is deprecated.                             # 
 # Please use CondCore.CondDB.CondDB_cfi.py                        # 
 ################################################################### 
Step: DIGI Spec: 
Step: L1 Spec: 
Step: DIGI2RAW Spec: 
Traceback (most recent call last):
  File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/bin/slc6_amd64_gcc493/cmsDriver.py", line 55, in <module>
    run()
  File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/bin/slc6_amd64_gcc493/cmsDriver.py", line 27, in run
    configBuilder.prepare()
  File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/python/Configuration/Applications/ConfigBuilder.py", line 2058, in prepare
    self.addStandardSequences()
  File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/python/Configuration/Applications/ConfigBuilder.py", line 739, in addStandardSequences
    getattr(self,"prepare_"+stepName)(sequence = getattr(self,stepName+"DefaultSeq"))
  File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/python/Configuration/Applications/ConfigBuilder.py", line 1482, in prepare_DIGI2RAW
    self.loadDefaultOrSpecifiedCFF(sequence,self.DIGI2RAWDefaultCFF)
  File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/python/Configuration/Applications/ConfigBuilder.py", line 1189, in loadDefaultOrSpecifiedCFF
    l=self.loadAndRemember(defaultCFF,unsch)
  File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/python/Configuration/Applications/ConfigBuilder.py", line 323, in loadAndRemember
    self.process.load(includeFile)
  File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/python/FWCore/ParameterSet/Config.py", line 511, in load
    module = __import__(moduleName)
  File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/python/Configuration/StandardSequences/DigiToRaw_cff.py", line 19, in <module>
    from EventFilter.CSCRawToDigi.cscPacker_cfi import *
  File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/python/EventFilter/CSCRawToDigi/cscPacker_cfi.py", line 26, in <module>
    eras.run2_common.toModify( cscpacker, useFormatVersion = cms.uint32(2013) )
  File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/python/FWCore/ParameterSet/Config.py", line 1183, in toModify
    temp(obj)
  File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/python/FWCore/ParameterSet/Config.py", line 1112, in __call__
    params[k] = getattr(obj,k)
AttributeError: 'EDProducer' object has no attribute 'useFormatVersion'

Could you please have a look?

@smuzaffar
Copy link
Contributor

@Dr15Jones , I think both PR might have broke the IB. At least reverting this PR I am able to run wf 5.1,5.2,5.3 which were failing due to

  File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/python/FWCore/ParameterSet/Mixins.py", line 634, in _modifyParametersFromDict
    params[key].setValue(value)
AttributeError: '_SequenceCollection' object has no attribute 'setValue'

so we shoudl revert this PR. I will check #13220 too

@smuzaffar
Copy link
Contributor

@Dr15Jones , it is this PR which broke the IB. reverting it I can also run 140.2 which was failing due to

File "/afs/cern.ch/cms/sw/ReleaseCandidates/vol1/slc6_amd64_gcc493/cms/cmssw-patch/CMSSW_8_0_X_2016-02-09-2300/python/FWCore/ParameterSet/Config.py", line 1112, in __call__
    params[k] = getattr(obj,k)
AttributeError: 'EDProducer' object has no attribute 'useFormatVersion'

@smuzaffar
Copy link
Contributor

@davidlange6 , we might not get a fix for this before 11h00 IB, so I propose to revert this PR

@smuzaffar
Copy link
Contributor

I confirm that #13216 does fix the step1 errors if 5.1,5.2 and all other. 140.2 and other step2 errors are still there

@davidlange6
Copy link
Contributor

ok, could you revert it?

On Feb 10, 2016, at 10:23 AM, Malik Shahzad Muzaffar notifications@github.com wrote:

I confirm that #13216 does fix the step1 errors if 5.1,5.2 and all other. 140.2 and other step2 errors are still there


Reply to this email directly or view it on GitHub.

@davidlange6
Copy link
Contributor

err- sorry, I misunderstand
I can merge 13216 if that is what you mean?

On Feb 10, 2016, at 10:26 AM, David Lange David.Lange@cern.ch wrote:

ok, could you revert it?

On Feb 10, 2016, at 10:23 AM, Malik Shahzad Muzaffar notifications@github.com wrote:

I confirm that #13216 does fix the step1 errors if 5.1,5.2 and all other. 140.2 and other step2 errors are still there


Reply to this email directly or view it on GitHub.

@smuzaffar
Copy link
Contributor

No, even after merging #13216 step2 of many workflows (140.2 and others) will be broken.

@cmsbuild
Copy link
Contributor

-1

Tested at: f574c22
I found errors in the following unit tests:

---> test runtestSimCalorimetryHGCalSimProducers had ERRORS
---> test runtestRecoLocalCaloHGCalRecProducers had ERRORS
---> test testRecoMETMETProducers had ERRORS

you can see the results of the tests here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-13224/11111/summary.html

@Dr15Jones
Copy link
Contributor Author

I know what the problem is with

'EDProducer' object has no attribute 'useFormatVersion'

And can fix it. Matti's other change to use toReplaceWith should solve the other problems.

I'll get a fix for the above this morning (although I'm at home sick so might not be quite as fast as usual).

@Dr15Jones
Copy link
Contributor Author

#13244 includes and fixes this one

@Dr15Jones Dr15Jones deleted the extendedPSetModification branch February 15, 2016 16:08
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