[Endast PaaS]{class="badge informative" title="Gäller endast Adobe Commerce i molnprojekt (Adobe-hanterad PaaS-infrastruktur) och lokala projekt."}

ACSD-68064: Duplicera poster som skapats under schemalagda uppdateringar i miljöer med djupt inkapslade kategorier

Korrigeringen ACSD-68064 åtgärdar ett problem där schemalagda uppdateringar i miljöer med ett stort antal kapslade kategorier resulterar i dubblettposter och förhindrar att kategorier sparas. Den här korrigeringen är tillgänglig när Quality Patches Tool (QPT) 1.1.72 har installerats. Korrigerings-ID är ACSD-68064. Observera att problemet är planerat att åtgärdas i Adobe Commerce 2.4.9.

Berörda produkter och versioner

Korrigeringen har skapats för Adobe Commerce-version:

  • Adobe Commerce (alla distributionsmetoder) 2.4.7-p6

Kompatibel med Adobe Commerce-versioner:

  • Adobe Commerce (alla distributionsmetoder) 2.4.7 - 2.4.7-p7
NOTE
Korrigeringen kan bli tillämplig för andra versioner med nya Quality Patches Tool-versioner. Om du vill kontrollera om korrigeringen är kompatibel med din Adobe Commerce-version uppdaterar du magento/quality-patches-paketet till den senaste versionen och kontrollerar kompatibiliteten på Quality Patches Tool: Sök efter korrigeringsfiler ​. Använd patch-ID:t som söknyckelord för att hitta patchen.

Problem

Om du skapar schemalagda uppdateringar i miljöer med ett stort antal kapslade kategorier resulterar det i dubblettposter, vilket leder till fel och det går inte att spara kategorin.

Steg som ska återskapas:

  1. Installera en ren instans.

  2. Ändra filen med prestandakorrigeringar (small.xml) så att den innehåller:

    1. Categories: 2500
    2. Products: 250,000
  3. Generera data med kommandot:

    code language-none
    bin/magento setup:performance:generate-fixtures var/performance-toolkit/profiles/ce/small.xml
    
  4. När du har skapat produkter och kategorier ser du till att alla kategorier anges som ankarpunkter genom att köra följande fråga:

    code language-none
    UPDATE catalog_category_entity_int set value = 1 where attribute_id = (select attribute_id from eav_attribute where attribute_code = 'is_anchor');
    
  5. Indexera om data.

  6. Logga in på Admin-panelen och gå till Catalog > Categories.

  7. Flytta kategori 2 under kategori 1 om du vill skapa en mer kapslad struktur.

  8. Gå till en djupt inkapslad kategori, till exempel Kategori 2.1.1.

  9. Skapa en Scheduled Update.

  10. Klicka på Save.

Förväntade resultat:

Kategorin har sparats.

Faktiska resultat:

Ett fel inträffar och kategorin kan inte sparas. var/log/exception.log innehåller ett fel som liknar:

Exception #0 (Magento\Framework\DB\Adapter\DuplicateException): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '229-255' for key 'temp_category_descendants_619aaaaaaaaaa.PRIMARY', query was: INSERT INTO `temp_category_descendants_619aaaaaaaaaa` (`category_id`, `descendant_id`) SELECT `ce`.`entity_id` AS `category_id`, `ce2`.`entity_id` AS `descendant_id` FROM `catalog_category_entity` AS `ce`
 INNER JOIN `catalog_category_entity` AS `ce2` ON ce2.path LIKE CONCAT(ce.path, '/%') OR ce2.entity_id = ce.entity_id AND (ce2.created_in <= '1750287600' AND ce2.updated_in > '1750287600') WHERE ((ce.entity_id IN (4, 6, 7, 8, 10, 24, 25, 27, 30, 33, 34, 35, 36, 37, 40, 41, 42, 43, 44, 48, 51, 54, 56, 57, 59, 60, 63, 64, 65, 66, 67 .......

Tillämpa korrigeringen

Använd följande länkar beroende på distributionsmetod för att tillämpa enskilda korrigeringsfiler:

Relaterad läsning

Mer information om Quality Patches Tool finns i:

recommendation-more-help
c2d96e17-5179-455c-ad3a-e1697bb4e8c3