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

Fixed bug that cause Service exceptions to cause aborts #1508

Merged

Conversation

Dr15Jones
Copy link
Contributor

If a Service threw an exception during the ending of a processing transition (e.g. end of Event), the exception would cause an abort rather than being propagated as expected. The problem was the Service signal was generated during the destructor of a ‘guard’ class instance. In C++11 those destructors are now implicitly noexcept(true) which caused the abort. The destructor were changed to noexcept(false) and a new method ‘allowThrow()’ was added which is used to avoid throwing an exception while an exception is being propagated out of the function which uses the guard.

If a Service threw an exception during the ending of a processing transition (e.g. end of Event), the exception would cause an abort rather than being propagated as expected. The problem was the Service signal was generated during the destructor of a ‘guard’ class instance. In C++11 those destructors are now implicitly noexcept(true) which caused the abort. The destructor were changed to noexcept(false) and a new method ‘allowThrow()’ was added which is used to avoid throwing an exception while an exception is being propagated out of the function which uses the guard.
@cmsbuild
Copy link
Contributor

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

Fixed bug that cause Service exceptions to cause aborts

It involves the following packages:

FWCore/Framework

@cmsbuild, @Dr15Jones, @ktf, @nclopezo 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
This was found while working on #1507 and is needed to get the full benefit of that change.

@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?

@cmsbuild
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?

ktf added a commit that referenced this pull request Nov 20, 2013
…EndEvent

Multithreaded framework -- Fixed bug that cause Service exceptions to cause aborts
@ktf ktf merged commit 292e534 into cms-sw:CMSSW_7_0_X Nov 20, 2013
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

3 participants