[TYPO3-core] New feature in 6.2.1? TCA caching

Ernesto Baschny [cron] ernst at cron-it.de
Thu Apr 17 11:50:50 CEST 2014


Hi,

you might have noticed in 6.2.1 we've added a new FEATURE [1]. This is
unusual, but is part of the "plan" of getting 6.2 even more performant
as we go, considering that we will support it for further 3 years at least.

The new feature in a nutshell allows the core to to cache the final
version of TCA including extensions manipulations.

In order to do this, extensions now have the option to outsource TCA
manipulating method calls from ext_tables.php and ext_localconf.php into
files in the extensions directory Configuration/TCA/Overrides/. These
files will be executed right before building the cached TCA (and not
called anymore once the TCA is cached). These files must only contain
PHP code that manipulate TCA (like addTCAColumns or addToAllTCATypes).

Category Registry changes will also be applied after
Configuration/TCA/Overrides/ has been processed so that
makeCategorizable calls can now also happen in files in this locations
and do not need to stay in ext_localconf.php where they also would be
executed on every request.

This will give backend requests quite a performance boost once
extensions start using these files.

For extensions to exploit the full benefit of it but still staying
compatible with 6.2.0 in specific and previous releases, consider adding
a conditional inclusion of these files for users which are still on
older versions of TYPO3:

if (
  version_compare(TYPO3_branch, '6.0', '<')
  ||
\TYPO3\CMS\Core\Utility\VersionNumberUtility::convertVersionNumberToInteger(TYPO3_version)
< 6002001) {

require_once(t3lib_extMgm::extPath($_EXTKEY).'Configuration/TCA/Overrides/TcaAdditions.php');
}

Cheers,
Ernesto

[1] http://wiki.typo3.org/TYPO3_CMS_6.2.1#Important


More information about the TYPO3-team-core mailing list