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

Make InitRootHandlers safe for the threaded framework #853

Merged
merged 1 commit into from Sep 18, 2013

Conversation

Dr15Jones
Copy link
Contributor

InitRootHandlers was originally calling ROOT's 'SetErrorHandler' function during event processing. That operation is not thread safe. This was done solely to allow ROOT warning messages to be temporarily ignored. We now always keep the same error handler but now signal the request to ignore warnings via a thread local bool. To better encapsulate this behavior, RootHandlers was changed to use a function which takes a functor as an argument and then wraps the temporary disabling of warnings via a sentry. Only RootOutputTree actually makes use of this facility.

InitRootHandlers was originally calling ROOT's 'SetErrorHandler' function during event processing. That operation is not thread safe. This was done solely to allow ROOT warning messages to be temporarily ignored. We now always keep the same error handler but now signal the request to ignore warnings via a thread local bool. To better encapsulate this behavior, RootHandlers was changed to use a function which takes a functor as an argument and then wraps the temporary disabling of warnings via a sentry. Only RootOutputTree actually makes use of this facility.
@cmsbuild
Copy link
Contributor

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

Make InitRootHandlers safe for the threaded framework

It involves the following packages:

FWCore/Utilities
IOPool/Output
FWCore/Services

@Dr15Jones, @ktf can you please review it and eventually sign? Thanks.
@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.
@ktf you are the release manager for this.

@Dr15Jones
Copy link
Contributor Author

+1
All framework unit tests pass. A full rebuild was not attempted.

@cmsbuild
Copy link
Contributor

This pull request is fully signed and it will be integrated in one of the next IBs unless changes or unless it breaks tests. @ktf can you please take care of it?

@ktf
Copy link
Contributor

ktf commented Sep 17, 2013

@nclopezo can you please test this? You should probably give precedence to pull requests which are completely signed.

@nclopezo
Copy link
Contributor

@cmsbuild
Copy link
Contributor

This pull request is fully signed and it will be integrated in one of the next IBs unless changes or unless it breaks tests. @ktf can you please take care of it?

@Dr15Jones
Copy link
Contributor Author

@ktf ping

ktf added a commit that referenced this pull request Sep 18, 2013
Threaded framework cleanups -- Make InitRootHandlers safe for the threaded framework
@ktf ktf merged commit 728746a into cms-sw:CMSSW_7_0_X Sep 18, 2013
@ktf
Copy link
Contributor

ktf commented Sep 18, 2013

I missed david's message. Sorry about that. Should be merged now.

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