[TASK] Extension Cache Behaviour is messy
authorBenjamin Mack <benni@typo3.org>
Sat, 9 Jul 2011 14:30:52 +0000 (16:30 +0200)
committerSusanne Moog <typo3@susannemoog.de>
Sat, 9 Jul 2011 17:38:08 +0000 (19:38 +0200)
The cache files in typo3conf/temp_CACHED_* were by default set to a hash that
was based on the extensionlist, but this is quite unnecessary, so the extCache
option was removed to be only used once in the typo3conf/ directory in order
to prevent hundreds of temp_CACHED_* files that don't get cleaned up
automatically. From now on the option $TYPO3_CONF_VARS['EXT']['extCache'] can
only be set to 0 or 1.

Change-Id: Ic6081deeb306d8a7ef8b5f3d358c1d63ddb74ae8
Resolves: #28040
Reviewed-on: http://review.typo3.org/3197
Reviewed-by: Georg Ringer
Reviewed-by: Andreas Wolf
Tested-by: Andreas Wolf
Reviewed-by: Susanne Moog
Tested-by: Susanne Moog
NEWS.txt
t3lib/class.t3lib_extmgm.php
t3lib/config_default.php

index 5643301..616eb41 100644 (file)
--- a/NEWS.txt
+++ b/NEWS.txt
@@ -52,6 +52,15 @@ The feature to statically publish a page from the Admin Panel has been dropped.
 There are better ways to achieve such a functionality, like e.g.
 EXT:nc_staticfilecache.
 
 There are better ways to achieve such a functionality, like e.g.
 EXT:nc_staticfilecache.
 
+* Removed extCache=2 option
+
+The cache files in typo3conf/temp_CACHED_* were by default set to a hash that
+was based on the extensionlist, but this is quite unnecessary, so the extCache
+option was removed to be only used once in the typo3conf/ directory in order
+to prevent hundreds of temp_CACHED_* files that don't get cleaned up
+automatically. From now on the option $TYPO3_CONF_VARS['EXT']['extCache'] can
+only be set to 0 or 1.
+
 
 Workspaces
 -------------------------------------------------------------------------------
 
 Workspaces
 -------------------------------------------------------------------------------
@@ -183,4 +192,4 @@ in own extensions can be found at http://wiki.typo3.org/Caching_framework.
 
 The database backend must not define own tables and table definitions anymore.
 Cache tables and table layout of the database backend will created by the
 
 The database backend must not define own tables and table definitions anymore.
 Cache tables and table layout of the database backend will created by the
