r-martins/PagSeguro-Magento-Transparente-M2

Página de sucesso rediciona cliente para carrinho vazio

Closed this issue · 2 comments

Ao finalizar uma compra, o cliente é redirecionado para página de carrinho (que está vazio).
O pedido é enviado ao Magento e ao PagSeguro normalmente, mas causa a impressão que o pedido não foi finalizado com sucesso.

O problema se dá quando o Magento está usando Redis para armazenar dados de sessão.
Ainda estamos investigando o que ocorre e se é de fato um problema no módulo ou no Magento.
Qualquer feedback ou descoberta é bem-vindo.

Após análise, constatamos que o problema se dava no nível do Redis.
Eventualmente o problema era logado no system.log como podemos ver abaixo.

==> var/log/system.log <==
[2019-08-29 05:27:13] main.WARNING: 50136: Did not write session for ID 27688t2r64ja1b8sr60u0iap10: another process took the lock. /rest/default/V1/guest-carts/zEdS7vQ3ED8xbIcgqznAZ7eTJRr4Pqpj/payment-information [] []

Issue externa relacionada: colinmollenhour/Cm_RedisSession#56

Solução
Abra o arquivo app/etc/env.php da sua loja, e altere o parâmetro break_after_frontend dentro de session->redis. O valor padrão é 5. Aumente para 15, por exemplo. Mais informações aqui.

Limpe os caches (bin/magento cache:flush (cache:flush config deve ser suficiente)).

Pronto.