{"data":{"id":"magento2-36394","source":"github-pr","sourceRef":"magento/magento2#36394","title":"Use current sore id for category runtime cache","pr":{"number":36394,"url":"https://github.com/magento/magento2/pull/36394","author":"ilnytskyi","mergedAt":"2024-11-01T15:51:08Z","mergeCommit":"f50b9da58cee96c6cae55f2cdc3ef8362f82d6e9","headCommit":"3a172d66f1db45c238990eeeebb7b41912d52480","baseRef":"2.4-develop","diffSha256":"9cb71e459fd908310b50b9a733245d2f34c80156ea0cebc652b0685bae19ad18"},"issues":[{"number":39310,"url":"https://github.com/magento/magento2/issues/39310","title":"[Issue] Use current sore id for category runtime cache","labels":["Area: Catalog","Component: Catalog","Issue: Confirmed","Priority: P2","Priority: P3","Progress: done","Reproduced on 2.4.x","Severity: S3"],"kind":"pr-derived"}],"fixedIn":"2.4.8","containingTags":["2.4.8","2.4.8-p1","2.4.8-p2","2.4.8-p3","2.4.8-p4","2.4.8-p5","2.4.9"],"reportedOn":null,"codeMatch":{"2.4.6":"conflict","2.4.6-p1":"conflict","2.4.6-p2":"conflict","2.4.6-p3":"conflict","2.4.6-p4":"conflict","2.4.6-p5":"conflict","2.4.6-p6":"conflict","2.4.6-p7":"conflict","2.4.6-p8":"conflict","2.4.6-p9":"conflict","2.4.6-p10":"conflict","2.4.6-p11":"conflict","2.4.6-p12":"conflict","2.4.6-p13":"conflict","2.4.6-p14":"conflict","2.4.6-p15":"conflict","2.4.7":"clean","2.4.7-p1":"clean","2.4.7-p2":"clean","2.4.7-p3":"clean","2.4.7-p4":"clean","2.4.7-p5":"clean","2.4.7-p6":"clean","2.4.7-p7":"clean","2.4.7-p8":"clean","2.4.7-p9":"clean","2.4.7-p10":"clean","2.4.8":"conflict","2.4.8-p1":"conflict","2.4.8-p2":"conflict","2.4.8-p3":"conflict","2.4.8-p4":"conflict","2.4.8-p5":"conflict","2.4.9":"conflict"},"affectedVersions":["2.4.7","2.4.7-p1","2.4.7-p2","2.4.7-p3","2.4.7-p4","2.4.7-p5","2.4.7-p6","2.4.7-p7","2.4.7-p8","2.4.7-p9","2.4.7-p10"],"components":["magento/module-catalog"],"files":[{"path":"app/code/Magento/Catalog/Model/CategoryRepository.php","change":"modified","package":"magento/module-catalog"},{"path":"app/code/Magento/Catalog/Model/ResourceModel/Category.php","change":"modified","package":"magento/module-catalog"}],"stripped":{"tests":["dev/tests/integration/testsuite/Magento/Catalog/Controller/Adminhtml/Category/Save/UpdateCategoryTest.php","dev/tests/integration/testsuite/Magento/Catalog/Controller/Adminhtml/CategoryTest.php","dev/tests/integration/testsuite/Magento/CatalogUrlRewrite/Observer/CategoryUrlPathAutogeneratorObserverTest.php"],"docs":[],"outsideCode":[]},"linesChanged":21,"mergeBatched":false,"excluded":null,"sections":{"description":"This is shorter PR version of https://github.com/magento/magento2/pull/34226/files that only fixes main issue and does not include suggested performance improvements.","stepsToReproduce":null,"expectedResult":null,"actualResult":null,"source":"pr"},"signatures":[],"labels":{"area":["Catalog"],"component":["Catalog"],"priority":"P2","severity":"S3","reportedOn":[]},"categories":["Catalog/Product"],"triage":{"model":"@cf/cloudflare/clef","requestHash":"14fe8f89eea1cb4288056e05b5c4702f4cda9c56116dc3430e8169afb0047a9b","isBugfix":0.9656,"changeKind":{"choice":"bugfix","probabilities":{"bugfix":0.9667,"feature":0.0046,"refactor":0.0158,"tests_only":0.0073,"docs_only":0.0026,"dependency":0.003},"confidence":0.9218},"scope":{"score":0.7917,"probabilities":{"0":0.308,"1":0.5923,"2":0.0997},"confidence":0.1835},"risk":{"score":0.6656,"probabilities":{"0":0.4333,"1":0.4679,"2":0.0988},"confidence":0.1246},"area":{"choice":"catalog","probabilities":{"catalog":0.8833,"checkout":0.0051,"customer":0.0035,"admin":0.0385,"graphql_api":0.0042,"framework":0.0525,"frontend":0.0087,"other":0.0042},"confidence":0.7539},"securityRelevant":0.0084,"reportedVersion":{"choice":"unspecified","probabilities":{"2.4.0":0.0036,"2.4.0-p1":0.0042,"2.4.1":0.0068,"2.4.1-p1":0.006,"2.4.2":0.0094,"2.4.2-p1":0.0076,"2.4.2-p2":0.008,"2.4.3":0.0114,"2.4.3-p1":0.0094,"2.4.3-p2":0.0099,"2.4.3-p3":0.0069,"2.4.4":0.0134,"2.4.4-p1":0.0087,"2.4.4-p10":0.006,"2.4.4-p11":0.0068,"2.4.4-p12":0.0065,"2.4.4-p13":0.0065,"2.4.4-p14":0.0078,"2.4.4-p15":0.0057,"2.4.4-p16":0.0072,"2.4.4-p17":0.0059,"2.4.4-p18":0.0055,"2.4.4-p2":0.0025,"2.4.4-p3":0.0034,"2.4.4-p4":0.003,"2.4.4-p5":0.0045,"2.4.4-p6":0.0043,"2.4.4-p7":0.0042,"2.4.4-p8":0.0046,"2.4.4-p9":0.004,"2.4.5":0.0137,"2.4.5-p1":0.0102,"2.4.5-p10":0.0067,"2.4.5-p11":0.0093,"2.4.5-p12":0.0077,"2.4.5-p13":0.0076,"2.4.5-p14":0.0069,"2.4.5-p15":0.0069,"2.4.5-p16":0.009,"2.4.5-p17":0.0073,"2.4.5-p2":0.003,"2.4.5-p3":0.0049,"2.4.5-p4":0.0046,"2.4.5-p5":0.0049,"2.4.5-p6":0.0056,"2.4.5-p7":0.0054,"2.4.5-p8":0.0053,"2.4.5-p9":0.0048,"2.4.6":0.0302,"2.4.6-p1":0.0192,"2.4.6-p10":0.0123,"2.4.6-p11":0.0128,"2.4.6-p12":0.0099,"2.4.6-p13":0.0115,"2.4.6-p14":0.0099,"2.4.6-p15":0.0081,"2.4.6-p2":0.0052,"2.4.6-p3":0.0084,"2.4.6-p4":0.0102,"2.4.6-p5":0.0077,"2.4.6-p6":0.01,"2.4.6-p7":0.0091,"2.4.6-p8":0.0062,"2.4.6-p9":0.006,"2.4.7":0.0219,"2.4.7-p1":0.0166,"2.4.7-p10":0.0112,"2.4.7-p2":0.0094,"2.4.7-p3":0.0149,"2.4.7-p4":0.0185,"2.4.7-p5":0.0148,"2.4.7-p6":0.016,"2.4.7-p7":0.0153,"2.4.7-p8":0.0114,"2.4.7-p9":0.0074,"2.4.8":0.0212,"2.4.8-p1":0.0203,"2.4.8-p2":0.0172,"2.4.8-p3":0.0199,"2.4.8-p4":0.0163,"2.4.8-p5":0.0153,"2.4.9":0.0216,"unspecified":0.2166},"confidence":0.0453},"backportWorthy":{"score":1.6264,"probabilities":{"0":0.0693,"1":0.2349,"2":0.6958},"confidence":0.3161}},"curated":{"title":"Fixes the category runtime cache returning an object from the wrong store","description":"When emulation is used or custom code saves the category in different stores, the object stored in runtime by CategoryRepository get() with no storeId might be from wrong store, which causes data override. The cacheKey now uses the current store id, and the Category ResourceModel _saveCategoryProducts uses insertOnDuplicate on position, not insertMultiple.","categories":["Catalog/Product"],"author":"claude-code/opus-5.5","date":"2026-10-06","reviewedBy":null},"tests":{"2.4.7-p10":{"before":"not-runnable","after":"error","adapted":false,"runAt":"2026-10-06T09:30:16.668Z","releaseCommit":"72561bf80652f57cc642a03e2c9a51d74a285b14","suites":{"integration":{"before":"not-runnable","after":"error","runAt":"2026-10-06T09:30:16.668Z"}}}}},"_documentation":"https://magento.watch/api","_description":"Upstream fix magento2-36394 details"}