Jump to content
  • 0

Błędy po aktualizacji PrestaShop z 1.6.1.17 do 1.7.6.7


KamikStudio

Question

Cześć, na własną rękę aktualizuje preste z 1.6.1.17 do 1.7.6.7. Robię to na środowisku testowym, więc bez zbędnych backupów. Aktualizacja przebiegła pomyślnie, jednak wywaliła błędy. Środowisko testowe - strona główna nie pokazuje się, jednak gdy chce wejść w Panel Administracyjny to pokazuje się okno do logowania. Jednak nie mogę się zalogować. Żaden komunikat się nie pokazuje.

Błędy, które widziałem jeszcze w 1.6.1.17 po aktualizacji

[INTERNAL] /home/admin/domains/XXXXX/public_html/modules/salesmanago/vendor/guzzlehttp/guzzle/src/Client.php line 81 - InvalidArgumentException: Magic request methods require a URI and optional options array #0 /home/admin/domains/XXXXX/public_html/vendor/csa/guzzle-bundle/src/DependencyInjection/Configurator/ClientConfigurator.php(48): GuzzleHttp\Client->__call('getEmitter', Array) #1 /home/admin/domains/XXXXX/public_html/var/cache/prod/ContainerIya3fg7/appProdProjectContainer.php(2655): Csa\Bundle\GuzzleBundle\DependencyInjection\Configurator\ClientConfigurator->configure(Object(GuzzleHttp\Client)) #2 /home/admin/domains/XXXXX/public_html/var/cache/prod/ContainerIya3fg7/appProdProjectContainer.php(2105): ContainerIya3fg7\appProdProjectContainer->getCsaGuzzle_Client_AddonsApiService() #3 /home/admin/domains/XXXXX/public_html/var/cache/prod/ContainerIya3fg7/appProdProjectContainer.php(1977): ContainerIya3fg7\appProdProjectContainer->getPrestashop_Addons_ClientApiService() #4 /home/admin/domains/XXXXX/public_html/var/cache/prod/ContainerIya3fg7/appProdProjectContainer.php(2175): ContainerIya3fg7\appProdProjectContainer->getPrestashop_Adapter_Admin_DataProvider_AddonsService() #5 /home/admin/domains/XXXXX/public_html/var/cache/prod/ContainerIya3fg7/getPrestashop_Module_ManagerService.php(8): ContainerIya3fg7\appProdProjectContainer->getPrestashop_Core_Admin_DataProvider_ModuleInterfaceService() #6 /home/admin/domains/XXXXX/public_html/var/cache/prod/ContainerIya3fg7/appProdProjectContainer.php(1620): require('/home/admin/dom...') #7 /home/admin/domains/XXXXX/public_html/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/Container.php(304): ContainerIya3fg7\appProdProjectContainer->load('getPrestashop_M...') #8 /home/admin/domains/XXXXX/public_html/src/Core/Addon/Module/ModuleManagerBuilder.php(103): Symfony\Component\DependencyInjection\Container->get('prestashop.modu...') #9 /home/admin/domains/XXXXX/public_html/XXXXX/autoupgrade/latest/install/upgrade/php/ps_1730_add_quick_access_evaluation_catalog.php(30): PrestaShop\PrestaShop\Core\Addon\Module\ModuleManagerBuilder->build() #10 [internal function]: ps_1730_add_quick_access_evaluation_catalog() #11 /home/admin/domains/XXXXX/public_html/modules/autoupgrade/classes/UpgradeTools/CoreUpgrader/CoreUpgrader.php(395): call_user_func_array('ps_1730_add_qui...', Array) #12 /home/admin/domains/XXXXX/public_html/modules/autoupgrade/classes/UpgradeTools/CoreUpgrader/CoreUpgrader.php(360): PrestaShop\Module\AutoUpgrade\UpgradeTools\CoreUpgrader\CoreUpgrader->runPhpQuery('1.7.3.0', '/* PHP:ps_1730_...') #13 /home/admin/domains/XXXXX/public_html/modules/autoupgrade/classes/UpgradeTools/CoreUpgrader/CoreUpgrader.php(284): PrestaShop\Module\AutoUpgrade\UpgradeTools\CoreUpgrader\CoreUpgrader->runQuery('1.7.3.0', '/* PHP:ps_1730_...') #14 /home/admin/domains/XXXXX/public_html/modules/autoupgrade/classes/UpgradeTools/CoreUpgrader/CoreUpgrader17.php(55): PrestaShop\Module\AutoUpgrade\UpgradeTools\CoreUpgrader\CoreUpgrader->upgradeDb('1.6.1.17') #15 /home/admin/domains/XXXXX/public_html/modules/autoupgrade/classes/UpgradeTools/CoreUpgrader/CoreUpgrader.php(101): PrestaShop\Module\AutoUpgrade\UpgradeTools\CoreUpgrader\CoreUpgrader17->upgradeDb('1.6.1.17') #16 /home/admin/domains/XXXXX/public_html/modules/autoupgrade/classes/TaskRunner/Upgrade/UpgradeDb.php(41): PrestaShop\Module\AutoUpgrade\UpgradeTools\CoreUpgrader\CoreUpgrader->doUpgrade() #17 /home/admin/domains/XXXXX/public_html/XXXXX/autoupgrade/ajax-upgradetab.php(53): PrestaShop\Module\AutoUpgrade\TaskRunner\Upgrade\UpgradeDb->run() #18 {main}

Dołączam także błędy w ząłączniku

Z błędów widzę, że jest problem z modułem autoupgrade i salesmanago - co do reszty nie wiem.

 

new 2.txt

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Dodam jeszcze błędy po włączeniu debuga, które pokazały się na stronie głównej

[PrestaShopDatabaseException]
Table 'admin_test.yv_currency_lang' doesn't exist<br /><br /><pre>SELECT * FROM `yv_currency` a LEFT JOIN `yv_currency_lang` `b` ON a.`id_currency` = b.`id_currency` AND b.`id_lang` = 1 LEFT JOIN `yv_currency_shop` `c` ON a.`id_currency` = c.`id_currency` AND c.`id_shop` = 1 WHERE (a.`id_currency` = 1) LIMIT 1</pre>
at line 769 in file classes/db/Db.php

764.         if ($webservice_call && $errno) {
765.             $dbg = debug_backtrace();
766.             WebserviceRequest::getInstance()->setError(500, '[SQL Error] ' . $this->getMsgError() . '. From ' . (isset($dbg[3]['class']) ? $dbg[3]['class'] : '') . '->' . $dbg[3]['function'] . '() Query was : ' . $sql, 97);
767.         } elseif (_PS_DEBUG_SQL_ && $errno && !defined('PS_INSTALLATION_IN_PROGRESS')) {
768.             if ($sql) {
769.                 throw new PrestaShopDatabaseException($this->getMsgError() . '<br /><br /><pre>' . $sql . '</pre>');
770.             }
771. 
772.             throw new PrestaShopDatabaseException($this->getMsgError());
773.         }
774.     }
DbCore->displayError - [line 385 - classes/db/Db.php] - [1 Arguments]
DbCore->query - [line 663 - classes/db/Db.php] - [1 Arguments]
DbCore->getRow - [line 75 - src/Adapter/EntityMapper.php] - [1 Arguments]
PrestaShop\PrestaShop\Adapter\EntityMapper->load - [line 264 - classes/ObjectModel.php] - [6 Arguments]
ObjectModelCore->__construct - [line 213 - classes/Currency.php] - [3 Arguments]
CurrencyCore->__construct - [line 101 - src/Adapter/Currency/CurrencyDataProvider.php] - [2 Arguments]
PrestaShop\PrestaShop\Adapter\Currency\CurrencyDataProvider->getCurrencyByIsoCode - [line 111 - src/Adapter/Currency/CurrencyDataProvider.php] - [2 Arguments]
PrestaShop\PrestaShop\Adapter\Currency\CurrencyDataProvider->getCurrencyByIsoCodeAndLocale - [line 91 - src/Core/Localization/Currency/DataLayer/CurrencyDatabase.php] - [2 Arguments]
PrestaShop\PrestaShop\Core\Localization\Currency\DataLayer\CurrencyDatabase->doRead - [line 90 - src/Core/Data/Layer/AbstractDataLayer.php] - [1 Arguments]
PrestaShop\PrestaShop\Core\Data\Layer\AbstractDataLayer->read - [line 150 - src/Core/Data/Layer/AbstractDataLayer.php] - [1 Arguments]
PrestaShop\PrestaShop\Core\Data\Layer\AbstractDataLayer->propagateRead - [line 94 - src/Core/Data/Layer/AbstractDataLayer.php] - [1 Arguments]
PrestaShop\PrestaShop\Core\Data\Layer\AbstractDataLayer->read - [line 67 - src/Core/Localization/Currency/CurrencyDataSource.php] - [1 Arguments]
PrestaShop\PrestaShop\Core\Localization\Currency\CurrencyDataSource->getLocalizedCurrencyData - [line 110 - src/Core/Localization/Currency/CurrencyDataSource.php] - [1 Arguments]
PrestaShop\PrestaShop\Core\Localization\Currency\CurrencyDataSource->formatCurrenciesData - [line 97 - src/Core/Localization/Currency/CurrencyDataSource.php] - [2 Arguments]
PrestaShop\PrestaShop\Core\Localization\Currency\CurrencyDataSource->getAllInstalledCurrenciesData - [line 95 - src/Core/Localization/Currency/Repository.php] - [1 Arguments]
PrestaShop\PrestaShop\Core\Localization\Currency\Repository->getAllInstalledCurrencies - [line 207 - src/Core/Localization/Locale/Repository.php] - [1 Arguments]
PrestaShop\PrestaShop\Core\Localization\Locale\Repository->getPriceSpecifications - [line 150 - src/Core/Localization/Locale/Repository.php] - [1 Arguments]
PrestaShop\PrestaShop\Core\Localization\Locale\Repository->getLocale - [line 189 - classes/controller/Controller.php] - [1 Arguments]
ControllerCore->init - [line 271 - classes/controller/FrontController.php]
FrontControllerCore->init - [line 18 - override/classes/controller/FrontController.php]
FrontController->init - [line 273 - classes/controller/Controller.php]
ControllerCore->run - [line 515 - classes/Dispatcher.php]
DispatcherCore->dispatch - [line 28 - index.php]

 

