Skip to content

Fix for scope bug in Catalog URL resource #38394

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

Open
wants to merge 14 commits into
base: 2.4-develop
Choose a base branch
from

Conversation

pmzandbergen
Copy link
Contributor

Description (*)

Fallback to default scope for the is_active category attribute is not working as expected on Url Resource Model. This commit adds a fallback to default scope if there is no value defined on the store scope.

Fixed Issues (if relevant)

  1. Fixes Scope bug in Catalog URL resource (_getCategories) #38393

Manual testing scenarios (*)

  1. Create 3 categories
  2. Disable one category on the default scope
  3. Disable another category on the store scope
  4. Execute \Magento\Catalog\ResourceModel\Url::getCategories(..)
  5. Validate the values of is_active on the returned data objects

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)

Copy link

m2-assistant bot commented Jan 29, 2024

Hi @pmzandbergen. Thank you for your contribution!
Here are some useful tips on how you can test your changes using Magento test environment.

Add the comment under your pull request to deploy test or vanilla Magento instance:
  • @magento give me test instance - deploy test instance based on PR changes
  • @magento give me 2.4-develop instance - deploy vanilla Magento instance

❗ Automated tests can be triggered manually with an appropriate comment:

  • @magento run all tests - run or re-run all required tests against the PR changes
  • @magento run <test-build(s)> - run or re-run specific test build(s)
    For example: @magento run Unit Tests

<test-build(s)> is a comma-separated list of build names.

Allowed build names are:
  1. Database Compare
  2. Functional Tests CE
  3. Functional Tests EE
  4. Functional Tests B2B
  5. Integration Tests
  6. Magento Health Index
  7. Sample Data Tests CE
  8. Sample Data Tests EE
  9. Sample Data Tests B2B
  10. Static Tests
  11. Unit Tests
  12. WebAPI Tests
  13. Semantic Version Checker

You can find more information about the builds here
ℹ️ Run only required test builds during development. Run all test builds before sending your pull request for review.


For more details, review the Code Contributions documentation.
Join Magento Community Engineering Slack and ask your questions in #github channel.

@engcom-Hotel engcom-Hotel added the Triage: Dev.Experience Issue related to Developer Experience and needs help with Triage to Confirm or Reject it label Jan 30, 2024
@andrewbess andrewbess self-assigned this Jan 30, 2024
@andrewbess
Copy link
Contributor

@magento run all tests

Copy link

The requested builds are added to the queue. You should be able to see them here within a few minutes. Please message the #magento-devops slack channel if they don't show in a reasonable amount of time and a representative will look into any issues.

@andrewbess
Copy link
Contributor

Hello @pmzandbergen
Thank you for your contribution
But we need to check this changes history

@m2-community-project m2-community-project bot added the Priority: P2 A defect with this priority could have functionality issues which are not to expectations. label Feb 8, 2024
@pmzandbergen
Copy link
Contributor Author

Any update? :)

@Priyakshic Priyakshic added the Project: Community Picked PRs upvoted by the community label Nov 13, 2024
@engcom-Hotel
Copy link
Contributor

@magento run all tests

@engcom-Hotel engcom-Hotel self-requested a review November 14, 2024 12:06
@engcom-Hotel
Copy link
Contributor

@magento run Functional Tests B2B, Static Tests

@engcom-Hotel
Copy link
Contributor

We have created a Guild issue for this PR here:

https://github.com/magento-commerce/quality-guild/issues/82

Hence moving this PR On Hold for now. We will proceed with this as per the discussion in the guild.

Thanks

@pmzandbergen
Copy link
Contributor Author

We have created a Guild issue for this PR here:

https://github.com/magento-commerce/quality-guild/issues/82

Hence moving this PR On Hold for now. We will proceed with this as per the discussion in the guild.

Thanks

Unfortunately I don't have access to the Magento Commerce repository. I'll wait patiently.

@engcom-Hotel
Copy link
Contributor

We have received go-ahead on this PR from the internal team, hence we are moving it to appropriate bucket.

Thanks

