[TYPO3-core] RFC: Fix bug #5152: "Duplicate entry" in cache_pagesection when using frames

Michael Stucki michael at typo3.org
Mon Feb 4 01:42:10 CET 2008


Committed in revision #3043 with additional code-cleanup in rev #3044.
Thank for your reviews!

- michael

Michael Stucki wrote:

> This is a SVN patch request.
> 
> Problem:
> There's a famous "duplicate error" which appears under various
> circumstances. See bug reference for details.
> 
> Solution:
> Actually has been an attempt to cleanup the cache access and also make it
> easier to understand. The solution is of the problem above was just a
> side-effect of it.
> 
> Still, it is theoretically possible that the problem still occurs if two
> similar requests are too short after each other, but I think chances are
> very rare for this to happen...
> 
> Branches:
> Trunk only
> 
> Bugtracker reference:
> http://bugs.typo3.org/view.php?id=5152
> 
> Comments:
> $TSFE->all: This array is stored in cache_pagesection. It consists of 4
> elements:
> - all (array with all sections/conditions in this template)
> - match (all conditions that matched the current client)
> - rootLine ($TSFE->rootLine)
> - rowSum (list of all templates for this page)
> 
> More notes:
> - Since "match" is always dynamic, it must never be cached (except for
>   cache_hash, which contains the parsed setup that matches these
>   conditions)
> - "rootLine" and "rowSum" are both used to detect if this record is still
>   valid, or if it needs to be rebuilt/updated.
> - It is important that the array is always sorted by its keys, therefore
>   ksort() is called after every write operation.
> 
> 
> I look forward to get this into Trunk today, so it can be tested in Beta
> and, if it doesn't work well, be optimized later.
> 
> - michael

-- 
Use a newsreader! Check out
http://typo3.org/community/mailing-lists/use-a-news-reader/


More information about the TYPO3-team-core mailing list