Link to comment
Share on other sites

  • 0

Zauważyłem, że brakuje tabeli currency_lang

Stworzyłem, zgodnie z db_structure.sql w install/data z presty

CREATE TABLE `yv_currency_lang`(
    `id_currency` INT(10) UNSIGNED NOT NULL,
    `id_lang` INT(10) UNSIGNED NOT NULL,
    `name` VARCHAR(255) NOT NULL,
    `symbol` VARCHAR(255) NOT NULL,
    PRIMARY KEY(`id_currency`, `id_lang`)
);

Poczym wywołałem kolejne zapytanie, które chce ode mnie presta (po logach z błędów od debuga)

SELECT
    *
FROM
    `yv_currency` a
LEFT JOIN `yv_currency_lang` `b` ON
    a.`id_currency` = b.`id_currency` AND b.`id_lang` = 1
LEFT JOIN `yv_currency_shop` `c` ON
    a.`id_currency` = c.`id_currency` AND c.`id_shop` = 1
WHERE
    (a.`id_currency` = 1)
LIMIT 1

W efekcie błędy zniknęły jednak wyskoczyły kolejne

Whoops, looks like something went wrong.
(1/1) FatalThrowableError
Type error: Argument 3 passed to GuzzleHttp\Client::request() must be of the type array, string given, called in /home/admin/domains/XXXX/public_html/modules/salesmanago/vendor/guzzlehttp/guzzle/src/Client.php on line 89

