[BUGFIX] Cache results of explodeSoftRefParserList() 90/35190/12
authorStephan Großberndt <stephan@grossberndt.de>
Tue, 9 Dec 2014 13:33:57 +0000 (14:33 +0100)
committerXavier Perseguers <xavier@typo3.org>
Mon, 13 Apr 2015 14:58:38 +0000 (16:58 +0200)
commit72c3dec560e8f0c5bbdf668b342d5c99937801f1
treec3dd937b4aa404c5014c65df881ce6c5c8400331
parent4d3c3fcbc45fbcc7ef6325ef3638d1eb25b701a0
[BUGFIX] Cache results of explodeSoftRefParserList()

BackendUtility::explodeSoftRefParserList() is called with a very
limited set of input parameters, but processing is rather expensive.

Introduce a runtime cache to avoid processing the softrefs over
and over.
This especially speeds up calls from ReferenceIndex::getRelations(),
which is called many times.

Resolves: #63675
Releases: master, 6.2
Change-Id: I34a4392533828667c1b63b1ecb4ca12580e05e06
Reviewed-on: http://review.typo3.org/35190
Reviewed-by: Nicole Cordes <typo3@cordes.co>
Reviewed-by: Markus Klein <klein.t3@reelworx.at>
Tested-by: Markus Klein <klein.t3@reelworx.at>
Reviewed-by: Andreas Fernandez <andreas.fernandez@aspedia.de>
Reviewed-by: Xavier Perseguers <xavier@typo3.org>
Tested-by: Xavier Perseguers <xavier@typo3.org>
typo3/sysext/backend/Classes/Utility/BackendUtility.php
typo3/sysext/core/Classes/Database/ReferenceIndex.php
typo3/sysext/core/Classes/Database/SoftReferenceIndex.php
typo3/sysext/linkvalidator/Classes/LinkAnalyzer.php