Problem/Motivation

As described in numerous issues (see related), it is desirable to drop the auto-commit of database transactions during the destruction of Drupal's Transaction objects.

This meta issue is to track the overall plan to achieve that.

Proposed resolution

Done:

  1. Start allowing explicit COMMIT/RELEASE SAVEPOINT from the Transaction objects: #3398767: Allow returning explicitly to the prior nesting level in transactions (aka allow explicit COMMIT in Transaction objects)
  2. Convert core to always explicitly commit/release:

To do:

  1. Deprecate auto-commit on Transaction destruction: #3584238: Deprecate implicit commit-on-destruct
  2. #3584465: Fix inconsistencies in the TransactionManager behavior
  3. Ensure the event dispatcher is available before the container is ready: #3492391: Make the event dispatcher available before container full bootstrap
  4. #3348590: Add transaction-related events to the Database API
  5. Move post transaction callback execution to an event-based process and deprecate execution on Transaction destruction: issue tbd
  6. #3584322: Cleanup transactions in try/catch blocks
  7. Clean up deprecations (Drupal 13 or 14)

Remaining tasks

User interface changes

Introduced terminology

API changes

Data model changes

Release notes snippet

Comments

mondrake created an issue. See original summary.

mondrake’s picture

mondrake’s picture

Issue summary: View changes

Version: 11.x-dev » main

Drupal core is now using the main branch as the primary development branch. New developments and disruptive changes should now be targeted to the main branch.

Read more in the announcement.

liam morland’s picture

mondrake’s picture

mondrake’s picture

Issue summary: View changes
mondrake’s picture

Issue summary: View changes
mondrake’s picture

mondrake’s picture

Issue summary: View changes
andypost’s picture