Task #104724
closedEpic #104723: ext:adminpanel creates a huge mess
DI in admin panel broken due to ModuleDataStorageCollection
100%
Description
ModuleDataStorageCollection extends SplObjectStorage.
This means it is a list of the module objects and those park 'moduleData' as 'info'.
This is then serialized and put into cache_adminpanel_requestcache, and later get() from cache again. (MainController).
Now, when any of such modules or submodules (like Event.php) have DI, those are serialized, and unserialized.
Well ... that's not good since it catapults the size of those cache entries far into MB range when DI is used. And worse, as soon as there is some closure in it (like Container has), serialize() will fail since closures can't be serialized. And hey: Never "cache" DI stuff ...
I for now push a WIP patch, that throws this object storage away and substitutes it with a array, with array-keys being the class names ... but i'm unsure if that's it.
See also #104725 of this epic as a second major fail.
This is not trivial to follow codewise, and it does not happen with all modules/submodules, depending on if they implement DataProviderInterface.
Updated by Christian Kuhn 3 months ago
- Tracker changed from Epic to Bug
- Category set to AdminPanel
- TYPO3 Version set to 13
Updated by Christian Kuhn 3 months ago
- Related to Feature #86003: Add composition based API for the adminpanel added
Updated by Gerrit Code Review 3 months ago
- Status changed from New to Under Review
Patch set 1 for branch main of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/85773
Updated by Gerrit Code Review 3 months ago
Patch set 2 for branch main of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/85773
Updated by Christian Kuhn 3 months ago
- Related to Feature #104773: Implement and use a core ViewFactoryInterface added
Updated by Christian Kuhn 3 months ago
- Related to Feature #103504: Introduce a Fluid cObject for pages added
Updated by Gerrit Code Review 2 months ago
Patch set 3 for branch main of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/85773
Updated by Benjamin Franzke about 2 months ago
- Tracker changed from Bug to Task
Updated by Christian Kuhn about 1 month ago
- Related to Task #105291: Merge AdminPanelDataPersister into AdminPanelRenderer added
Updated by Gerrit Code Review about 1 month ago
Patch set 4 for branch main of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/86572
Updated by Gerrit Code Review about 1 month ago
Patch set 5 for branch main of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/86572
Updated by Gerrit Code Review about 1 month ago
Patch set 6 for branch main of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/86572
Updated by Gerrit Code Review about 1 month ago
Patch set 7 for branch main of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/86572
Updated by Gerrit Code Review about 1 month ago
Patch set 8 for branch main of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/86572
Updated by Gerrit Code Review about 1 month ago
Patch set 9 for branch main of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/86572
Updated by Gerrit Code Review about 1 month ago
Patch set 10 for branch main of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/86572
Updated by Christian Kuhn about 1 month ago
- Status changed from Under Review to Resolved
- % Done changed from 0 to 100
Applied in changeset b2e4ae54a6b6069177ab3d20b1e0e2b883ae7d06.