Changes between Initial Version and Version 1 of Ticket #34523, comment 13
- Timestamp:
- Apr 29, 2023, 12:13:49 AM (19 months ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #34523, comment 13
initial v1 1 The changes in 331a460f8f2e4f447b68fba491464b68c9b21fd1 are semantically correct but they had the side effect of making `BaseDatabaseWrapper._savepoint_allowed` return `False` and thus `savepoint()` creation always return `None`. 1 The changes in 331a460f8f2e4f447b68fba491464b68c9b21fd1 are semantically correct but they had the side effect of making `BaseDatabaseWrapper._savepoint_allowed` return `False` and thus `savepoint()` creation always return `None`. Remember that MySQL does support transactions and will happily create valid savepoints that can be rolled back and discarded independently of the default storage engine used. 2 2 3 3 Since `update_or_create` uses nested `atomic` to handle possible integrity errors it was previously taking the savepoints created by MySQL as way to mark back the connection as usable. Now that savepoints are not returned anymore it assumes the outer atomic block is tainted as well and raise `TransactionManagementError`.