From 4fac0e066f1e96ef8b12d46eb2b7cb7f91c99faa Mon Sep 17 00:00:00 2001 From: Konstantin Grachev Date: Thu, 8 Jul 2021 18:28:54 +0300 Subject: [PATCH] Fix: Message must be finished only on UnrecoverableExceptionInterface --- src/EventListener/AckUnrecoverableMessageListener.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/EventListener/AckUnrecoverableMessageListener.php b/src/EventListener/AckUnrecoverableMessageListener.php index 3a51966..4893fdb 100644 --- a/src/EventListener/AckUnrecoverableMessageListener.php +++ b/src/EventListener/AckUnrecoverableMessageListener.php @@ -6,6 +6,7 @@ namespace Nsq\NsqBundle\EventListener; use Nsq\NsqBundle\Messenger\NsqReceivedStamp; use Symfony\Component\EventDispatcher\EventSubscriberInterface; use Symfony\Component\Messenger\Event\WorkerMessageFailedEvent; +use Symfony\Component\Messenger\Exception\UnrecoverableExceptionInterface; use function Amp\Promise\wait; final class AckUnrecoverableMessageListener implements EventSubscriberInterface @@ -22,7 +23,7 @@ final class AckUnrecoverableMessageListener implements EventSubscriberInterface public function onMessageFailed(WorkerMessageFailedEvent $event): void { - if ($event->willRetry()) { + if (!$event->getThrowable() instanceof UnrecoverableExceptionInterface) { return; }