Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[BUGFIX] Speed up FormEngine with hundreds of categories
FormEngine's TreeRendering for categories utilizes the TreeDataProvider logic, which is handed over a list of available items loaded by FormEngine's AbstractItemProvider. These records have already been validated and a full record was already loaded by FormEngine at this point. The TreeDataProvider construct then fetches ALL records again, as it only works with the "IDs", but not with already loaded full rows. This makes the construct expensive. It needs a bigger overhaul. To mitigate the performance impact of bigger category trees, the patch applies a hack to suppress loading single category rows multiple times by handing them over from FormEngine to the TreeDataProvider construct. As this change is also backported to 11.5, the optimizations are only done for type=category to minimize impact for other Tree usages. Resolves: #84558 Resolves: #90398 Resolves: #97003 Resolves: #76581 Resolves: #98807 Releases: main, 11.5 Change-Id: Ief183f1673d3a17036ca5e68c62dc18a4277def1 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/76443 Tested-by: core-ci <typo3@b13.com> Tested-by: Christian Kuhn <lolli@schwarzbu.ch> Tested-by: Oliver Bartsch <bo@cedev.de> Tested-by: Susanne Moog <look@susi.dev> Tested-by: Benni Mack <benni@typo3.org> Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by: Susanne Moog <look@susi.dev> Reviewed-by: Oliver Bartsch <bo@cedev.de> Reviewed-by: Benni Mack <benni@typo3.org>
- Loading branch information
Showing
6 changed files
with
116 additions
and
194 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.