Skip to content
Snippets Groups Projects
Commit 372cef12 authored by Andreas Fernandez's avatar Andreas Fernandez
Browse files

[BUGFIX] Avoid useless database updates in DataHandler

DataHandler has an internal check that compares the sent payload with
the state of the affected database record and removes fields from the
payload that didn't change.

Everytime a database record is updated, DataHandler resets the internal
stage to "0" to start a new editing workflow, if the affected database
table supports workspaces. This handling is unfortunately executed
*after* the payload comparison is done, leading to a payload that
always instructs to update the field `t3ver_stage`, even if the change
is not necessary, leading to superfluous database updates. This has a
massive negative performance impact in simple shared hosting
environments, especially with tt_content records that have many
file references attached.

The payload comparison is now executed after setting `t3ver_stage` to
filter out superfluous updates.

Resolves: #100035
Releases: main, 11.5
Change-Id: Ie0e29f7efe8d6289849bf117fbc852108fac1dd7
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/77987


Tested-by: default avatarAndreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: default avatarcore-ci <typo3@b13.com>
Reviewed-by: default avatarAndreas Fernandez <a.fernandez@scripting-base.de>
parent 8d6c0581
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment