MDVA-31590: Não é possível atualizar atributos em massa usando filas assíncronas MySQL
- Tópicos:
- Atributos
Criado para:
- Experiente
- Administrador
O patch MDVA-31590 resolve o problema em que os usuários não conseguem atualizar atributos em massa usando filas assíncronas MySQL. Este patch está disponível quando a Ferramenta de Patches de Qualidade (QPT) 1.1.3 está instalada. A ID do patch é MDVA-31590. Observe que o problema foi corrigido no Adobe Commerce 2.4.2.
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.0
Compatível com as versões do Adobe Commerce:
- Adobe Commerce (todos os métodos de implantação) 2.4.0-2.4.1-p1
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
Os usuários não podem atualizar atributos em massa usando o MySQL async.
Etapas a serem reproduzidas:
- Na grade de produtos no back-end do, execute uma ação em massa para atualizar os valores de atributo de alguns produtos.
- Verifique os produtos e selecione Atualizar atributos na lista suspensa Ações.
- Defina valores para os atributos necessários e atribua produtos aos sites e salve.
- Quando a página for recarregada, exibirá uma mensagem como a seguinte:
Tarefa "Atualizar atributos para N produtos selecionados": 1 item(ns) foi(foram) agendado(s) para uma atualização. - Aguarde alguns segundos e recarregue a página de backend.
Resultados esperados:
- A página exibe uma mensagem de atualização bem-sucedida, como: 1 item(ns) foi(foram) atualizado(s) com êxito.
- Os valores de atributo para produtos relacionados são atualizados.
- No BD, novos registros são criados nas tabelas
magento_bulk
emagento_operation
(operações relacionadas ao lote). - Novos registros são criados na tabela
queue_message
(relacionada às filasproduct_action_attribute.update
e/ouproduct_action_attribute.website.update
). - A tabela
queue_message_status
tem registros com o status "4". - NÃO há erros em
system.log
.
Resultados reais:
-
A página ainda exibe uma mensagem como a seguinte:
Tarefa "Atualizar atributos para N produtos selecionados": 1 item(ns) foi(foram) agendado(s) para uma atualização. -
Os valores de atributo dos produtos são atualizados.
-
Um novo registro é criado na tabela
message_bulk
, mas não há registro(s) relacionado(s) na tabelamagento_operation
. -
Novos registros são criados nas tabelas
queue_message
equeue_message_status
. -
A tabela
queue_message_status
possui registro com status de erro (valor de status "6"). -
system.log
contém um erro semelhante ao seguinte:*main.CRITICAL: Message has been rejected: SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'operation_key' cannot be null, query was: INSERT INTO {{magento_operation}} ({{id}}, {{bulk_uuid}}, {{topic_name}}, {{serialized_data}}, {{result_serialized_data}}, {{status}}, {{error_code}}, {{result_message}}, {{operation_key}}) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?) [] []*
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 a Ferramenta de correção de qualidade, consulte:
- Ferramenta de correções de qualidade lançada: uma nova ferramenta para autoatender correções de qualidade na base de dados de conhecimento de suporte.
- Verifique se há um patch disponível para o problema do Adobe Commerce usando a Ferramenta de Patches de Qualidade no guia Quality Patches Tool.
Para obter informações sobre outros patches disponíveis no QPT, consulte a seção Patches disponíveis no QPT.