Skip to content

Create category-product index table for store 0 #47

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

Vinai
Copy link
Contributor

@Vinai Vinai commented Oct 8, 2023

Description (*)

This fixes a regression introduced by pull request #25

Fixed Issues

  1. Fixes Faster category tree PR integration test regression #44

Testing scenarios (*)

Under certain conditions saving or loading a product caused a table-not-exists exception.
This happened for example for the integration test \Magento\AdvancedPricingImportExport\Model\Import\AdvancedPricingTest::testImportDelete

With this change, the index table is created by the schema patch, just like all other store index tables, and the error no longer occurs.

Contribution checklist (*)

  • Pull request has a meaningful description of its purpose
  • All commits are accompanied by meaningful commit messages
  • All new or changed code is covered with unit/integration tests (if applicable)
  • README.md files for modified modules are updated and included in the pull request if any README.md predefined sections require an update
  • All automated tests passed successfully (all builds are green)

This fixes a regression introduced by pull request
mage-os#25

Under certain conditions saving or loading a product caused a
table-not-exists exception.
This happened for example for the integration test
\Magento\AdvancedPricingImportExport\Model\Import\AdvancedPricingTest::testImportDelete

With this change, the index table is created by the schema patch, just
like all other store index tables, and the error no longer occurs.

Closes mage-os#44
@Vinai Vinai requested a review from a team as a code owner October 8, 2023 17:38
@Vinai
Copy link
Contributor Author

Vinai commented Oct 8, 2023

The reported coding standard violations are not related to the changes in the PR.

@Vinai
Copy link
Contributor Author

Vinai commented Oct 8, 2023

The unit test failures are not related to changes in this PR.

@Vinai Vinai merged commit 7be2613 into mage-os:2.4-develop Oct 8, 2023
Vinai pushed a commit that referenced this pull request Jan 25, 2024
* Fix \Magento\Paypal\Model\Express\CheckoutTest - dbIsolation missing

* Fix tests Magento\CatalogImportExport\Model\Import\ProductTest\ProductStockTest::testProductStockStatusShouldBeUpdatedOnSchedule
          Zend_Db_Exception: Table "catalog_category_product_index_store0_replica" does not exist

Partially reverting fix from Vinai:
`Create category-product index table for store 0 (#47)

 This fixes a regression introduced by pull request
 https://github.com/mage-os/mageos-magento2/pull/25`

* Fix failing tests with error `undefined key 'product_id`' from app/code/Magento/CatalogInventory/Model/StockManagement.php:110

Test: dev/tests/integration/testsuite/Magento/Downloadable/Block/Sales/Order/Email/Items/Order/DownloadableTest.php

* Fix failed tests: \Magento\Wishlist\Controller\Index\AddTest

Failed due to visibility filter in whishlist collection. Products were not added to root category and not reindexed. So visibility filter ued to exclude them from wishlist items collection: app/code/Magento/Wishlist/Model/ResourceModel/Item/Collection.php:390

* Decrease test-cases - use php 8.2 only for testing purposes
Include and use changed workflow to have more unitary tests executions

* Mark tests as incomplete as actual fix is in: mage-os/mageos-magento-zend-db#1

Error that was fixed:
Unable to revert fixture: Magento/Framework/Backup/_files/trigger.php
#0 /var/www/html/dev/tests/integration/testsuite/Magento/Framework/Backup/DbTest.php(42): Magento\Framework\Backup\DbTest->testBackupAndRollbackIncludesCustomTriggers()
...

* Fix integration tests error:

Magento\Framework\Image\Adapter\InterfaceTest::testRotate with data set #4 ('/var/www/html/dev/tests/integ...st.png', 45, array(157, 35), 'IMAGEMAGICK')
ImagickException: unrecognized color `srgb255,255,255' @ warning/color.c/GetColorCompliance/1064

* Fix integration tests error:

Magento\Framework\Image\Adapter\InterfaceTest::testCreatePngFromString with data set #1 (array(5, 12), array(0, 0, 0), array(0, 20), array(255, 255, 255), 'IMAGEMAGICK')
ImagickException: unable to read font `' @ error/annotate.c/RenderFreetype/1636

* Fix integration tests error:

Magento\Dhl\Model\CarrierTest::testRequestToShip with data set #0 ('GB', 'EU', 'US')
Failed asserting that two DOM documents are equal.

-      <SoftwareName>Magento</SoftwareName>
+      <SoftwareName>Mage-OS</SoftwareName>

* Fix integration tests error:

Magento\Framework\Image\Adapter\InterfaceTest::testCreatePngFromString with data set #1 (array(5, 12), array(0, 0, 0), array(0, 20), array(255, 255, 255), 'IMAGEMAGICK')
PHPUnit\Framework\Exception: Deprecated: Implicit conversion from float 11.34375 to int loses precision in /var/www/html/lib/internal/Magento/Framework/Image/Adapter/ImageMagick.php:505.

* Fix integration tests error:

Magento\Framework\Image\Adapter\InterfaceTest::testCreatePngFromString with data set #1 (array(5, 12), array(0, 0, 0), array(0, 20), array(255, 255, 255), 'IMAGEMAGICK')
PHPUnit\Framework\Exception: Deprecated: Implicit conversion from float 11.34375 to int loses precision in /var/www/html/lib/internal/Magento/Framework/Image/Adapter/ImageMagick.php:505.

* Fix integration tests error:

Magento\Framework\Image\Adapter\InterfaceTest::testRotate with data set #4 ('/var/www/html/dev/tests/integ...st.png', 45, array(157, 35), 'IMAGEMAGICK')
ImagickException: unrecognized color `srgb255,255,255' @ warning/color.c/GetColorCompliance/1064

* Revert "feat(catalog): faster category product count (#25)"

This reverts commit f01535b.

* Revert "Create category-product index table for store 0 (#47)"

This reverts commit 7be2613.

* Add optional param to run tests over specific directory only.

* Fix failed tests: \Magento\Version\Controller\Index\IndexTest

Update package name to mage-os

* Fix integration tests (most likely caused by incorrect merge conflict resolving):

error msg:
1) Magento\Catalog\Block\Adminhtml\Category\Checkboxes\TreeTest::testGetTreeJson
Error: Call to a member function getConnectionName() on null

/var/www/html/lib/internal/Magento/Framework/App/ResourceConnection.php:110
/var/www/html/app/code/Magento/Catalog/Model/ResourceModel/Category/Collection.php:570
...

ref: https://github.com/vpodorozh/mageos-magento2/actions/runs/7472531139/job/20334972566#step:6:39

* Fix failed integration tests in \Magento\Customer

* Revert "Fix failed integration tests in \Magento\Customer"

* Update full-integration-tests.yaml

---------

Co-authored-by: Maksym Novik <[email protected]>
Co-authored-by: Maksym Novik <[email protected]>
Co-authored-by: Ihor Sviziev <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Faster category tree PR integration test regression
2 participants