Particular / NServiceBus.SqlServer

SQL Server Transport for NServiceBus
https://docs.particular.net/nservicebus/sqlserver/
Other
42 stars 35 forks source link

Introduce a circuit breaker around MoveMaturedDelayedMessagesAndSwallowExceptions to prevent delayed delivery to silently stop working #1401

Open mauroservienti opened 1 month ago

mauroservienti commented 1 month ago

The recently fixed delayed delivery bug (https://github.com/Particular/NServiceBus.SqlServer/issues/1395) highlighted that there isn't a circuit breaker around the delayed delivery polling logic, and it can happen the "poller" (in the MoveMaturedDelayedMessagesAndSwallowExceptions method) stops polling with no errors.

Introducing a circuit breaker approach would be good, allowing exceptions to bubble up after a few failed attempts.