Skip to content

AbstractPlatformTransactionManager breaks in 3.0.0.RC3 [SPR-6521] #11187

Closed
@spring-projects-issues

Description

@spring-projects-issues

Abhishek Gupta opened SPR-6521 and commented

Problem:
We have implemented a TransactionManager that extends the AbstractPlatformTransactionManager. We noticed that there's a break when we moved to 3.0.0.RC3.

Details:
In the getTransaction(...) method, when doBegin(...) is called, the TransactionStatus is now instantiated using a private method instantiateTransactionStatus(). This breaks our transactionManager that extends newTransactionStatus(). This is infact the case for all the instances where doBegin() is called throughout the code.
Note: The split between creation of the TransactionStatus and preparingSynchronization whereever doBegin() is being called is correct in that the TransactionStatus needs to be created before a call to doBegin() - this was an OOM issue that Juergen had fixed in 3.0.rc1

Proposed Solution:
newTransactionStatus(...) should keep doing what it did earlier i.e. simply be responsible for creating the new TransactionStatus. The prepareSynchronization(...) method should be called outside of it.


Affects: 3.0 RC3

Referenced from: commits 93abbd0

Metadata

Metadata

Assignees

Labels

in: dataIssues in data modules (jdbc, orm, oxm, tx)type: bugA general bug

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions