Bug #105618
openIcon with identifier "default-not-found" is not registered
0%
Description
At irregular intervals, the T3 backend stops working. The IconRegistry throws the error: "Icon with identifier 'default-not-found' is not registered."
Investigations show that the cache file suddenly has no entries. The cache file typo3temp/var/cache/data/assets/BackendIcons_xxxx contained the value a:0:{}.
It appears that an error occurs during the saving process. The website has 20+ backend users who make numerous content changes daily.
After clearing all caches the backend starts working again.
My workaround is to Xclass IconRegistry and check if $cacheEntry contains a non-empty array.
protected function getCachedBackendIcons() { $cacheIdentifier = $this->getBackendIconsCacheIdentifier(); $cacheEntry = $this->cache->get($cacheIdentifier); if (is_array($cacheEntry) && count($cacheEntry) > 0) { $this->icons = $cacheEntry; } else { if ($cacheEntry !== false) { //$reportEmailAddress = ''; //$subject = 'Icon Registry Fehler: ' . ($GLOBALS['TYPO3_CONF_VARS']['SYS']['sitename'] ?? ''); //$message = 'cacheEntry ist vorhanden, aber das Array ist leer.'; //mail($reportEmailAddress, $subject, $message); } $this->registerBackendIcons(); // all found icons should now be present, for historic reasons now merge w/ the statically declared icons $this->icons = array_merge($this->icons, $this->iconAliases, $this->staticIcons); $this->cache->set($cacheIdentifier, $this->icons); } // if there's now at least one icon registered, consider it successful if (is_array($this->icons) && (count($this->icons) >= count($this->staticIcons))) { $this->backendIconsInitialized = true; } }
It seems that others are experiencing the same issue (https://stackoverflow.com/questions/66821084/icon-with-identifier-default-not-found-is-not-registered)
Updated by Garvin Hicking 3 days ago ยท Edited
- Status changed from New to Needs Feedback
Could you describe your webserver setup (webserver time, load, filesystem, memory, memory load)?
If you xclass this, just before the ->set
command, please do a check if this->icons
is empty, that would allow to catch the request that causes this. In this case please log the request uri and get/post data and memory_get_usage() to see at which point this may be caused.
Updated by Marco von Arx 2 days ago
I have added log statements to gather more details and will share the findings as soon as they are available.