Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Not A Problem
-
4.1.RC2
-
None
-
None
Description
The cayenne sends the commits to the database ( after a lazy fetch, ... ). The transaction boundaries are defined by a superior business logic and ORM must not corrupt this logic and boundaries. Imagine for example that the Cayenne is part of an XA transaction, where the commit is controled by a transaction manager and the commit guided by two phase commit protocol. I'm afraid that any attempt to control transaction boundaries from ORM sooner or later clash with required boundaries.
This design feature, automaticaly reject using cayenne as an ORM for any bit complex project which want to use savepoint/rollback/commit commands. As far as I remember Cayenne 3 did not touched the transaction state. Why Cayenne 4 touching the transaction?