watermill
watermill copied to clipboard
[watermill-sql] Nacked message stays within one consumer
In watermill-sql, a bad behaving consumer, which always nacks an incoming message will completely block processing of messages in the respective consumer group, because the nack does not return the message to the sql server by rolling back the transaction. Therefore the message is never processed and all other consumers (in this consumer group) are blocked as well.
Therfore nack in the case of watermill-sql should rollback the ongoing transaction in order to give the other consumers the chance to pick up.
Hello @breml, I changed the title slightly if you don't mind. :wink: Thanks for the bug report! ]
If someone will have some time to fix it, you can also add a test for that in tests.