ACSD-59083: Tabela ou exibição base não encontrada erros durante atualizações mview
simultâneas
Criado para:
- Experiente
- Administrador
- Desenvolvedor
O patch ACSD-59083 corrige o problema em que determinadas operações de atualização do banco de dados falham com o erro 'Tabela base ou exibição não encontrada' quando as atualizações do mview
são executadas simultaneamente. Este patch está disponível quando o Quality Patches Tool (QPT) 1.1.57 está instalado. A ID do patch é ACSD-59083. Observe que o problema foi corrigido no Adobe Commerce 2.4.8.
Produtos e versões afetados
O patch foi criado para a versão do Adobe Commerce:
Adobe Commerce (todos os métodos de implantação) 2.4.5-p5
Compatível com as versões do Adobe Commerce:
Adobe Commerce (todos os métodos de implantação) 2.4.4 - 2.4.7-p3
magento/quality-patches
para a versão mais recente e verifique a compatibilidade na Quality Patches Tool: página Procurar patches. Use a ID do patch como palavra-chave de pesquisa para localizar o patch.Problema
Certas operações de atualização de banco de dados resultam em erros de 'Tabela ou exibição base não encontrada' quando as atualizações mview
são executadas simultaneamente.
Etapas a serem reproduzidas:
-
Defina o modo do indexador como Update on Schedule.
-
Inserir registros em
cl
tabelas usando os seguintes comandos SQL:INSERT INTO catalogrule_product_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO catalogrule_rule_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO catalogsearch_fulltext_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO catalog_category_product_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO catalog_product_attribute_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO catalog_product_category_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO catalog_product_price_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO customer_dummy_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO design_config_dummy_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO salesrule_rule_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO targetrule_product_rule_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO targetrule_rule_product_cl SELECT NULL, entity_id FROM catalog_product_entity;
-
Instale o perfil
setup/performance-toolkit/profiles/ce/small.xml
. -
Adicione um ponto de interrupção no arquivo
magento2ee/lib/internal/Magento/Framework/ForeignKey/Config/DbReader.php
na linha 72. -
Limpe o cache.
-
Clique em Add to Cart em qualquer produto.
-
Iniciar o trabalho cron quando a execução atingir o ponto de interrupção.
-
Retome o processo após iniciar o trabalho cron.
Resultados esperados:
As operações do banco de dados são executadas com êxito sem erros.
Resultados reais:
Ocorre um erro durante a execução:
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'magento24.design_config_dummy_cl__tmp663bb682960345_17794892' doesn't exist in /www/magento24/lib/internal/Magento/Framework/DB/Statement/Pdo/Mysql.php:90
Aplicar o patch
Para aplicar patches individuais, use os links a seguir, dependendo do método de implantação:
- Adobe Commerce ou Magento Open Source no local: Quality Patches Tool > Uso no guia Quality Patches Tool.
- Adobe Commerce na infraestrutura em nuvem: Atualizações e patches > Aplicar patches no guia do Commerce na infraestrutura em nuvem.
Leitura relacionada
Para saber mais sobre Quality Patches Tool, consulte:
- Quality Patches Tool: uma ferramenta de autoatendimento para patches de qualidade no guia Ferramentas.