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

ACSD-67643: Dubblettposter skapas under schemalagda uppdateringar i högkapslade kategorimiljöer

Korrigeringen ACSD-67643 åtgärdar ett problem där dubblettposter skapas under schemalagda uppdateringar i miljöer med ett stort antal kapslade kategorier. Den här korrigeringen är tillgänglig när Quality Patches Tool (QPT) 1.1.71 har installerats. Korrigerings-ID är ACSD-67643. 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.8-p1

Kompatibel med Adobe Commerce-versioner:

  • Adobe Commerce (alla distributionsmetoder) 2.4.8 - 2.4.8-p2
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

Dubblettposter inträffar när schemalagda uppdateringar skapas för miljöer som har ett stort antal kapslade kategorier.

Steg som ska återskapas:

  1. Generera exempeldata:
    Använd en prestandakorrigeringsfil (till exempel: small.xml) med ändringar:
    Categories: 2,500
    Products: 250,000

  2. Kör följande kommando:

    code language-bash
    bin/magento setup:performance:generate-fixtures var/performance-toolkit/profiles/ce/small.xml
    
  3. När du har skapat produkter och kategorier måste du se till att alla kategorier är ankare genom att köra:

    code language-sql
    UPDATE catalog_category_entity_int SET value = 1 WHERE attribute_id = (SELECT attribute_id FROM eav_attribute WHERE attribute_code = 'is_anchor');
    
  4. Kör en fullständig omindexering.

  5. Logga in i serverdelen och öppna sidan Categories.

  6. Flytta kategori 2 till kategori 1 om du vill öka trädkapslingen.

  7. Gå till den mest kapslade kategorin (till exempel: Kategori 2.1.1).

  8. Skapa en schemalagd uppdatering och spara kategorin.

Förväntade resultat:

Kategorin har sparats.

Faktiska resultat:

Ett Error 500 inträffar och följande meddelande visas i loggarna:

    Magento\Framework\DB\Adapter\DuplicateException:
    SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '6-165' for key 'PRIMARY',
    query was: INSERT INTO `temp_category_descendants_68a35aea273fc` (`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, '/%')

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