[BUGFIX] Remove expired cache_treelist entries during runtime 51/58951/3
authorAlexander Schnitzler <git@alexanderschnitzler.de>
Mon, 26 Nov 2018 09:58:48 +0000 (10:58 +0100)
committerMarkus Klein <markus.klein@typo3.org>
Tue, 4 Dec 2018 18:34:59 +0000 (19:34 +0100)
commitb63f03d68a7c324bef798d5ad87d08b51c347c6b
treed7d18aa80e4946052a911956faea00f847b8e3d8
parent5b4433410cdcb621753ca7b56bd2dfbba56332b5
[BUGFIX] Remove expired cache_treelist entries during runtime

When \TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer::getTreeList
checked for an existing cache_treelist entry, the given md5hash and the
expiry timestamp had been compared. As caches do not expire at all by
default, there a very few cases when an entry is actually expired.

However, if a cache entry has been expired, the cache entry hasn't been
removed and therefore the creation of a new cache entry with the same
md5hash identifier resulted in a duplicate entry exception.

To solve this, the affected, expired entry will be removed during runtime.

Releases: master, 8.7
Resolves: #86028
Resolves: #86491
Change-Id: If1a907607db29f7edd0fa77a8bb47a69bdfc0df9
Reviewed-on: https://review.typo3.org/58951
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php