Thoni
August 8, 2022, 7:55am
1
Hallo,
beim Deaktivieren eines Moduls (nicht das su_shopcontrol) zeigt sich darüber im Backend die folgende Fehlermeldung und das Modul bleibt aktiv:
#0 /www/htdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php(166): Doctrine\DBAL\Driver\AbstractMySQLDriver->convertException(‘An exception oc…’, Object(Doctrine\DBAL\Driver\PDOException))
#1 /www/htdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php(146): Doctrine\DBAL\DBALException::wrapException(Object(Doctrine\DBAL\Driver\PDOMySql\Driver), Object(Doctrine\DBAL\Driver\PDOException), ‘An exception oc…’)
#2 /www/htdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(1069): Doctrine\DBAL\DBALException::driverExceptionDuringQuery(Object(Doctrine\DBAL\Driver\PDOMySql\Driver), Object(Doctrine\DBAL\Driver\PDOException), ‘INSERT INTO oxc…’, Array)
#3 /www/htdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/Query/QueryBuilder.php(218): Doctrine\DBAL\Connection->executeUpdate(‘INSERT INTO oxc…’, Array, Array)
#4 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Internal/Framework/Config/Dao/ShopConfigurationSettingDao.php(98): Doctrine\DBAL\Query\QueryBuilder->execute()
#5 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Internal/Framework/Module/Setup/Handler/ModulePathHandler.php(56): OxidEsales\EshopCommunity\Internal\Framework\Config\Dao\ShopConfigurationSettingDao->save(Object(OxidEsales\EshopCommunity\Internal\Framework\Config\DataObject\ShopConfigurationSetting))
#6 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Internal/Framework/Module/Setup/Service/ModuleConfigurationHandlingService.php(48): OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Handler\ModulePathHandler->handleOnModuleDeactivation(Object(OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\DataObject\ModuleConfiguration), 1)
#7 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Internal/Framework/Module/Setup/Service/ModuleActivationService.php(131): OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Service\ModuleConfigurationHandlingService->handleOnDeactivation(Object(OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\DataObject\ModuleConfiguration), 1)
#8 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Internal/Framework/Module/Setup/Bridge/ModuleActivationBridge.php(62): OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Service\ModuleActivationService->deactivate(‘clean_order_sel…’, 1)
#9 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Application/Controller/Admin/ModuleMain.php(96): OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Bridge\ModuleActivationBridge->deactivate(‘clean_order_sel…’, 1)
#10 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Core/Controller/BaseController.php(534): OxidEsales\EshopCommunity\Application\Controller\Admin\ModuleMain->deactivateModule()
#11 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Core/ShopControl.php(345): OxidEsales\EshopCommunity\Core\Controller\BaseController->executeFunction(‘deactivateModul…’)
#12 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Core/ShopControl.php(279): OxidEsales\EshopCommunity\Core\ShopControl->executeAction(Object(OxidEsales\Eshop\Application\Controller\Admin\ModuleMain), ‘deactivateModul…’)
#13 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Core/ShopControl.php(142): OxidEsales\EshopCommunity\Core\ShopControl->_process(‘OxidEsales\Esho…’, ‘deactivateModul…’, NULL, NULL)
#14 /www/htdocs/source/modules/assofort/su_shopcontrol.php(18): OxidEsales\EshopCommunity\Core\ShopControl->start()
#15 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Core/OXID.php(27): su_shopcontrol->start()
#16 /www/htdocs/source/index.php(16): OxidEsales\EshopCommunity\Core\OXID::run()
#17 /www/htdocs/source/admin/index.php(12): require_once(‘/www/htdocs/w01…’)
#18 {main}
Kann mir jemand einen Tipp geben, woran das liegen kann?
Danke
Thoni
Schon in die Logs geschaut? Es sollte in einem der Fehler Logs eine sinnvollere Fehlermeldung geben, die mit “An exception occured” anfängt.
Es wäre auch deutlich zielführernder zu sagen, welches Modul man deaktiviert, anstatt welches Modul man nicht deaktiviert. Man ruft auch keine Elektriker nach Hause und sagt “Eine meiner Steckdosen funktioniert nicht, es ist aber nicht die im Badezimmer.”
1 Like
Thoni
August 8, 2022, 5:21pm
3
Es ist eine Eigenentwicklung, was nun aber egal ist, weil sich kein Modul deaktivieren lässt, wie ich inzwischen gemerkt habe.
Das eine Modul nannte ich nur, weil es aufgeführt wurde.
Log:
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry ‘051b2ed2ba3fe0a6ee8ed26779559915’ for key ‘PRIMARY’ at /www/htdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php:55, Doctrine\DBAL\Driver\PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry ‘051b2ed2ba3fe0a6ee8ed26779559915’ for key ‘PRIMARY’ at /www/htdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php:123, PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry ‘051b2ed2ba3fe0a6ee8ed26779559915’ for key ‘PRIMARY’ at /www/htdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php:121)\n[stacktrace]\n#0 /www/htdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php(166): Doctrine\DBAL\Driver\AbstractMySQLDriver->convertException(‘An exception oc…’, Object(Doctrine\DBAL\Driver\PDOException))\n#1 /www/htdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php(146): Doctrine\DBAL\DBALException::wrapException(Object(Doctrine\DBAL\Driver\PDOMySql\Driver), Object(Doctrine\DBAL\Driver\PDOException), ‘An exception oc…’)\n#2 /www/htdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(1069): Doctrine\DBAL\DBALException::driverExceptionDuringQuery(Object(Doctrine\DBAL\Driver\PDOMySql\Driver), Object(Doctrine\DBAL\Driver\PDOException), ‘INSERT INTO oxc…’, Array)\n#3 /www/htdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/Query/QueryBuilder.php(218): Doctrine\DBAL\Connection->executeUpdate(‘INSERT INTO oxc…’, Array, Array)\n#4 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Internal/Framework/Config/Dao/ShopConfigurationSettingDao.php(98): Doctrine\DBAL\Query\QueryBuilder->execute()\n#5 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Internal/Framework/Module/Setup/Handler/ModulePathHandler.php(56): OxidEsales\EshopCommunity\Internal\Framework\Config\Dao\ShopConfigurationSettingDao->save(Object(OxidEsales\EshopCommunity\Internal\Framework\Config\DataObject\ShopConfigurationSetting))\n#6 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Internal/Framework/Module/Setup/Service/ModuleConfigurationHandlingService.php(48): OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Handler\ModulePathHandler->handleOnModuleDeactivation(Object(OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\DataObject\ModuleConfiguration), 1)\n#7 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Internal/Framework/Module/Setup/Service/ModuleActivationService.php(131): OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Service\ModuleConfigurationHandlingService->handleOnDeactivation(Object(OxidEsales\EshopCommunity\Internal\Framework\Module\Configuration\DataObject\ModuleConfiguration), 1)\n#8 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Internal/Framework/Module/Setup/Bridge/ModuleActivationBridge.php(62): OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Service\ModuleActivationService->deactivate(‘clean_order_sel…’, 1)\n#9 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Application/Controller/Admin/ModuleMain.php(96): OxidEsales\EshopCommunity\Internal\Framework\Module\Setup\Bridge\ModuleActivationBridge->deactivate(‘clean_order_sel…’, 1)\n#10 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Core/Controller/BaseController.php(534): OxidEsales\EshopCommunity\Application\Controller\Admin\ModuleMain->deactivateModule()\n#11 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Core/ShopControl.php(345): OxidEsales\EshopCommunity\Core\Controller\BaseController->executeFunction(‘deactivateModul…’)\n#12 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Core/ShopControl.php(279): OxidEsales\EshopCommunity\Core\ShopControl->executeAction(Object(OxidEsales\Eshop\Application\Controller\Admin\ModuleMain), ‘deactivateModul…’)\n#13 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Core/ShopControl.php(142): OxidEsales\EshopCommunity\Core\ShopControl->_process(‘OxidEsales\\Esho…’, ‘deactivateModul…’, NULL, NULL)\n#14 /www/htdocs/source/modules/assofort/su_shopcontrol.php(18): OxidEsales\EshopCommunity\Core\ShopControl->start()\n#15 /www/htdocs/vendor/oxid-esales/oxideshop-ce/source/Core/OXID.php(27): su_shopcontrol->start()\n#16 /www/htdocs/source/index.php(16): OxidEsales\EshopCommunity\Core\OXID::run()\n#17 /www/htdocs/source/admin/index.php(12): require_once(‘/www/htdocs/w01…’)\n#18 {main}\n"]
051b2ed2ba3fe0a6ee8ed26779559915 ist in der Datenbank nur einmal vorhanden, und zwar für die aModulePaths.
Die Fehlermeldung besagt auch, dass nochmal versucht wird den bereits existierenden Eintrag in die Datenbanktabelle zuschreiben.
wir müssten mal herausfinden, warum diese Konfiguration mit einem “INSERT INTO” in die Datenbank geschrieben werden soll.
Ändert dein Modul zufällig beim onDeactivate oder onActivate event die aModulePaths Zeile in der DB?
Thoni
August 9, 2022, 11:37am
6
Nein, das mache ich nicht.
Das sollte aber auch egal sein, meine ich, weil sich, wie ich geschrieben hatte, kein Modul deaktivieren lässt.
Übrigens ist es ein OXID eShop CE 6.2.0_
Thoni:
clean_order_sel…
das ist der einzige hinweis den man aus deiner fehlermeldung entnehmen kann.
klammer doch mal den eintrag ondeactivate in der Metadata.php aus in diesem modul
Thoni
August 9, 2022, 12:12pm
8
Dort steht keine drin.
Es lassen sich alle Module nicht mehr deaktivieren.
YAMLs fehlerhaft ?
vendor/bin/oe-console oe:module:apply-configuration
Thoni
August 9, 2022, 12:20pm
10
Ich habe es gefunden:
Für ein anderes Problem wollte ich im QueryBuilder in der execute() die UPDATEs mitprotokollieren.
Das habe ich wieder raus genommen und schon klappt es:
$handle = fopen (“updatetest.txt”, “w”);
$mxText = date(“Y-m-d H:i:s”).“\n”;
$myText .= $this->connection->executeUpdate($this->getSQL(), $this->params, $this->paramTypes).“\n”;
$myfunctions = debug_backtrace($options = DEBUG_BACKTRACE_IGNORE_ARGS,$limit = 5);
for($i = 0; $i < count($myfunctions); $i++) {
$myText .= $myfunctions[$i].“\n”;
}
fwrite ($handle, $myText);
fclose ($handle);
Sorry für die Anfrage
1 Like
system
Closed
August 9, 2023, 12:21pm
11
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.