[BUGFIX] Install tool performs all db updates 99/21799/2
authorSusanne Moog <typo3@susannemoog.de>
Tue, 2 Jul 2013 13:52:48 +0000 (15:52 +0200)
committerAnja Leichsenring <aleichsenring@ab-softlab.de>
Tue, 2 Jul 2013 14:36:40 +0000 (16:36 +0200)
The update wizard should only perform database
updates for the caching framework tables. At
the moment it silently and automatically executes
all ext_tables.sql files.

Resolves: #49591
Releases: 6.2
Change-Id: I4645d729dfa22917ae56ce03955d2f53a7a70c1c
Reviewed-on: https://review.typo3.org/21799
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
typo3/sysext/install/Classes/Controller/Action/Tool/UpdateWizard.php

index f9223e7..e0b0aad 100644 (file)
@@ -260,7 +260,9 @@ class UpdateWizard extends Action\AbstractAction implements Action\ActionInterfa
 
                /** @var \TYPO3\CMS\Install\Service\SqlExpectedSchemaService $expectedSchemaService */
                $expectedSchemaService = $this->objectManager->get('TYPO3\\CMS\\Install\\Service\\SqlExpectedSchemaService');
-               $neededTableDefinition = $expectedSchemaService->getExpectedDatabaseSchema();
+               $expectedSchemaString = $expectedSchemaService->getCachingFrameworkRequiredDatabaseSchema();
+               $cleanedExpectedSchemaString = implode(LF, $sqlHandler->getStatementArray($expectedSchemaString, TRUE, '^CREATE TABLE '));
+               $neededTableDefinition = $sqlHandler->getFieldDefinitions_fileContent($cleanedExpectedSchemaString);
                $currentTableDefinition = $sqlHandler->getFieldDefinitions_database();
                $updateTableDefinition = $sqlHandler->getDatabaseExtra($neededTableDefinition, $currentTableDefinition);
                $updateStatements = $sqlHandler->getUpdateSuggestions($updateTableDefinition);