NServiceBus.SqlServer
NServiceBus.SqlServer copied to clipboard
When `SqlServer.DisableDelayedDelivery` is set transport still returns `DoNotDeliverBefore` and `DelayDeliveryWith` constraints to core
When SqlServer.DisableDelayedDelivery is set transport still returns DoNotDeliverBefore and DelayDeliveryWith constraints to core. The setting doesn't really disable delayed delivery, its behavior is: "dont check for timeouts, and don't create the timeout queue".
Other transports that actually have a configuration API to disable delayed delivery will not return these delivery constraints. Core actively uses these to that when users invoke saga request timeout or delayed delivery options to throw an exception indicating that the transport does not support delayed delivery.
This settings exists only for ServiceControl but as other transports have similar config API's I think it would wise to:
- Make this key part of the public API
- Rename this key with a name that doesn't state "disable" but
UndocumentedServiceControlOptimilizationorIgnoreDelayedDeliveryInfraor something else or ensure that it actually disables delayed delivery meaning not returningDoNotDeliverBeforeandDelayDeliveryWithcapabilities to core.