How to Upgrade magento version from 2.3.x to 2.3.x [Enterprise Edition]
- Steps to successfully update Magento 2.3.x to 2.3.x [EE]
Magento Stack Exchange is a question and answer site for users of the Magento e-Commerce platform. It only takes a minute to sign up.
Sign up to join this communityHere are the steps I used to successfully update Magento 2.3.3 [EE] to 2.3.5 [EE] I have divided the steps into parts:
Follow The URL: Here are the steps to upgrade Magento 2.3.x to 2.3.x
Upgrade Magento 2 using composer: -
cp composer.json composer.json.bak
cp index.php index.php.bak
php bin/magento deploy:mode:set developer
php bin/magento cache:disable
php bin/magento maintenance:enable
composer require magento/product-enterprise-edition=2.3.5 --no-update
--> Message : ./composer.json has been updated.
--> PHP Fatal error:
Uncaught Error: Undefined class constant 'PRE_COMMAND_RUN' in /var/www/html/m23x/ontime/vendor/laminas/laminas-dependency-plugin/src/DependencyRewriterPlugin.php:63
--> composer --version
--> Solution:
It's just because of the composer's old version, you need to install the new version (composer version >= Composer 1.9.1)
composer update
rm -rf var/cache/* var/page_cache/* generated/code/*
php bin/magento setup:upgrade
Error: Element 'route': Missing child element(s). Expected is ( resources ).
Solution: Magento_MysqlMq [disable this module]
Errors:
Magento\PageBuilder\Model\Dom\NodeList::item($index): ?Magento\PageBuilder\Model\Dom\Adapter\ElementInterface must be compatible with Magento\PageBuilder\Model\Dom\Adapter\NodeListInterface::item(int $index): ?Magento\PageBuilder\Model\Dom\Adapter\ElementInterface in /var/www/html/m23x/ontime/vendor/magento/module-page-builder/Model/Dom/NodeList.php on line 19
Solution:
vendor/magento/module-page-builder/Model/Dom/NodeList.php (On line 47 change as follows) public function item(int $index): ?ElementInterface
SUCCESSFULLY UPGRADED - MAGENTO 2.3.3 To MAGENTO 2.3.5 [EE]
replace OLD index.php file
You may face the below issue at the time of deploying.
1) Error:
The contents from the "/var/www/html/pub/static/adminhtml/Magento/backend/en_US/requirejs-min-resolver.min.js" file can't be read. Warning!
file_get_contents(/var/www/html/pub/static/adminhtml/Magento/backend/en_US/requirejs-min-resolver.min.js): failed to open stream: No such file or directory.
Solution: Disable Minify CSS / JS OR JS/CSS Merge
++++++++++++++++++++++++++
+++++++++++++++++++++++
Checkout page errors:--
Infinite loop detected, review the trace for the looping path.
Bug in Code File of 2.3.5
Message:
vendor/magento/module-checkout/Model/Session.php line 240 code is a bug On line 240 we have the code: if ($this->isLoading) { ... which throw this exception. The private member $isLoading is set to false by default and is only set to true on line number 243 in the Session.php the code will never reach this line as the Quote is not already created and need to be created at line number 244 but we are throwing an error on line 241 which breaks the script. No matter what we select in the payment method the code always breaks.
Temp Solution:
vendor/magento/module-checkout/Model/Session.php Try to replace this file with version 2.3.3 and try to checkout again.
+++++++++++
Note: Vendor file changes as follows below.
vendor/magento/module-checkout/Model/Session.php
vendor/magento/module-page-builder/Model/Dom/NodeList.php
If my answer helped you, you can accept the answer so it can help others also.
This is covered in the dev docs on upgrading. It has its own section Upgrading from Open Source to Commerce. They give example commands and everything. Just swap out the version numbers for the one you want to change to.
You can either set up a whole new store on Magento Enterprise and then import all your important data from Community edition.