-caching framework when needed.
\ No newline at end of file
+caching framework when needed.
index 1b81a98..3f7fe4a 100644 (file)
@@ -1314,7 +1314,7 @@ tt_content.' . $key . $prefix . ' {
        /**
         * Loading extensions configured in $GLOBALS['TYPO3_CONF_VARS']['EXT']['extList']
         *
        /**
         * Loading extensions configured in $GLOBALS['TYPO3_CONF_VARS']['EXT']['extList']
         *
-        * CACHING ON: ($GLOBALS['TYPO3_CONF_VARS']['EXT']['extCache'] = 1 or 2)
+        * CACHING ON: ($GLOBALS['TYPO3_CONF_VARS']['EXT']['extCache'] = 1)
         *               If caching is enabled (and possible), the output will be $extensions['_CACHEFILE'] set to the cacheFilePrefix. Subsequently the cache files must be included then since those will eventually set up the extensions.
         *               If cachefiles are not found they will be generated
         * CACHING OFF: ($GLOBALS['TYPO3_CONF_VARS']['EXT']['extCache'] = 0)
         *               If caching is enabled (and possible), the output will be $extensions['_CACHEFILE'] set to the cacheFilePrefix. Subsequently the cache files must be included then since those will eventually set up the extensions.
         *               If cachefiles are not found they will be generated
         * CACHING OFF: ($GLOBALS['TYPO3_CONF_VARS']['EXT']['extCache'] = 0)
@@ -1590,10 +1590,8 @@ $GLOBALS[\'TYPO3_LOADED_EXT\'] = unserialize(stripslashes(\'' . addslashes(seria
                $cacheFileSuffix = (TYPO3_MODE == 'FE' ? '_FE' : '');
                $cacheFilePrefix = 'temp_CACHED' . $cacheFileSuffix;
 
                $cacheFileSuffix = (TYPO3_MODE == 'FE' ? '_FE' : '');
                $cacheFilePrefix = 'temp_CACHED' . $cacheFileSuffix;
 
-               if ($extensionCacheBehaviour == 1) {
+               if ($extensionCacheBehaviour) {
                        $cacheFilePrefix .= '_ps' . substr(t3lib_div::shortMD5(PATH_site . '|' . $GLOBALS['TYPO_VERSION']), 0, 4);
                        $cacheFilePrefix .= '_ps' . substr(t3lib_div::shortMD5(PATH_site . '|' . $GLOBALS['TYPO_VERSION']), 0, 4);
-               } elseif ($extensionCacheBehaviour == 2) {
-                       $cacheFilePrefix .= '_' . t3lib_div::shortMD5(self::getEnabledExtensionList());
                }
 
                return $cacheFilePrefix;
                }
 
                return $cacheFilePrefix;
index 9437181..c986b85 100644 (file)
@@ -165,7 +165,7 @@ $TYPO3_CONF_VARS = array(
                'requiredExt' => '',            // String. List of additional extensions which are REQUIRED and cannot be unloaded by the Extension Manager!
                'ignoredExt' => '',                     // String. List of extensions to be ignored (not loaded), e.g. "em" can be disabled this way.
                'excludeForPackaging' => '(CVS|\..*|.*~|.*\.bak)',              // String: List of directories and files which will not be packaged into extensions nor taken into account otherwise by the Extension Manager. Perl regular expression syntax!
                'requiredExt' => '',            // String. List of additional extensions which are REQUIRED and cannot be unloaded by the Extension Manager!
                'ignoredExt' => '',                     // String. List of extensions to be ignored (not loaded), e.g. "em" can be disabled this way.
                'excludeForPackaging' => '(CVS|\..*|.*~|.*\.bak)',              // String: List of directories and files which will not be packaged into extensions nor taken into account otherwise by the Extension Manager. Perl regular expression syntax!
-               'extCache' => 1,                                                // <p>Integer (0, 1, 2, 3)</p><dl><dt>0</dt><dd>ext-scripts (ext_localconf.php and ext_tables.php) are NOT cached, but included every time</dd><dt>1</dt><dd>scripts cached to typo3conf/temp_CACHED_[sitePathHash]* (saves some milliseconds even with PHP accelerators)</dd><dt>2</dt><dd>scripts cached and prefix includes a hash based on the 'extList' string</dd><dt>3</dt><dd>scripts cached to typo3conf/temp_CACHED_* (no hash included at all...)</dd></dl>
+               'extCache' => 1,                                                // <p>Integer (0, 1)</p><dl><dt>0</dt><dd>ext-scripts (ext_localconf.php and ext_tables.php) are NOT cached, but included every time</dd><dt>1</dt><dd>scripts cached to typo3conf/temp_CACHED_[sitePathHash]* (saves some milliseconds even with PHP accelerators)</dd></dl>
                'extList' => 'filelist,version,tsconfig_help,context_help,extra_page_cm_options,impexp,belog,about,cshmanual,aboutmodules,setup,opendocs,install,t3editor,felogin,feedit,recycler',                                             // String (exclude) List of extensions which are enabled for this install. Use the Extension Manager (EM) to manage this!
                'extList_FE' => '',                                             // String (exclude). Same as extList, but only this extensions are loaded in FE
                'extConf' => array(                                             // Config-options for extensions, stored as serialized arrays by extension-keys. Handled automatically by the EM.
                'extList' => 'filelist,version,tsconfig_help,context_help,extra_page_cm_options,impexp,belog,about,cshmanual,aboutmodules,setup,opendocs,install,t3editor,felogin,feedit,recycler',                                             // String (exclude) List of extensions which are enabled for this install. Use the Extension Manager (EM) to manage this!
                'extList_FE' => '',                                             // String (exclude). Same as extList, but only this extensions are loaded in FE
                'extConf' => array(                                             // Config-options for extensions, stored as serialized arrays by extension-keys. Handled automatically by the EM.