|
In case there are pending changes, those would still be executed by the time the transaction is committed, which means there are two causes for any performance penalty:
-
the dirty checking mechanism (the default one is fine as long as the Session is not bloated with tons of entities)
-
the locks that might be acquired too early (even in MVCC, locks are still acquired to prevent write-write conflicts).
We could leave it like this, since it's been like that for a decade and just provide a comprehensive documentation to educate the user about the inconsistency risk.
|