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

allow edmCheckClassTransients to accept multiple rootfile files on command-line #11517

Merged
merged 3 commits into from Sep 28, 2015
Merged

allow edmCheckClassTransients to accept multiple rootfile files on command-line #11517

merged 3 commits into from Sep 28, 2015

Conversation

smuzaffar
Copy link
Contributor

No description provided.

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @smuzaffar (Malik Shahzad Muzaffar) for CMSSW_7_6_X.

allow edmCheckClassTransients to accept multiple rootfile files on command-line

It involves the following packages:

FWCore/Utilities

@cmsbuild, @smuzaffar, @Dr15Jones can you please review it and eventually sign? Thanks.
@makortel, @Martin-Grunewald, @wddgit, @wmtan this is something you requested to watch as well.
You can sign-off by replying to this message having '+1' in the first line of your reply.
You can reject by replying to this message having '-1' in the first line of your reply.
If you are a L2 or a release manager you can ask for tests by saying 'please test' in the first line of a comment.
@Degano you are the release manager for this.
You can merge this pull request by typing 'merge' in the first line of your comment.

@smuzaffar
Copy link
Contributor Author

this script edmCheckClassTransients is not is use ye to no need to run any ib tests

@smuzaffar
Copy link
Contributor Author

+1

@smuzaffar
Copy link
Contributor Author

@gartung , any objection on the purposed change? It saves few seconds for the package with multiple classes.h files

@cmsbuild
Copy link
Contributor

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

@smuzaffar
Copy link
Contributor Author

I have updated build rules to call this script and it generated this error
/var/build/muz/del/CMSSW_7_6_X_2015-09-27-2300/src/FWCore/Utilities/scripts/edmCheckClassTransients -l libDataFormatsJetReco.so -f lib/slc6_amd64_gcc493/DataFormatsJetReco_xr.rootmap -f lib/slc6_amd64_gcc493/DataFormatsJetReco_x1r.rootmap -f lib/slc6_amd64_gcc493/DataFormatsJetReco_x2r.rootmap -f lib/slc6_amd64_gcc493/DataFormatsJetReco_x3r.rootmap Checking class edm::AssociationVector<edm::RefToBaseProd<reco::Jet>,vector<edm::RefVector<vector<reco::Track>,reco::Track,edm::refhelper::FindUsingAdvance<vector<reco::Track>,reco::Track> > >,edm::RefToBase<reco::Jet>,unsigned int,edm::helper::AssociationIdenticalKeyReference> Checking class edm::AssociationVector<edm::RefToBaseProd<reco::Jet>,vector<float>,edm::RefToBase<reco::Jet>,unsigned int,edm::helper::AssociationIdenticalKeyReference> Checking class edm::AssociationVector<edm::RefToBaseProd<reco::Jet>,vector<reco::JetExtendedAssociation::JetExtendedData>,edm::RefToBase<reco::Jet>,unsigned int,edm::helper::AssociationIdenticalKeyReference> Traceback (most recent call last): File "/var/build/muz/del/CMSSW_7_6_X_2015-09-27-2300/src/FWCore/Utilities/scripts/edmCheckClassTransients", line 72, in <module> checkTrans(key,value) File "/var/build/muz/del/CMSSW_7_6_X_2015-09-27-2300/src/FWCore/Utilities/scripts/edmCheckClassTransients", line 39, in checkTrans raise RuntimeError("failed to load dictionary for class '"+name+"'. Check for typedefs in the name.") RuntimeError: failed to load dictionary for class 'class edm::AssociationMap<edm::OneToMany<reco::CaloJetCollection,std::vector<reco::Track>,unsigned int> >'. Check for typedefs in the name.

@Dr15Jones
Copy link
Contributor

CaloJetCollection is a typedef. I guess I don't understand how rootmap files work then. Patrick, best to talk with Philippe about how to do this.

@gartung
Copy link
Member

gartung commented Sep 28, 2015

This string shouldn't have appeared in the rootmap file

class edm::AssociationMapedm::OneToMany<reco::CaloJetCollection,std::vector<reco::Track,unsigned int> >

The rootmap file is supposed to contain the name as the compiler sees it.
@smuzaffar Can you check to see if this string appears in the rootmap file.

@gartung
Copy link
Member

gartung commented Sep 28, 2015

@smuzaffar Nevermind. I see that the string is there. I don't understand why:

grep edm::AssociationMap DataFormatsJetReco*.rootmap
DataFormatsJetReco_x2r.rootmap:class edm::AssociationMapedm::OneToMany<reco::CaloJetCollection,std::vector<reco::Track,unsigned int> >
DataFormatsJetReco_x2r.rootmap:class edm::AssociationMapedm::OneToMany<reco::JPTJetCollection,std::vector<reco::Track,unsigned int> >

@gartung
Copy link
Member

gartung commented Sep 28, 2015

The class name appears twice -- once with the typedef-ed name and once with the real names.

List of selected classes

class edm::AssociationMapedm::OneToMany<reco::CaloJetCollection,std::vector<reco::Track,unsigned int> >
class edm::AssociationMapedm::OneToMany<reco::JPTJetCollection,std::vector<reco::Track,unsigned int> >
class edm::AssociationMapedm::OneToMany<vector<reco::CaloJet,vectorreco::Track,unsigned int> >
class edm::AssociationMapedm::OneToMany<vector<reco::JPTJet,vectorreco::Track,unsigned int> >

@gartung
Copy link
Member

gartung commented Sep 28, 2015

@smuzaffar Please merge this. I will need to change the script to make the error non-fatal. Since the real class name is in the rootmap file it will be loaded and then the transient member can be check.

@Dr15Jones
Copy link
Contributor

@gartung You should be able to get the branch from Shahzad's repository, make the change and then do a pull to Shahzad's repo. Then he can integrate it and this pull request will get the change.

@smuzaffar
Copy link
Contributor Author

+1

@cmsbuild
Copy link
Contributor

Pull request #11517 was updated. @cmsbuild can you please check and sign again.

@smuzaffar
Copy link
Contributor Author

merging this as this script is not used by any thing yet

smuzaffar added a commit that referenced this pull request Sep 28, 2015
…ass-scripts

allow edmCheckClassTransients to accept multiple rootfile files on command-line
@smuzaffar smuzaffar merged commit 21624b1 into cms-sw:CMSSW_7_6_X Sep 28, 2015
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