ALE tylko na stronie głównej - po wejściu na Panel Administracyjny jest okej, ale nadal nie mogę się zalogować, po logowaniu znika box ale nic się nie dzieje

@edit

Usunąłem moduł salesmanago z FTP. Strona główna wyświetla się - a raczej jej komunikat o pracach konserwacyjnych, nie wiem jak zachowuje się jeszcze motyw.

Nadal jednak nie mogę wejść do Panelu Administracyjnego.

@edit 3

Wywołałem włączenie sklepu z phpmyadmin

UPDATE `yv_configuration` SET `value` = '1' WHERE `yv_configuration`.`id_configuration` = 30;

Po włączeniu sklepu nie pokazuje się komunikat już o pracach, a komunikaty kolejnych błędów

Syntax error in template "file:/home/admin/domains/xxxxl/public_html/modules/homefeatured/views/templates/hook/homefeatured.tpl" on line 46 "{if $product.show_price AND !isset($restricted_country_mode) AND !$PS_CATALOG_MODE}<p class="price_container"><span class="price">{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span></p>{else}<div style="height:21px;"></div>{/if}" unknown tag 'convertPrice'

Komunikat ewidentnie wskazuje na kolejny moduł homefeatured

Po usunięciu modułu kolejny błąd

(1/1) FatalThrowableError
Call to a member function isRegisteredInHook() on boolean

I teraz nie wiem co dalej...

Edited by KamikStudio
edit 2 (see edit history)
Link to comment
Share on other sites

  • 0

Niestety ja osobiście nie pomogę z Twoim problemem ale podrzucę jak ja rozwiązałem to o czym piszesz.

Miałem stary sklep na wersji 1.6 ale chciałem całkowicie zmienić design więc poszedłem w stronę migracji, przy użyciu wtyczki: 

Zainstalowałem nowy sklep na prestashop, skonfigurowałem go tak jak chciałem, zaimportowałem przy użyciu tej wtyczki dane które były mi potrzebne i wszystko działa bez najmniejszego problemu - być może taki sposób będzie dla Ciebie szybszy niż upgrade z 1.6 do 1.7.

Link to comment
Share on other sites

  • 0

Podczas aktualizacji warto przełączyć się na domyślny szablon i ustawić jego aktualizację, dodatkowo wyłączyć cache oraz nienatywne moduły.

Struktura szablonu w wersji 1.7 się mocno zmieniła zakładam że w tej chwili sklepu odwołuje się do modułów z starego szablonu które nie działają na nowej wersji lub nie działają z wersją PHP którą masz, powinna być 7.2.

Link to comment
Share on other sites

  • 0
Just now, endriu107 said:

Podczas aktualizacji warto przełączyć się na domyślny szablon i ustawić jego aktualizację, dodatkowo wyłączyć cache oraz nienatywne moduły.

Struktura szablonu w wersji 1.7 się mocno zmieniła zakładam że w tej chwili sklepu odwołuje się do modułów z starego szablonu które nie działają na nowej wersji lub nie działają z wersją PHP którą masz, powinna być 7.2.

Teraz to już po ptokach. Silnik został zaktualizowany. W ustawieniach modułu tego 1- coś tam zaznaczyłem aby dał na domyślny szablon. Próbuje jednak jeszcze rozwiązanie na drugim środowisku testowym z tym co dał @_luk

Link to comment
Share on other sites

  • 0
2 minutes ago, endriu107 said:

Dla przykładu błąd który masz syntax error jest spowodowany modułem homefeatured który nie działa w wersji 1.7 tam został zastąpiony modułem ps_featuredproducts więc zacznij od uporządkowania modułów.

Na początek to chciałbym dostać się do Panelu Administracyjnego

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...