Bug #57120
closedUpgrade from 6.1.7 to 6.2beta7 / Install Tool fails / 'The package "X" depends on "Y" which is not present in the system'
0%
Description
I did nothing special, just changed the symlink to the new source and deleted all the cache files.
Then I tried to access the Install Tool typo3/sysext/install/Start/Install.php
PHP Fatal error: Uncaught exception 'UnexpectedValueException' with message 'The package "X" depends on "Y" which is not present in the system.' in /private/var/www/typo3_src-6.2.0beta7/typo3/sysext/core/Classes/Package/DependencyResolver.php:146
Y is installed and in the list of extensions before X in LocalConfiguration.php
Am I missing something?
Found no special upgrade instructions.
----
20-Mar-2014 20:28:38 Europe/Berlin] PHP Fatal error: Uncaught exception 'UnexpectedValueException' with message 'The package "X" depends on "Y" which is not present in the system.' in /private/var/www/typo3_src-6.2.0beta7/typo3/sysext/core/Classes/Package/DependencyResolver.php:146
Stack trace:
#0 /private/var/www/typo3_src-6.2.0beta7/typo3/sysext/core/Classes/Package/DependencyResolver.php(206): TYPO3\CMS\Core\Package\DependencyResolver->buildDependencyGraphForPackages(Array, Array)
#1 /private/var/www/typo3_src-6.2.0beta7/typo3/sysext/core/Classes/Package/DependencyResolver.php(61): TYPO3\CMS\Core\Package\DependencyResolver->buildDependencyGraph(Array)
#2 /private/var/www/typo3_src-6.2.0beta7/typo3/sysext/core/Classes/Package/PackageManager.php(687): TYPO3\CMS\Core\Package\DependencyResolver->sortPackageStatesConfigurationByDependency(Array)
#3 /private/var/www/typo3_src-6.2.0beta7/typo3/sysext/core/Resources/PHP/TYPO3.Flow/Classes/TYPO3/Flow/Package/PackageManager.php(911): TYPO3\CMS\Core\Package\PackageManager->sortAvailable in /private/var/www/typo3_src-6.2.0beta7/typo3/sysext/core/Classes/Package/DependencyResolver.php on line 146
Files
Updated by Markus Klein almost 11 years ago
Can you please post your LocalConf and ext_emconf.php files of the affected extensions
Updated by Ernesto Baschny almost 11 years ago
- Status changed from New to Needs Feedback
Together with the LocalConf and the ext_emconf.php file, please provide the information from which TYPO3 version you are coming from and trying to upgrade. Thanks!
Updated by Markus Klein almost 11 years ago
@Ernesto: Title says "Upgrade from 6.1.7 to 6.2beta7" ;-)
Updated by Wolfgang Klinger almost 11 years ago
- File config_files.tar.gz config_files.tar.gz added
X = user_something_distribution_search
Y = smarty
from 6.1.7 -> 6.2beta7
tia
Updated by Markus Klein almost 11 years ago
Looks like the problem is that smarty is has dependency for TYPO3 up to 6.1.99.
So 6.2 core can't install it.
Updated by Wolfgang Klinger almost 11 years ago
I changed it to 6.3.99 but that doesn’t affect anything
Updated by Wolfgang Klinger almost 11 years ago
;-)
now I removed 'smarty' as a dependency for extension X for testing … ok … but now I get the next weird error:
------
[26-Mar-2014 13:28:58 Europe/Berlin] PHP Fatal error: Uncaught exception 'TYPO3\CMS\Install\Controller\Exception\RedirectLoopException' with message 'Redirect loop aborted. If this message is shown again after a reload, your setup is so weird that the install tool is unable to handle it. Please make sure to remove the "install[redirectCount]" parameter from your request or restart the install tool from the backend navigation.' in /private/var/www/typo3_src-6.2.0/typo3/sysext/install/Classes/Controller/AbstractController.php:544
Stack trace:
#0 /private/var/www/typo3_src-6.2.0/typo3/sysext/install/Classes/Controller/StepController.php(122): TYPO3\CMS\Install\Controller\AbstractController->redirect()
#1 /private/var/www/typo3_src-6.2.0/typo3/sysext/install/Classes/Controller/StepController.php(70): TYPO3\CMS\Install\Controller\StepController->outputSpecificStep()
#2 /private/var/www/typo3_src-6.2.0/typo3/sysext/install/Start/Install.php(132): TYPO3\CMS\Install\Controller\StepController->execute()
#3 {main}
thrown in /private/var/www/typo3_src-6.2.0/typo3/sysext/install/Classes/Controller/AbstractController.php on line 544
------
any hints?
Updated by Markus Klein almost 11 years ago
What is the URL of the page that issues this exception?
Especially the install[action]= part is of interest
Updated by Wolfgang Klinger almost 11 years ago
URL:
/typo3/sysext/install/Start/Install.php?install[redirectCount]=9&install[context]=standalone&install[controller]=step&install[action]=databaseConnect
Updated by Markus Klein almost 11 years ago
There's something wrong with your database connection. Please check your host, port/socket settings.
Updated by Alexander Opitz over 10 years ago
- Status changed from Needs Feedback to Closed
No feedback within the last 90 days => closing this ticket.
If you think that this is the wrong decision or experience this issue again, then please write to the mailing list typo3.teams.bugs with issue number and an explanation or open a new ticket and add a relation to this ticket number.
Updated by Florian Seirer about 10 years ago
Same problem here during the update from 6.2.4 to 6.2.6
The installation was running just fine on 6.2.4, and all I did was changing the symlinks to the 6.2.6 path.
I got only error-500 messages in the BE and FE after that.
/typo3conf/PackageStates.php was rewritten, and was suddenly missing all active core extensions.
The error messages in the logfiles explain why the FE and BE weren't running, but not why PackageStates.php was missing the core extensions.
FE error log:
Several hundred lines of this: [Thu Nov 06 14:45:01 2014] [error] [client 10.10.133.1] PHP Warning: array_diff(): Argument #1 is not an array in /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Classes/Package/DependencyResolver.php on line 215 [Thu Nov 06 14:45:01 2014] [error] [client 10.10.133.1] PHP Warning: array_merge(): Argument #2 is not an array in /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Classes/Package/DependencyResolver.php on line 220 ... [Thu Nov 06 14:45:01 2014] [error] [client 10.10.133.1] PHP Fatal error: Uncaught exception 'UnexpectedValueException' with message 'The package "imagecycle" depends on "cms" which is not present in the system.' in /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Classes/Package/DependencyResolver.php:140 Stack trace: #0 /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Classes/Package/DependencyResolver.php(240): TYPO3\\CMS\\Core\\Package\\DependencyResolver->buildDependencyGraphForPackages(Array, Array) #1 /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Classes/Package/DependencyResolver.php(51): TYPO3\\CMS\\Core\\Package\\DependencyResolver->buildDependencyGraph(Array) #2 /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Classes/Package/PackageManager.php(701): TYPO3\\CMS\\Core\\Package\\DependencyResolver->sortPackageStatesConfigurationByDependency(Array) #3 /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Resources/PHP/TYPO3.Flow/Classes/TYPO3/Flow/Package/PackageManager.php(911): TYPO3\\CMS\\Core\\Package\\PackageManager->sortAvailablePackagesByDependencies() #4 /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Clas in /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Classes/Package/DependencyResolver.php on line 140
BE error log:
[Thu Nov 06 14:45:52 2014] [error] [client 10.10.141.2] PHP Fatal error: Uncaught exception 'UnexpectedValueException' with message 'The package "imagecycle" depends on "cms" which is not present in the system.' in /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Classes/Package/DependencyResolver.php:140 Stack trace: #0 /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Classes/Package/DependencyResolver.php(240): TYPO3\\CMS\\Core\\Package\\DependencyResolver->buildDependencyGraphForPackages(Array, Array) #1 /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Classes/Package/DependencyResolver.php(51): TYPO3\\CMS\\Core\\Package\\DependencyResolver->buildDependencyGraph(Array) #2 /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Classes/Package/PackageManager.php(701): TYPO3\\CMS\\Core\\Package\\DependencyResolver->sortPackageStatesConfigurationByDependency(Array) #3 /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Resources/PHP/TYPO3.Flow/Classes/TYPO3/Flow/Package/PackageManager.php(911): TYPO3\\CMS\\Core\\Package\\PackageManager->sortAvailablePackagesByDependencies() #4 /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Clas in /var/www/typo3/typo3-6.2.6/typo3/sysext/core/Classes/Package/DependencyResolver.php on line 140, referer: https://www.domain.com/somethingsomething
packageStates.php, missing "active" core extensions:
<?php # PackageStates.php # This file is maintained by Flow's package management. Although you can edit it # manually, you should rather use the command line commands for maintaining packages. # You'll find detailed information about the typo3.flow:package:* commands in their # respective help screens. # This file will be regenerated automatically if it doesn't exist. Deleting this file # should, however, never become necessary if you use the package commands. return array ( 'packages' => array ( 'templavoila' => array ( 'state' => 'active', 'packagePath' => 'typo3conf/ext/templavoila/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'manifestPath' => '', 'composerName' => 'templavoila/templavoila', 'dependencies' => NULL, ), 'static_info_tables' => array ( 'state' => 'active', 'packagePath' => 'typo3conf/ext/static_info_tables/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'sm_clearcachecm' => array ( 'state' => 'active', 'packagePath' => 'typo3conf/ext/sm_clearcachecm/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'sitemap' => array ( 'state' => 'active', 'packagePath' => 'typo3conf/ext/sitemap/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'rghelpmodule' => array ( 'state' => 'active', 'packagePath' => 'typo3conf/ext/rghelpmodule/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'realurl' => array ( 'state' => 'active', 'packagePath' => 'typo3conf/ext/realurl/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'portalauth' => array ( 'state' => 'active', 'packagePath' => 'typo3conf/ext/portalauth/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'nothing' => array ( 'state' => 'active', 'packagePath' => 'typo3conf/ext/nothing/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'ml_links' => array ( 'state' => 'active', 'packagePath' => 'typo3conf/ext/ml_links/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'ke_search' => array ( 'state' => 'active', 'packagePath' => 'typo3conf/ext/ke_search/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'jftcaforms' => array ( 'state' => 'active', 'packagePath' => 'typo3conf/ext/jftcaforms/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'imagecycle' => array ( 'state' => 'active', 'packagePath' => 'typo3conf/ext/imagecycle/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'dd_googlesitemap' => array ( 'state' => 'active', 'packagePath' => 'typo3conf/ext/dd_googlesitemap/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'documentation' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-documentation', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/documentation/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'about' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-about', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/about/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'aboutmodules' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-aboutmodules', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/aboutmodules/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'adodb' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-adodb', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/adodb/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'context_help' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-context-help', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/context_help/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'dbal' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-dbal', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/dbal/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'extra_page_cm_options' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-extra-page-cm-options', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/extra_page_cm_options/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'feedit' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-feedit', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/feedit/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'felogin' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-felogin', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/felogin/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'form' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-form', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/form/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'indexed_search' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-indexed-search', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/indexed_search/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'indexed_search_mysql' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-indexed-search-mysql', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/indexed_search_mysql/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'openid' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-openid', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/openid/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'sys_action' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-sys-action', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/sys_action/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'taskcenter' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-taskcenter', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/taskcenter/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'version' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-version', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/version/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), 'workspaces' => array ( 'manifestPath' => '', 'composerName' => 'typo3/cms-workspaces', 'state' => 'inactive', 'packagePath' => 'typo3/sysext/workspaces/', 'classesPath' => 'Classes/', 'suggestions' => NULL, 'dependencies' => NULL, ), ), 'version' => 4, ) ?>
Updated by Markus Klein about 10 years ago
- Status changed from Closed to Needs Feedback
I suppose you've some opcode cache running, which did not properly detect the exchange of the symlink. TYPO3 core itself can do nothing about this problem.
You need to clear all caches via install tool (typo3 caches and opcode cache) before you access the installation. Otherwise accessing files inside the source may not work. This also explains the reaction of the package manager to remove non-existing packages (access not possible to sysexts).
Updated by Alexander Opitz about 10 years ago
Hi Markus and Christian,
I thought again about this issue ... it seams a chicken/egg issue ... you can't start install tool course the packages can't be solved but you need to clear the opcode cache. This correlates with #63721
Christian, wasn't the original plan, that installer mode shouldn't get class loader cache build?
Updated by Markus Klein about 10 years ago
Alex, you CAN access the Install Tool right after exchanging the symlink to clear the opcode cache.
But if you start accessing the BE or the like and the opcode cache contains invalid paths, then you run into troubles because at that time the package manager will cleanup the PackageStates by removing all inaccessible extensions.
The question is more: How can we ensure that people clear the opcode cache?
Updated by Alexander Opitz about 10 years ago
Spoke with Christian around this area.
Maybe we can add the clear opcode cache in the class_loader shutdown function I'm introducing?
Updated by Markus Klein about 10 years ago
Well, yes and no. The opcode cache clearing is somewhat an expensive operation as it usually clears the whole cache. (for all sites on the server)
Hence we should keep such flushes to an absolute minimum.
I'd rather prefer to have some means where we know which version was last used and where we can detect that a new source is here very early.
Could be some kind of compat_version info in localconf or even a dedicated file.
Updated by Alexander Opitz about 10 years ago
But, how do we get the new number, if the opcode cache gives us the false file? And crashing in class loader shouldn't be so common.
Updated by Markus Klein about 10 years ago
Hm, good point of course. So the only way would then be to clear the opcode cache right before switching the symlink.
So some kind of "prepare manual update" button would be needed in Install Tool. (where we clear all the caches like system cache, opcode cache,etc)
Updated by Alexander Opitz about 10 years ago
Thats not possible as between clearing before and switching symlinks another process may regenerate the opcode cache.
Updated by Markus Klein almost 10 years ago
Is this still an issue? Or can we close this one?
Updated by Mathias Schreiber over 9 years ago
- Status changed from Needs Feedback to Closed