Bug #53810

Database analyzer must be first step

Added by Franz Holzinger about 8 years ago. Updated about 4 years ago.

Status:
Closed
Priority:
Must have
Assignee:
-
Category:
-
Target version:
Start date:
2013-11-20
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
6.2
PHP Version:
5.3
Tags:
Complexity:
hard
Is Regression:
No
Sprint Focus:

Description

When I make an upgrade from TYPO3 4.5 to 6.2 I execute several steps. The last step in the Install Tool is the link called "Go to database analyzer".
However this must be the first step. If you do not execute the database analyzer before the updates, then you run into SQL errors.

exec_SELECTquery
caller     TYPO3\CMS\Core\Database\DatabaseConnection::exec_SELECTquery
ERROR     Table 'databasename.sys_file_reference' doesn't exist
lastBuiltQuery     SELECT uid, pid, uid_local AS fileuid, uid_foreign AS targetuid, tablenames AS targettable FROM sys_file_reference WHERE pid=0 AND deleted=0
debug_backtrace     TYPO3\CMS\Install\Controller\ToolController->execute#134 // TYPO3\CMS\Install\Controller\ToolController->dispatchAuthenticationActions#74 // TYPO3\CMS\Install\Controller\Action\Tool\UpdateWizard->handle#176 // TYPO3\CMS\Install\Controller\Action\Tool\UpdateWizard->listUpdates#58 // TYPO3\CMS\Install\Updates\AbstractUpdate->shouldRenderWizard#83 // TYPO3\CMS\Install\Updates\ReferenceIntegrityUpdateWizard->checkForUpdate#127 // TYPO3\CMS\Install\Updates\ReferenceIntegrityUpdateWizard->getRequiredUpdates#50 // TYPO3\CMS\Install\Updates\ReferenceIntegrityUpdateWizard->getInproperConnectedFileReferences#85 // TYPO3\CMS\Install\Updates\ReferenceIntegrityUpdateWizard->getFileReferencesOnRootlevel#114 // TYPO3\CMS\Core\Database\DatabaseConnection->exec_SELECTgetRows#102 // TYPO3\CMS\Core\Database\DatabaseConnection->exec_SELECTquery#364 // TYPO3\CMS\Core\Database\DatabaseConnection->debug#297
exec_SELECTquery
caller     TYPO3\CMS\Core\Database\DatabaseConnection::exec_SELECTquery
ERROR     Table 'databasename.sys_file_reference' doesn't exist
lastBuiltQuery     SELECT uid, pid, uid_local AS fileuid, uid_foreign AS targetuid, tablenames AS targettable FROM sys_file_reference WHERE pid=0 AND deleted=0
debug_backtrace     TYPO3\CMS\Install\Controller\ToolController->execute#134 // TYPO3\CMS\Install\Controller\ToolController->dispatchAuthenticationActions#74 // TYPO3\CMS\Install\Controller\Action\Tool\UpdateWizard->handle#176 // TYPO3\CMS\Install\Controller\Action\Tool\UpdateWizard->listUpdates#58 // TYPO3\CMS\Install\Updates\AbstractUpdate->shouldRenderWizard#83 // TYPO3\CMS\Install\Updates\ReferenceIntegrityUpdateWizard->checkForUpdate#127 // TYPO3\CMS\Install\Updates\ReferenceIntegrityUpdateWizard->getRequiredUpdates#50 // TYPO3\CMS\Install\Updates\ReferenceIntegrityUpdateWizard->getInproperConnectedFileReferences#85 // TYPO3\CMS\Install\Updates\ReferenceIntegrityUpdateWizard->getFileReferencesOnRootlevel#114 // TYPO3\CMS\Core\Database\DatabaseConnection->exec_SELECTgetRows#102 // TYPO3\CMS\Core\Database\DatabaseConnection->debug#366
exec_SELECTquery
caller     TYPO3\CMS\Core\Database\DatabaseConnection::exec_SELECTquery
ERROR     Table 'databasename.sys_file' doesn't exist
lastBuiltQuery     SELECT COUNT(uid) FROM sys_file WHERE identifier_hash = "" OR folder_hash = "" 
debug_backtrace     TYPO3\CMS\Install\Controller\ToolController->execute#134 // TYPO3\CMS\Install\Controller\ToolController->dispatchAuthenticationActions#74 // TYPO3\CMS\Install\Controller\Action\Tool\UpdateWizard->handle#176 // TYPO3\CMS\Install\Controller\Action\Tool\UpdateWizard->listUpdates#58 // TYPO3\CMS\Install\Updates\AbstractUpdate->shouldRenderWizard#83 // TYPO3\CMS\Install\Updates\FileIdentifierHashUpdate->checkForUpdate#127 // TYPO3\CMS\Core\Database\DatabaseConnection->exec_SELECTcountRows#89 // TYPO3\CMS\Core\Database\DatabaseConnection->exec_SELECTquery#426 // TYPO3\CMS\Core\Database\DatabaseConnection->debug#297
exec_SELECTquery
caller     TYPO3\CMS\Core\Database\DatabaseConnection::exec_SELECTquery
ERROR     Table 'databasename.sys_file_storage' doesn't exist
lastBuiltQuery     SELECT COUNT(uid) FROM sys_file_storage WHERE driver = "Local" AND configuration NOT LIKE "%caseSensitive%" 
debug_backtrace     TYPO3\CMS\Install\Controller\ToolController->execute#134 // TYPO3\CMS\Install\Controller\ToolController->dispatchAuthenticationActions#74 // TYPO3\CMS\Install\Controller\Action\Tool\UpdateWizard->handle#176 // TYPO3\CMS\Install\Controller\Action\Tool\UpdateWizard->listUpdates#58 // TYPO3\CMS\Install\Updates\AbstractUpdate->shouldRenderWizard#83 // TYPO3\CMS\Install\Updates\FileIdentifierHashUpdate->checkForUpdate#127 // TYPO3\CMS\Core\Database\DatabaseConnection->exec_SELECTcountRows#95 // TYPO3\CMS\Core\Database\DatabaseConnection->exec_SELECTquery#426 // TYPO3\CMS\Core\Database\DatabaseConnection->debug#297

#1

Updated by Markus Klein about 8 years ago

  • Category set to File Abstraction Layer (FAL)
  • Status changed from New to Accepted
  • Target version set to next-patchlevel
  • Complexity set to hard

This is a chicken/egg problem. If you run all the DB updates first you might remove fields that are still necessary for an Update Wizard in the end.

So a solution would be another FAL Update Wizard that imports the tables, if they are not present. (Independent of the final database analyzer run.)

#2

Updated by Steffen Ritter about 8 years ago

  • Category deleted (File Abstraction Layer (FAL))
  • Target version changed from next-patchlevel to 6.2.0

This is not FAL issue... It applies to all upgrade wizards...

#3

Updated by Benni Mack about 7 years ago

The solution we have in 6.2 fits the needs IMHO. We create new fields and tables before any update wizard and then do the final cleanup at the end of all wizards. Does that work for you? If so, please close this issue.

#4

Updated by Christian Kuhn almost 7 years ago

  • Status changed from Accepted to Resolved

This one is resolved imho in current state of the upgrade wizards.

#5

Updated by Riccardo De Contardi about 4 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF