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

TTree incorrectly run I/O customization rules on "new" data members. #9899

Closed
pcanal opened this issue Feb 15, 2022 · 1 comment · Fixed by #9927
Closed

TTree incorrectly run I/O customization rules on "new" data members. #9899

pcanal opened this issue Feb 15, 2022 · 1 comment · Fixed by #9927
Assignees
Labels
Milestone

Comments

@pcanal
Copy link
Member

pcanal commented Feb 15, 2022

As reported at: cms-sw/cmssw#36908 (comment)

The problem is the rules are applied to a data member nested inside an object nested inside an STL collection that is a new data member of the class reco::HaloClusterCandidateHCAL, since it is a "new" member compared to the layout on file, none of the objects; from the new member down to the object on which the rules need to be run) are actually streamed and the code gathering the information to run the rule got a bit lost ; it is likely (I am checking as we speak) that in previous release the rule was not even attempted to be run ... which might actually be the desired behavior in this specific case.

@pcanal pcanal added the bug label Feb 15, 2022
pcanal added a commit to pcanal/root that referenced this issue Feb 16, 2022
This resolved the problem seen at: cms-sw/cmssw#36908 (comment)
and fix root-project#9899.

The problem is the rules are applied to a data member nested inside an object nested inside
an STL collection that is a new data member of the class reco::HaloClusterCandidateHCAL,
since it is a new member compared to the layout on file, none of the objects; from the new
member down to the object on which the rules need to be run) are actually streamed and the
code gathering the information to run the rule got a bit lost ; it is likely (I am checking
as we speak) that in previous release the rule was not even attempted to be run ... which
might actually be the desired behavior in this specific case.

The solution is to have GatherArtificialElements stop drilling through data members which
are not stored in the existing TTree.
pcanal added a commit to pcanal/root that referenced this issue Feb 18, 2022
This resolved the problem seen at: cms-sw/cmssw#36908 (comment)
and fix root-project#9899.

The problem is the rules are applied to a data member nested inside an object nested inside
an STL collection that is a new data member of the class reco::HaloClusterCandidateHCAL,
since it is a new member compared to the layout on file, none of the objects; from the new
member down to the object on which the rules need to be run) are actually streamed and the
code gathering the information to run the rule got a bit lost ; it is likely (I am checking
as we speak) that in previous release the rule was not even attempted to be run ... which
might actually be the desired behavior in this specific case.

The solution is to have GatherArtificialElements stop drilling through data members which
are not stored in the existing TTree.
@pcanal pcanal linked a pull request Feb 18, 2022 that will close this issue
@pcanal pcanal closed this as completed in 9d2e85a Feb 18, 2022
@github-actions
Copy link

Hi @pcanal,

It appears this issue is closed, but wasn't yet added to a project. Please add upcoming versions that will include the fix, or 'not applicable' otherwise.

Sincerely,
🤖

pcanal added a commit that referenced this issue Feb 18, 2022
This resolved the problem seen at: cms-sw/cmssw#36908 (comment)
and fix #9899.

The problem is the rules are applied to a data member nested inside an object nested inside
an STL collection that is a new data member of the class reco::HaloClusterCandidateHCAL,
since it is a new member compared to the layout on file, none of the objects; from the new
member down to the object on which the rules need to be run) are actually streamed and the
code gathering the information to run the rule got a bit lost ; it is likely (I am checking
as we speak) that in previous release the rule was not even attempted to be run ... which
might actually be the desired behavior in this specific case.

The solution is to have GatherArtificialElements stop drilling through data members which
are not stored in the existing TTree.
pcanal added a commit that referenced this issue Feb 18, 2022
This resolved the problem seen at: cms-sw/cmssw#36908 (comment)
and fix #9899.

The problem is the rules are applied to a data member nested inside an object nested inside
an STL collection that is a new data member of the class reco::HaloClusterCandidateHCAL,
since it is a new member compared to the layout on file, none of the objects; from the new
member down to the object on which the rules need to be run) are actually streamed and the
code gathering the information to run the rule got a bit lost ; it is likely (I am checking
as we speak) that in previous release the rule was not even attempted to be run ... which
might actually be the desired behavior in this specific case.

The solution is to have GatherArtificialElements stop drilling through data members which
are not stored in the existing TTree.
pcanal added a commit that referenced this issue Feb 18, 2022
This resolved the problem seen at: cms-sw/cmssw#36908 (comment)
and fix #9899.

The problem is the rules are applied to a data member nested inside an object nested inside
an STL collection that is a new data member of the class reco::HaloClusterCandidateHCAL,
since it is a new member compared to the layout on file, none of the objects; from the new
member down to the object on which the rules need to be run) are actually streamed and the
code gathering the information to run the rule got a bit lost ; it is likely (I am checking
as we speak) that in previous release the rule was not even attempted to be run ... which
might actually be the desired behavior in this specific case.

The solution is to have GatherArtificialElements stop drilling through data members which
are not stored in the existing TTree.
pcanal added a commit that referenced this issue Feb 18, 2022
This resolved the problem seen at: cms-sw/cmssw#36908 (comment)
and fix #9899.

The problem is the rules are applied to a data member nested inside an object nested inside
an STL collection that is a new data member of the class reco::HaloClusterCandidateHCAL,
since it is a new member compared to the layout on file, none of the objects; from the new
member down to the object on which the rules need to be run) are actually streamed and the
code gathering the information to run the rule got a bit lost ; it is likely (I am checking
as we speak) that in previous release the rule was not even attempted to be run ... which
might actually be the desired behavior in this specific case.

The solution is to have GatherArtificialElements stop drilling through data members which
are not stored in the existing TTree.
@pcanal pcanal added this to the 6.26/00 milestone Feb 18, 2022
pcanal added a commit to pcanal/root that referenced this issue Oct 4, 2022
This resolved the problem seen at: cms-sw/cmssw#36908 (comment)
and fix root-project#9899.

The problem is the rules are applied to a data member nested inside an object nested inside
an STL collection that is a new data member of the class reco::HaloClusterCandidateHCAL,
since it is a new member compared to the layout on file, none of the objects; from the new
member down to the object on which the rules need to be run) are actually streamed and the
code gathering the information to run the rule got a bit lost ; it is likely (I am checking
as we speak) that in previous release the rule was not even attempted to be run ... which
might actually be the desired behavior in this specific case.

The solution is to have GatherArtificialElements stop drilling through data members which
are not stored in the existing TTree.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant