Magento 2.3 Обновление MSI инвентаря magento


У меня есть магазин, у которого проблемы с производительностью. И я смог точно указать на это MSI. Я начал серьезно смотреть на это сегодня.

Как обновить MSI на Magento 2.3?

Я прочитал справочные документы и еще больше запутался

Https://github.com/magento/inventory/wiki/Known-Performance-Issues

Перечислены некоторые исправления, являющиеся частью 1.1.3

Индексатор цен не работает на установках с большими каталогами PR #2336 1.1.3

Большое время отклика для сценариев, связанных с каталогом, на веб-сайтах, на которых используется комбинация источника и запасов по умолчанию на витрине магазина и PR администратора #2350 1.1.3

Большое количество повторяющихся запросов к базе данных в сценариях, связанных с оформлением заказа, на витрине магазина Фиксирует ad57569 Далее

Несколько избыточных запросов к ТАБЛИЦАМ ОТОБРАЖЕНИЯ в сценариях, связанных с каталогом и оформлением заказа PR #2561 Далее

Https://github.com/magento/inventory/tags

1.1.3 не помечен (ноябрь 2019)

Также здесь

Https://devdocs.magento.com/release/

Инвентарь Magento 1.6.1 указан как общедоступный в разделе 2.3.0

У кого-нибудь было какое-либо успешное обновление через magento/inventory-composer-metapackage?

Понял это отсюда https://devdocs.magento.com/extensions/inventory-management/

В котором есть это предостережение

This page may include updates for Inventory Management (MSI) 1.1.2 Beta. Content is subject to change. 

Вверху. фейспалм

Был ли кто-нибудь в состоянии обновление? Можете ли вы обновить MSI без обновления ядра Mage?

Или прямой маршрут исправления лучше? например,

Https://patch-diff.githubusercontent.com/raw/magento/inventory/pull/2336.patch

Https://patch-diff.githubusercontent.com/raw/magento/inventory/pull/2350.patch

Https://github.com/magento/inventory/commit/ad57569792551b58d22e169ed536da4ac22a0f2d.patch

Https://patch-diff.githubusercontent.com/raw/magento/inventory/pull/2561.patch

В порядке публикации в вики

Обновление

Согласно https://devdocs.magento.com/guides/v2.3/comp-mgr/patching.html

composer require cweagans/composer-patches

patches/composer/2336.patch

patches/composer/2350.patch

Пробовал композитор, но нет!

    "extra": {
        "magento-force": "override",
        "composer-exit-on-patch-failure": true,
        "patches": {
            "magento/module-inventory": {
                "MSI-2210: Price Indexer fails with large catalogs": "patches/composer/2336.patch",
                "Avoid querying inventory default stock view in storefront": "patches/composer/2350.patch"
            }
        }
    }
➜  Mage230 composer -v install
Gathering patches for root package.
Removing package magento/module-inventory so that it can be re-installed and re-patched.
  - Removing magento/module-inventory (1.0.3)
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them.
Dependency resolution completed in 0.007 seconds
Analyzed 843 packages to resolve dependencies
Analyzed 5470 rules to resolve dependencies
Package operations: 1 install, 0 updates, 0 removals
Installs: magento/module-inventory:1.0.3
Gathering patches for root package.
Gathering patches for dependencies. This might take a minute.
Found 2 patches for magento/module-inventory.
  - Installing magento/module-inventory (1.0.3): Downloading (100%)         
 Extracting archive  - Applying patches for magento/module-inventory
    patches/composer/2336.patch (MSI-2210: Price Indexer fails with large catalogs)
patch '-p1' --no-backup-if-mismatch -d '/home/dominic/Git/Mage230/vendor/magento/module-inventory' < '/home/dominic/Git/Mage230/patches/composer/2336.patch'
can't find file to patch at input line 14
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|From 62644e2b3f70e16152900c96eef290c9e54085e9 Mon Sep 17 00:00:00 2001
|From: Stepan Furman <[email protected]>
|Date: Tue, 18 Jun 2019 10:52:22 +0300
|Subject: [PATCH 1/3] MSI-2210: Price Indexer fails with large catalogs
|
|---
| .../ModifySelectInProductPriceIndexFilter.php | 37 ++++++++++++++++++-
| 1 file changed, 35 insertions(+), 2 deletions(-)
|
|diff --git a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|index ff3fbe109f9..04b1400ead6 100644
|--- a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|+++ b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
--------------------------
File to patch: 
Skip this patch? [y] 
Skipping patch.

5 out of 5 hunks ignored

can't find file to patch at input line 113
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|
|From b8180cd196d521e361a181559df3a184a2787bb4 Mon Sep 17 00:00:00 2001
|From: Stepan Furman <[email protected]>
|Date: Sat, 22 Jun 2019 13:10:41 +0300
|Subject: [PATCH 2/3] MSI-2210: get rid of redundant website_id predicate
|
|---
| .../Model/Indexer/ModifySelectInProductPriceIndexFilter.php  | 5 ++---
| 1 file changed, 2 insertions(+), 3 deletions(-)
|
|diff --git a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|index 04b1400ead6..1b249c2a559 100644
|--- a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|+++ b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
--------------------------
File to patch: 
Skip this patch? [y] 
Skipping patch.

1 out of 1 hunk ignored

can't find file to patch at input line 139
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|
|From 1081bbb03d086608b6bf8633b3442408fe29f8df Mon Sep 17 00:00:00 2001
|From: Stepan Furman <[email protected]>
|Date: Sat, 22 Jun 2019 13:46:22 +0300
|Subject: [PATCH 3/3] MSI-2210: fix static test
|
|---
| .../Model/Indexer/ModifySelectInProductPriceIndexFilter.php    | 3 ++-
| 1 file changed, 2 insertions(+), 1 deletion(-)
|
|diff --git a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|index 1b249c2a559..1ed6e157aa8 100644
|--- a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|+++ b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
--------------------------
File to patch: 
Skip this patch? [y] 
Skipping patch.

1 out of 1 hunk ignored

patch '-p0' --no-backup-if-mismatch -d '/home/dominic/Git/Mage230/vendor/magento/module-inventory' < '/home/dominic/Git/Mage230/patches/composer/2336.patch'
can't find file to patch at input line 14
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|From 62644e2b3f70e16152900c96eef290c9e54085e9 Mon Sep 17 00:00:00 2001
|From: Stepan Furman <[email protected]>
|Date: Tue, 18 Jun 2019 10:52:22 +0300
|Subject: [PATCH 1/3] MSI-2210: Price Indexer fails with large catalogs
|
|---
| .../ModifySelectInProductPriceIndexFilter.php | 37 ++++++++++++++++++-
| 1 file changed, 35 insertions(+), 2 deletions(-)
|
|diff --git a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|index ff3fbe109f9..04b1400ead6 100644
|--- a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|+++ b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
--------------------------
File to patch: 
Skip this patch? [y] 
Skipping patch.

5 out of 5 hunks ignored
can't find file to patch at input line 113
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------

|
|From b8180cd196d521e361a181559df3a184a2787bb4 Mon Sep 17 00:00:00 2001
|From: Stepan Furman <[email protected]>
|Date: Sat, 22 Jun 2019 13:10:41 +0300
|Subject: [PATCH 2/3] MSI-2210: get rid of redundant website_id predicate
|
|---
| .../Model/Indexer/ModifySelectInProductPriceIndexFilter.php  | 5 ++---
| 1 file changed, 2 insertions(+), 3 deletions(-)
|
|diff --git a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|index 04b1400ead6..1b249c2a559 100644
|--- a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|+++ b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
--------------------------
File to patch: 
Skip this patch? [y] 
Skipping patch.

1 out of 1 hunk ignored

can't find file to patch at input line 139
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|
|From 1081bbb03d086608b6bf8633b3442408fe29f8df Mon Sep 17 00:00:00 2001
|From: Stepan Furman <[email protected]>
|Date: Sat, 22 Jun 2019 13:46:22 +0300
|Subject: [PATCH 3/3] MSI-2210: fix static test
|
|---
| .../Model/Indexer/ModifySelectInProductPriceIndexFilter.php    | 3 ++-
| 1 file changed, 2 insertions(+), 1 deletion(-)
|
|diff --git a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|index 1b249c2a559..1ed6e157aa8 100644
|--- a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|+++ b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
--------------------------
File to patch: 
Skip this patch? [y] 
Skipping patch.

1 out of 1 hunk ignored

patch '-p2' --no-backup-if-mismatch -d '/home/dominic/Git/Mage230/vendor/magento/module-inventory' < '/home/dominic/Git/Mage230/patches/composer/2336.patch'
can't find file to patch at input line 14
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|From 62644e2b3f70e16152900c96eef290c9e54085e9 Mon Sep 17 00:00:00 2001
|From: Stepan Furman <[email protected]>
|Date: Tue, 18 Jun 2019 10:52:22 +0300
|Subject: [PATCH 1/3] MSI-2210: Price Indexer fails with large catalogs
|
|---
| .../ModifySelectInProductPriceIndexFilter.php | 37 ++++++++++++++++++-
| 1 file changed, 35 insertions(+), 2 deletions(-)
|
|diff --git a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|index ff3fbe109f9..04b1400ead6 100644
|--- a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|+++ b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
--------------------------
File to patch: 
Skip this patch? [y] 
Skipping patch.

5 out of 5 hunks ignored

can't find file to patch at input line 113
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|
|From b8180cd196d521e361a181559df3a184a2787bb4 Mon Sep 17 00:00:00 2001
|From: Stepan Furman <[email protected]>
|Date: Sat, 22 Jun 2019 13:10:41 +0300
|Subject: [PATCH 2/3] MSI-2210: get rid of redundant website_id predicate
|
|---
| .../Model/Indexer/ModifySelectInProductPriceIndexFilter.php  | 5 ++---
| 1 file changed, 2 insertions(+), 3 deletions(-)
|
|diff --git a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|index 04b1400ead6..1b249c2a559 100644
|--- a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|+++ b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
--------------------------
File to patch: 
Skip this patch? [y] 
Skipping patch.

1 out of 1 hunk ignored

can't find file to patch at input line 139
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|
|From 1081bbb03d086608b6bf8633b3442408fe29f8df Mon Sep 17 00:00:00 2001
|From: Stepan Furman <[email protected]>
|Date: Sat, 22 Jun 2019 13:46:22 +0300
|Subject: [PATCH 3/3] MSI-2210: fix static test
|
|---
| .../Model/Indexer/ModifySelectInProductPriceIndexFilter.php    | 3 ++-
| 1 file changed, 2 insertions(+), 1 deletion(-)
|
|diff --git a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|index 1b249c2a559..1ed6e157aa8 100644
|--- a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|+++ b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
--------------------------
File to patch: 
Skip this patch? [y] 
Skipping patch.

1 out of 1 hunk ignored

patch '-p4' --no-backup-if-mismatch -d '/home/dominic/Git/Mage230/vendor/magento/module-inventory' < '/home/dominic/Git/Mage230/patches/composer/2336.patch'
can't find file to patch at input line 14
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|From 62644e2b3f70e16152900c96eef290c9e54085e9 Mon Sep 17 00:00:00 2001
|From: Stepan Furman <[email protected]>
|Date: Tue, 18 Jun 2019 10:52:22 +0300
|Subject: [PATCH 1/3] MSI-2210: Price Indexer fails with large catalogs
|
|---
| .../ModifySelectInProductPriceIndexFilter.php | 37 ++++++++++++++++++-
| 1 file changed, 35 insertions(+), 2 deletions(-)
|
|diff --git a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|index ff3fbe109f9..04b1400ead6 100644
|--- a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|+++ b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
--------------------------
File to patch: 
Skip this patch? [y] 
Skipping patch.

5 out of 5 hunks ignored
can't find file to patch at input line 113
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|
|From b8180cd196d521e361a181559df3a184a2787bb4 Mon Sep 17 00:00:00 2001
|From: Stepan Furman <[email protected]>
|Date: Sat, 22 Jun 2019 13:10:41 +0300
|Subject: [PATCH 2/3] MSI-2210: get rid of redundant website_id predicate
|
|---
| .../Model/Indexer/ModifySelectInProductPriceIndexFilter.php  | 5 ++---
| 1 file changed, 2 insertions(+), 3 deletions(-)
|
|diff --git a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|index 04b1400ead6..1b249c2a559 100644
|--- a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|+++ b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
--------------------------
File to patch: 
Skip this patch? [y] 
Skipping patch.

1 out of 1 hunk ignored

can't find file to patch at input line 139
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|
|From 1081bbb03d086608b6bf8633b3442408fe29f8df Mon Sep 17 00:00:00 2001
|From: Stepan Furman <[email protected]>
|Date: Sat, 22 Jun 2019 13:46:22 +0300
|Subject: [PATCH 3/3] MSI-2210: fix static test
|
|---
| .../Model/Indexer/ModifySelectInProductPriceIndexFilter.php    | 3 ++-
| 1 file changed, 2 insertions(+), 1 deletion(-)
|
|diff --git a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|index 1b249c2a559..1ed6e157aa8 100644
|--- a/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
|+++ b/app/code/Magento/InventoryCatalog/Plugin/CatalogInventory/Model/Indexer/ModifySelectInProductPriceIndexFilter.php
--------------------------
File to patch: 
Skip this patch? [y] 
Skipping patch.

1 out of 1 hunk ignored

   Could not apply patch! Skipping. The error was: Cannot apply patch patches/composer/2336.patch

                                                                               
  [Exception]                                                                  
  Cannot apply patch MSI-2210: Price Indexer fails with large catalogs (patch  
  es/composer/2336.patch)!
Author: Community, 2019-11-02

2 answers

Решил эту проблему.

composer require magento/inventory-composer-metapackage --no-update

Это потянуло ^1.1 (ноябрь 2019)

composer update

Затем стандартный magento

php bin/magento cache:clean

php bin/magento setup:upgrade

php bin/magento setup:di:compile

Не обнаружил никаких неотложных проблем. Могу подтвердить изменения, внесенные в патч 2336.патч и 2350.патч, с которыми сталкивался.

Может подтвердить улучшение производительности в версии 2.3.0. Не уверен, что это будет означать для будущих обновлений, но для меня этого достаточно.

 2
Author: Dominic Xigen, 2019-11-02 23:43:26

Если это не сработает, у вас всегда есть замена композитора: например,

{
"name": "company/magento-project",
"description": "eCommerce Platform for Growth (Community Edition)",
"type": "project",
"license": [
    "OSL-3.0",
    "AFL-3.0"
],
"config": {
    "preferred-install": "dist",
    "sort-packages": true,
    "secure-http": true
},
"require": {
    "magento/product-community-edition": "2.3.2",
    "magento/inventory-composer-metapackage": "^1.1.3"
    ...
},
...
"replace": {
    "magento/inventory-composer-metapackage": "^1.1.2"
     ...
}
}

Выполнение этого приведет к удалению v1.1.2 и замене его на v1.1.3.

 0
Author: Tony Schirmer, 2020-01-31 11:29:26