@engcom-Hotel engcom-Hotel moved this from On Hold to Pending Review in Community Dashboard Apr 3, 2025
@engcom-Hotel
Copy link
Contributor

@magento run all tests

@engcom-Hotel engcom-Hotel moved this from Pending Review to Review in Progress in Community Dashboard Apr 4, 2025
Copy link
Contributor

@engcom-Hotel engcom-Hotel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello @pmzandbergen,

Thanks for the collaboration!

The changes seems good to us, but I guess we can add an automated test for this fix in accordance to the DOD.

So please do the needful.

Thanks

@ct-prd-projects-boards-automation ct-prd-projects-boards-automation bot moved this from Changes Requested to Review in Progress in Community Dashboard Apr 28, 2025
@engcom-Hotel
Copy link
Contributor

@magento run all tests

Copy link
Contributor

@engcom-Hotel engcom-Hotel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello @pmzandbergen,

We are still having a static test failure related to copyright. Please use copyright as below.

Thanks

@engcom-Hotel engcom-Hotel moved this from Review in Progress to Changes Requested in Community Dashboard Apr 28, 2025
@engcom-Hotel
Copy link
Contributor

@magento run all tests

@engcom-Dash
Copy link
Contributor

@magento run all tests

@engcom-Dash
Copy link
Contributor

@pmzandbergen Thank you for contribution & collaboration!

✔️ QA Passed

Preconditions:
Install Fresh Magento 2.4-develop

Steps to reproduce:

  1. Create 2 categories.
  2. Disable one category on the default scope (Category ID: 560)
  3. Disable another category on the store scope (Category ID: 551)
  4. Created a custom script to execute \Magento\Catalog\ResourceModel\Url::getCategories(..)
Screenshot 2025-05-07 at 4 40 15 PM

Before: ❌

The returned data object of categories was not having "is_active" key in the category (ID 560) disabled at default scope because the following condition was invalid and it was not falling back to the default scope.
$isActiveExpr = $connection->getCheckSql('c.value_id > 0', 'c.value', 'c.value');

Screenshot 2025-05-07 at 4 08 27 PM

After: ✔️

On PR branch it fallbacks to the default scope and "is_active" key gets added on the category disabled at default scope. Screenshot 2025-05-07 at 4 19 50 PM

Also verified the SQL Query in order to validate the changes

image

Builds are failed hence moving this PR in Extended Testing

@engcom-Dash engcom-Dash moved this from Testing in Progress to Extended testing (optional) in Community Dashboard May 7, 2025
@engcom-Dash
Copy link
Contributor

@magento run Functional Tests B2B, Functional Tests CE

@engcom-Dash
Copy link
Contributor

One of the consistent Functional B2B test failure is a known issue and JIRA is present for the same. Other test failures are inconsistent and seems to be flaky. They are not related to this PR nor part of PR. Hence moving this PR in Merge In Progress.

Build 1: https://public-results-storage-prod.magento-testing-service.engineering/reports/magento/magento2/pull/38394/8465e3cfae06f7063a6f95d847c9414f/Functional/allure-report-b2b/index.html#categories/dd1aec766b2934fec7e9751b4078a7fe/a965cd4ef73e5cf8/

image

Build 2: https://public-results-storage-prod.magento-testing-service.engineering/reports/magento/magento2/pull/38394/056a89fafc5ea494686ae7a582bec8f9/Functional/allure-report-b2b/index.html#categories/2d77c243b99b20b245f50650375f7fbf/e1d773e66b3ef8a0/

image

Known Issue: AdminDeleteCatalogPriceRuleEntityFromConfigurableProductTest ACQE-7945

@engcom-Dash engcom-Dash moved this from Extended testing (optional) to Merge in Progress in Community Dashboard May 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Priority: P2 A defect with this priority could have functionality issues which are not to expectations. Project: Community Picked PRs upvoted by the community Triage: Dev.Experience Issue related to Developer Experience and needs help with Triage to Confirm or Reject it
Projects
Status: Merge in Progress
Development

Successfully merging this pull request may close these issues.

Scope bug in Catalog URL resource (_getCategories)
5 participants