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

TransactionImpl.commit() swallows exceptions and can put the domain in a bad state #17

Open
pcdavid opened this issue Sep 4, 2022 · 1 comment
Labels
bugzilla Issues migrated from the old Eclipse Bugzilla

Comments

@pcdavid
Copy link
Contributor

pcdavid commented Sep 4, 2022

  • πŸ†” Bugzilla ID: #354565
  • πŸ“˜ Project: Modeling / EMF Services / Transaction
  • πŸ—“ Created: 2011-08-11T23:41:26Z
  • ❓ Status: NEW /
@pcdavid
Copy link
Contributor Author

pcdavid commented Sep 4, 2022

Comment #0 on Fri Aug 12 2011 01:41:26 GMT+0200 (Central European Summer Time):

Build Identifier: 

We had a situation where a problem in our model was causing BasicEObjectImpl to throw a RuntimeException while TransactionImpl.commit was doing its thing.  The method has a try-finally where most of the work is done without a catch.  It also calls things in the finally block (like close()) that assume that the system is in a good state and throw their own exceptions if they are not.

The result was that during the finally after the first exception, close() was called and it threw an IllegalArgumentException because the activeTransaction was out of sync (do to the try block ending abnormally).  This causes the original exception information to be completely lost.

Recommendation: Add a catch block that at least logs any RuntimeException's before the finally block runs.  This will ensure that the information doesn't get lost.

Reproducible: Always

Comment #1 on Sat May 14 2022 15:51:24 GMT+0200 (Central European Summer Time):

Eclipse EMF Transaction is moving away from this bugs.eclipse.org issue tracker to https://github.com/eclipse/emf-transaction.

If this issue is relevant to you and still present in the latest release:

* Create a new issue at https://github.com/eclipse/emf-transaction/issues/.
  * Use as title in GitHub the title of this Bugzilla ticket (may include the bug number or not, at your own convenience)
  * In the GitHub description, start with a link to this bugzilla ticket
  * Optionally add new content to the description if it can helps towards resolution
* Update bugzilla ticket
  * Add to "See also" property (up right column) the link to the newly created GitHub issue
  * Add a comment "Migrated to <link-to-newly-created-GitHub-issue>"
  * Set status as CLOSED MOVED

All issues that remain open will be automatically closed next week or so. Then the Bugzilla component for EMF Transaction will be archived and made read-only.

@pcdavid pcdavid added the bugzilla Issues migrated from the old Eclipse Bugzilla label Sep 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugzilla Issues migrated from the old Eclipse Bugzilla
Projects
None yet
Development

No branches or pull requests

1 participant