Bug #17187
closedcache_hash gets filled up with menudata entries while using TMENU_LAYERS
0%
Description
Hi,
this bug has been introduced with release 4.x and is causing a mayor slowdown due to almost killing the database. Mayor impact on performance as well. Using TMENU_LAYERS results in about >40 new entries in cache_has with MENUDATA items each time a page is beeing rendered.
Having a cache_hash with 5.3GB ! in size and 5.706.563 entries in total, where 99% where 5.704.321 are of type MENUDATA the only solution right now is to empty cache_hash.
See additional information for typoscript example. It might be possible that this is related to heavy traffic on the frontend, so this happens not on every site.
Any help would be great ;)
Thanks
Matt
Example Code:
subparts.menu0 = HMENU
subparts.menu0.special = list
subparts.menu0.special.value = 20,27,28,26,25,6400,23,24,22
subparts.menu0.1 = TMENU_LAYERS
subparts.menu0.1 {
layerStyle = position:absolute; visibility:hidden;
lockPosition = x
relativeToParentLayer=1
relativeToTriggerItem=1
topOffset=152
leftOffset=150
hideMenuWhenNotOver = 50
hideMenuTimer = 70
expAll=1
noBlur=1
wrap = <table border="0" cellspacing="0" cellpadding="0" height="35"><tr>|</tr></table>
NO.allWrap = <td class="topnav" valign="middle"> | </td>
ACT = 1
ACT.allWrap = <td class="topnav_act" valign="middle"> | </td>
}
subparts.menu0.2 = TMENU_LAYERS
subparts.menu0.2 {
layerStyle = position:absolute; visibility:hidden;
lockPosition = x
relativeToParentLayer=1
relativeToTriggerItem=1
relativeToTriggerItem.addWidth = 1
hideMenuWhenNotOver=1
topOffset=-6
leftOffset=4
expAll=1
noBlur=1
wrap = <div class="smenu_box"><div class="smenu"><div class="smenu_link"><table border="0" cellspacing="0" cellpadding="0"><tr><tr><td nowrap align="right">|</td></tr></tr></table></div></div></div>
NO.ATagParams = class="ssml"
IFSUB = 1
IFSUB.ATagParams = class="ssml_arrow"
ACT = 1
ACT.ATagParams = class="ssml layernav_act"
ACTIFSUB = 1
ACTIFSUB.ATagParams = class="ssml_arrow layernav_act"
}
subparts.menu0.3 = TMENU
subparts.menu0.3 {
noBlur=1
wrap = <div class="ssmenu"><div class="smenu_box"><div class="smenu"><div class="smenu_link"><table border="0" cellspacing="0" cellpadding="0"><tr><tr><td nowrap align="right">|</td></tr></tr></table></div></div></div></div>
NO.ATagParams = class="ssml"
ACT = 1
ACT.ATagParams = class="ssml layernav_act"
}
(issue imported from #M5360)
Updated by Michael Stucki over 17 years ago
That sounds very interesting! I will investigate this...
Updated by Oliver Hader over 17 years ago
Updated by Dmitry Pikhno almost 17 years ago
same problem. slowdown and huge cache_hash with a lot of MENUDATA.
but we do not use TMENU_LAYERS
our menu looks like
wrapItemAndSub = bla1 || bla2 || bla3 || bla4 || bla5
allWrap.stdWrap {
prepend = IMG_RESOURCE
prepend {
stdWrap.wrap = style="background-image: url(|)">
file = GIFBUILDER
......
and yes we have heavy traffic on FE
Updated by Michael Hitzler almost 17 years ago
Same problem on 4.0 and after upgrade to 4.1.5 with GMENU and GEMNU-Layer. cash_hash table gets filled up with MENUDATA (about 95% of all entries).
Have checked it on other systems as well.
Another one on 4.02 with TMENU-Layers seems to have the problem as well as one on 4.1.5 with TMENU only.
Updated by Christian Kuhn about 16 years ago
Is this still a problem?
If so, could someone please submit a ready to use TS MENU to reproduce this? The above TMENU_LAYERS example does not work for me at all. (i just changed the special.value part) and moved to page.10 = HMENU.
Updated by Clemens Riccabona almost 16 years ago
I can recognize the completely same problem on a TYPO3 4.2.1, php5, mysql5 with tmenu_layers.
But the interesting thing is, that this only happens to one TYPO3 page, where the others (which are all sharing one global source) have a reasonable size of cache_hash.
Also the traffic can't be the reason, as there are more pages which have similar traffic (~1k uniques a day).
cache_ tables are innodb here.
Updated by David Keller about 15 years ago
I got the same problem with Typo3 4.2.6, but I'm not using TMENU_LAYERS.
Just some ordonary TMENUs. I can't reproduce the Problem.
Is there still no solution ?
Updated by Michael Stucki about 15 years ago
Please check if it still happens with the latest version. TYPO3 4.2.6 is pretty old nowadays...
Updated by Carey Dessaix almost 15 years ago
Hi Michael, I can confirm this bug is still current with TYPO3 4.2.10
After only about 15 hours (since the last truncation of the cache_hash table) of a small-ish site with a small handful of visitors per minute, the cache_hash table has grown to 1.8G. I can't imagine what this problem would be like for a large site.
Anyway, here is what the cache_hash entries look like for the site I'm referring to: http://www.users.on.net/~carey/MENUDATA.html , does that give anyone any clues as to what might be causing these entries? (In case this helps anyone: to get that result in phpmyadmin I added a htmlspecialchars() for a $blobtext variable and placed a display_blob=true in the phpmyadmin source).
I'm not sure what sort of menus or whatnot this site has configured in TYPO3, so I'm not sure what is causing this bug. I'm primarily just coming from a sysadmin perspective, and from this perspective it's definitely a problem! :-)
Is there any other info I can provide?
Updated by Clemens Riccabona almost 15 years ago
It would be great to know which type of menu is used.
Anyway I can confirm this bug on 4.2.10 too.
I worked around by configuring innodb to be limited to smaller filesize.
But I think this is not the best way at the long last. ;)
I now have about 300MB cache_hash with about 400MB cache_page on a website with about 1k uniques a day (what is really not that much).
Big enough for basically caching some text IMO ...
I have not checked this on 4.3, but I think it will happen during January.
Updated by Juergen Weber over 14 years ago
Hey guys, we're encountering the very same problem for ages now. Isn't there any solution to this yet? This slows down our whole system and we're forced to implement cronjobs to clear the cache table on a regular basis. It would be great if you could raise the priority on this.
Updated by Carey Dessaix over 14 years ago
I can confirm this is still a problem on TYPO3 4.4. I am happy to provide whatever info is needed. I just don't know what other info to provide, so please let me know.
Note that this bug could be classed as a security problem, sites could be Denial of Serviced due to this bug (database size filling disk and/or grinding to a halt).
Updated by Carey Dessaix about 13 years ago
Hi, this bug is still flooding our cache_hash tables, using the latest TYPO3 4.4, version 4.4.11. Any word on this? Cheers
Updated by Francois Suter about 13 years ago
- Category deleted (
Communication) - Target version deleted (
0) - Complexity set to hard
*_LAYERS menu are not used much I guess, which doesn't help to get the bug fixed. Personally I never experienced an overflooding of the cache table with a TMENU, but I also clean up the cache tables regularly using the cachecleaner extension.
Could affected people maybe post the TypoScript of their menu? No promises, just trying to gather additional information.
Updated by Clemens Riccabona about 13 years ago
With TYPO3 4.4.x the problem got 'better' (so i don't have 1,8gb cache tables on small sites any more), but it is ongoing to grow in an unreasonable size (800-900mb after some days, while table has about 100mb after truncating caching tables).
With Version 4.5.X i can't say atm, but in a few days one of the concerned installations would be upgraded to 4.5.x and then i could tell you more about this.
One of the concerned installationes will upgraded too, but with a complete redesign an complete new Typoscript etc ...
We will use there a superfish menu (based on a simple tmenu). the installation is a bigger one, with some users per day, maybe i can get some meaningful key-data i can provide here.
last but not least, the typoscript-code looks pretty much like the example code, posted initally to this topic.
cheers from tyrol,
clemens
Updated by Christian Kuhn over 11 years ago
- Status changed from Accepted to Rejected
With 6.1 issue #46358, the _layers menus where moved to statictemplates, and statictemplates was removed from core afterwards. This issue won't be solved in the core anymore.