Fix: Message must be finished only on UnrecoverableExceptionInterface
This commit is contained in:
@ -6,6 +6,7 @@ namespace Nsq\NsqBundle\EventListener;
|
|||||||
use Nsq\NsqBundle\Messenger\NsqReceivedStamp;
|
use Nsq\NsqBundle\Messenger\NsqReceivedStamp;
|
||||||
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
|
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
|
||||||
use Symfony\Component\Messenger\Event\WorkerMessageFailedEvent;
|
use Symfony\Component\Messenger\Event\WorkerMessageFailedEvent;
|
||||||
|
use Symfony\Component\Messenger\Exception\UnrecoverableExceptionInterface;
|
||||||
use function Amp\Promise\wait;
|
use function Amp\Promise\wait;
|
||||||
|
|
||||||
final class AckUnrecoverableMessageListener implements EventSubscriberInterface
|
final class AckUnrecoverableMessageListener implements EventSubscriberInterface
|
||||||
@ -22,7 +23,7 @@ final class AckUnrecoverableMessageListener implements EventSubscriberInterface
|
|||||||
|
|
||||||
public function onMessageFailed(WorkerMessageFailedEvent $event): void
|
public function onMessageFailed(WorkerMessageFailedEvent $event): void
|
||||||
{
|
{
|
||||||
if ($event->willRetry()) {
|
if (!$event->getThrowable() instanceof UnrecoverableExceptionInterface) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user