[Somente PaaS]{class="badge informative" title="Aplica-se somente a projetos do Adobe Commerce na nuvem (infraestrutura do PaaS gerenciada pela Adobe) e a projetos locais."}

MDVA-31590: Não é possível atualizar atributos em massa usando filas assíncronas MySQL

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
NOTE
O patch pode se tornar aplicável a outras versões com as novas versões da Ferramenta de patches de qualidade. Para verificar se o patch é compatível com a sua versão do Adobe Commerce, atualize o pacote 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:

  1. 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.
  2. Defina valores para os atributos necessários e atribua produtos aos sites e salve.
  3. 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.
  4. Aguarde alguns segundos e recarregue a página de backend.

Resultados esperados:

  1. A página exibe uma mensagem de atualização bem-sucedida, como: 1 item(ns) foi(foram) atualizado(s) com êxito.
  2. Os valores de atributo para produtos relacionados são atualizados.
  3. No BD, novos registros são criados nas tabelas magento_bulk e magento_operation (operações relacionadas ao lote).
  4. Novos registros são criados na tabela queue_message (relacionada às filas product_action_attribute.update e/ou product_action_attribute.website.update).
  5. A tabela queue_message_status tem registros com o status "4".
  6. NÃO há erros em system.log.

Resultados reais:

  1. 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.

  2. Os valores de atributo dos produtos são atualizados.

  3. Um novo registro é criado na tabela message_bulk, mas não há registro(s) relacionado(s) na tabela magento_operation.

  4. Novos registros são criados nas tabelas queue_message e queue_message_status.

  5. A tabela queue_message_status possui registro com status de erro (valor de status "6").

  6. system.log contém um erro semelhante ao seguinte:

    code language-sql
    *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:

Leitura relacionada

Para saber mais sobre a Ferramenta de correção de qualidade, consulte:

Para obter informações sobre outros patches disponíveis no QPT, consulte a seção Patches disponíveis no QPT.

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