-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
612 backports #3547
612 backports #3547
Conversation
Starting build on |
Build failed on mac1014/cxx17. Errors:
|
Build failed on ROOT-fedora27/noimt. Errors:
Warnings:
|
Build failed on ROOT-fedora29/python3. Errors:
Warnings:
|
Build failed on ROOT-ubuntu16/rtcxxmod. Errors:
Warnings:
And 7 more |
Build failed on ROOT-performance-centos7-multicore/default. Errors:
|
Build failed on windows10/default. Warnings:
|
errors are pre-existing. |
…ect. This prevent the inappropriate execution on a rule intent for an inner object on the outer object('s memory space) In a case where the top level branch is: 1 edm::Wrapper<std::vector<pat::CompositeCandidate, std::allocator<pat::CompositeCandidate> > > which contains 2 16, obj, vector<pat::CompositeCandidate> simple base pat::PATObject<reco::CompositeCandidate> 3 360, overlapItems_, vector<edm::PtrVector<reco::Candidate> > simple base edm::PtrVectorBase 4 48, cachedItems_, atomic<vector<const void*>*> ***TRANSIENT-WITH-RULE** The TStreamerInfo Action Sequence for (4) was being executed the obj branch/level The bug was that GatherArtificialElements would drill through (3) eventhough it was not split and it did so because it did not recognize there was a branch for it because it added (errorneously) the name of the base class in the branch prefix.
Lock was moved deeper
I.e. insure we do not add or substract from the special offset value kMissing (which result in 'valid' offset in the 10,000 range leading to memory over-write or out-of-bounds reads)
unique_ptr can be nullptr too sometimes *and* anyway TStreamerInfo::Build does not make the same restriction. The mismatch lead to baffling error message like: Warning in <TStreamerInfo::BuildOld>: Cannot convert A::h from type: B to type: B, skip element This solves one of the problems seen in https://sft.its.cern.ch/jira/browse/ROOT-9702.
This addresses part of ROOT-9762
When a rule is associated to the top level node of split collection, we must not add the branch offset, since the rule is about the content of the collection
GetCollectionProxy during the setting of fCollProxy calls TBranchElement::GetInfoImp that in some cases sets fCollProxy and ends up recording it (sometimes) in the action sequence. When GetCollectionProxy sets it too (i.e. change it) there is now a disconnect between the branch and the action sequences that lead to the action sequence to used an unset collection proxy: Fatal in <TGenCollectionProxy>: Size> Logic error - no proxy object set. aborting
cc8302e
to
a473580
Compare
Starting build on |
Build failed on mac1014/cxx17. Errors:
|
Build failed on ROOT-performance-centos7-multicore/default. Errors:
|
Build failed on windows10/default. Warnings:
|
Build failed on ROOT-fedora27/noimt. Errors:
Warnings:
|
Build failed on ROOT-ubuntu16/rtcxxmod. Errors:
Warnings:
And 7 more |
Build failed on ROOT-fedora29/python3. Errors:
Warnings:
|
No description provided.