Bug #30862
Install Tool throws database errors in Upgrade Wizard, because caching framework tables are still missing
| Status: | Resolved | Start date: | 2011-10-12 | |
|---|---|---|---|---|
| Priority: | Must have | Due date: | ||
| Assignee: | - | % Done: | 0% |
|
| Category: | Install Tool | |||
| Target version: | 4.6.0 | |||
| TYPO3 Version: | 4.6 | Complexity: | ||
| PHP Version: | ||||
| Votes: | 0 |
Description
Hi,
On upgrading a site from v4.5.6 to v4.6.0RC1 or the latest development version from git I get pages full of debug statements as soon as I enter the Upgrade Wizard in the Install Tool. It complains about a missing table cf_cache_hash.
This should not happen because the Upgrade Wizard is the first step one should take when upgrading - you do the Database Compare only after finishing all steps in the wizard.
Loek
Just a some of the debug output:
exec_SELECTquery
caller t3lib_DB::exec_SELECTquery
ERROR Table 'database.cf_cache_hash' doesn't exist
lastBuiltQuery SELECT content FROM cf_cache_hash WHERE identifier = 'd4c4bdb32f0021489bfb4b23c7431065' AND cf_cache_hash.expires >= 1318446717 LIMIT 1
debug_backtrace require#141 // tx_install->init#347 // tx_install->updateWizard#508 // tx_install->updateWizard_parts#6350 // Tx_Install_Updates_Base->shouldRenderWizard#6391 // tx_coreupdates_addflexformstoacl->checkForUpdate#171 // tx_coreupdates_addflexformstoacl->getGroupAddFields#51 // t3lib_BEfunc::getRegisteredFlexForms#116 // t3lib_div::xml2array#1025 // t3lib_pageSelect::getHash#2313 // t3lib_cache_frontend_VariableFrontend->get#932 // t3lib_cache_backend_DbBackend->get#108 // t3lib_DB->exec_SELECTgetSingleRow#208 // t3lib_DB->exec_SELECTquery#310 // t3lib_DB->debug#191
exec_SELECTquery
caller t3lib_DB::exec_SELECTquery
ERROR Table 'database.cf_cache_hash' doesn't exist
lastBuiltQuery SELECT content FROM cf_cache_hash WHERE identifier = 'd4c4bdb32f0021489bfb4b23c7431065' AND cf_cache_hash.expires >= 1318446717 LIMIT 1
debug_backtrace require#141 // tx_install->init#347 // tx_install->updateWizard#508 // tx_install->updateWizard_parts#6350 // Tx_Install_Updates_Base->shouldRenderWizard#6391 // tx_coreupdates_addflexformstoacl->checkForUpdate#171 // tx_coreupdates_addflexformstoacl->getGroupAddFields#51 // t3lib_BEfunc::getRegisteredFlexForms#116 // t3lib_div::xml2array#1025 // t3lib_pageSelect::getHash#2313 // t3lib_cache_frontend_VariableFrontend->get#932 // t3lib_cache_backend_DbBackend->get#108 // t3lib_DB->exec_SELECTgetSingleRow#208 // t3lib_DB->debug#312
exec_DELETEquery
caller t3lib_DB::exec_DELETEquery
ERROR Table 'database.cf_cache_hash' doesn't exist
lastBuiltQuery DELETE FROM cf_cache_hash WHERE identifier = 'd4c4bdb32f0021489bfb4b23c7431065'
debug_backtrace require#141 // tx_install->init#347 // tx_install->updateWizard#508 // tx_install->updateWizard_parts#6350 // Tx_Install_Updates_Base->shouldRenderWizard#6391 // tx_coreupdates_addflexformstoacl->checkForUpdate#171 // tx_coreupdates_addflexformstoacl->getGroupAddFields#51 // t3lib_BEfunc::getRegisteredFlexForms#116 // t3lib_div::xml2array#1025 // t3lib_pageSelect::storeHash#2318 // t3lib_cache_frontend_VariableFrontend->set#961 // t3lib_cache_backend_DbBackend->set#88 // t3lib_cache_backend_DbBackend->remove#156 // t3lib_DB->exec_DELETEquery#260 // t3lib_DB->debug#166
Related issues
| related to Core - Bug #31246: Internal extension information is not updated properly | Resolved | 2011-10-24 | ||
| related to TYPO3 Console Interface - Feature #31247: Port caching framework table handling for Upgrade Wizards | New | 2011-10-25 |
Associated revisions
[BUGFIX] Install tool throws database errors in upgrade wizard
Some upgrade wizards like addflexformstoacl need working cache tables.
Those might not exist already. The patch forces creation of those tables
if calling the upgrade wizard.
Change-Id: I5d831bb819389cd2bf90854bb300408b4e6ed823
Resolves: #30862
Reviewed-on: http://review.typo3.org/6262
Reviewed-by: Susanne Moog
Tested-by: Susanne Moog
Reviewed-by: Oliver Hader
Reviewed-by: Wouter Wolters
Reviewed-by: Tolleiv Nietsch
Tested-by: Tolleiv Nietsch
History
Updated by Chris topher over 1 year ago
- Subject changed from Install Tool throws database errors in Upgrade Wizard to Install Tool throws database errors in Upgrade Wizard, because caching framework tables are still missing
Updated by Björn Pedersen over 1 year ago
Looking at the code,
it seems using xml2array (via t3lib_BEfunc::getRegisteredFlexForm) is no good idea for the install tool.
xml2arrayProcess would be suited better here, as it does not do caching.
But just replacing getRegisteredFlexForm will not be enough, as t3lib_div::resolveSheetDefInDS also used xml2array.
Updated by Björn Pedersen over 1 year ago
One idea: force the cf setup to use the nocache backend if in install tool.
Updated by Mr. Hudson over 1 year ago
- Status changed from New to Under Review
Patch set 1 of change I5d831bb819389cd2bf90854bb300408b4e6ed823 has been pushed to the review server.
It is available at http://review.typo3.org/6262
Updated by Christian Kuhn over 1 year ago
Pushed a patch to fix this.
How to reproduce: Just create a broken cf table structure and call the upgrade wizard. For example drop table cf_cache_hash, change a field of some other cf_ table, and drop one field of another cf_ table.
Call upgrade wizard in install tool without patch -> see some failing SQL, apply patch and they are gone.
Updated by Mr. Hudson over 1 year ago
Patch set 2 of change I5d831bb819389cd2bf90854bb300408b4e6ed823 has been pushed to the review server.
It is available at http://review.typo3.org/6262
Updated by Tolleiv Nietsch over 1 year ago
- Status changed from Under Review to Resolved