[TYPO3-mvc] New caching issue 4.6.1: injectCacheFactory()

g4-lisz at tonarchiv.ch g4-lisz at tonarchiv.ch
Sun Nov 27 17:08:09 CET 2011


On 27.11.2011 16:55, g4-lisz at tonarchiv.ch wrote:
> On 27.11.2011 15:36, Stefan Neufeind wrote:
>> On 11/27/2011 03:14 PM, g4-lisz at tonarchiv.ch wrote:
>>> hi there,
>>>
>>> after moving from Typo3 4.5. to Typo3 4.6.1 because of a caching issue
>>> with extbase, we now get another error message from time to time:
>>>
>>> Warning: Attempt to assign property of non-object in
>>> /var/www/typo3_src-4.6.1/t3lib/cache/class.t3lib_cache_factory.php on
>>> line 64 Warning: Attempt to assign property of non-object in
>>> /var/www/typo3_src-4.6.1/t3lib/cache/class.t3lib_cache_factory.php on
>>> line 65 Fatal error: Call to a member function injectCacheFactory() 
>>> on a
>>> non-object in
>>> /var/www/typo3_src-4.6.1/t3lib/cache/class.t3lib_cache_factory.php on
>>> line 66
>>>
>>> i'm not sure if this is still extbase/fluid related.
>>>
>>> any help would be much appreciated!
>> Hi,
>>
>> judging from the error-message this is related to commit
>> b36b630287851f2cf0eaf2d658457c4a85b11de7 which says:
>>
>>      [TASK] Update caching framework to latest FLOW3 version
>>
>> which is change-id Ib1be85fbbe0cb198201fb09bbdb9f9e42c097d35
>> http://review.typo3.org/1722
>>
>> Until then the solution was to call the constructor with one variable
>> for the cache-manager and now it's two (a new $context was added as
>> first parameter).
>>
>> https://review.typo3.org/#patch,sidebyside,1722,10,t3lib/cache/class.t3lib_cache_factory.php 
>>
>>
>> Could you please check from where the constructor is called in your
>> case? As a quick solution maybe tree to check $cacheManager with is_a()
>> for being a "t3lib_cache_Manager" and if not (or if it's null?) get a
>> backtrace to see from where and how the cache-factory is called.
>>
>>
>> The singleton is usually instanciated at:
>>
>> t3lib/class.t3lib_cache.php:
>> $GLOBALS['typo3CacheFactory'] =
>> t3lib_div::makeInstance('t3lib_cache_Factory', 'production',
>> $GLOBALS['typo3CacheManager']);
>>
>>
>> Please check if there is this 'production'-setting for you of if for
>> some strange reason your cache-singleton is constructed somewhere else
>> (which imho it shouldn't).
>>
>>
>> Good luck,
>>   Stefan Neufeind
> hi stefan,
>
> thanks for your reply!
>
> i put this now, i hope that's what you meant:
>      63         public function __construct($context, 
> t3lib_cache_Manager $cacheManager) {
>      64                 if ($cacheManager == NULL || (! 
> is_a($cacheManager, 't3lib_cache_Manager'))) {
>      65                         debug_print_backtrace();
>      66                 }
>
> as soon as i get a backtrace, i will post it here.
>
>
well this is strange...

the error happened again a minute ago... but there was no backtrace?! i 
cleared all caches... i am missing something?

cheers,
till



More information about the TYPO3-project-typo3v4mvc mailing list