You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I believe the correct behavior should be to manually call CompleteMessageAsync when AutoComplete is disabled. So, I think this line should be modified to if (!_serviceBusProcessor!.AutoCompleteMessages).
Additionally, the default value of the AutoCompleteMessages property in AzureServiceBusOptions should be set to false. It was changed to true in a previous commit.
What do you think about this and am I missing something?
The text was updated successfully, but these errors were encountered:
Hi @mviegas
I received a subscription sponsorship for Azure ASB from Microsoft. Today, while testing Azure Service Bus, I encountered a "The lock supplied is invalid" error. I searched for the same issue on StackOverflow: https://stackoverflow.com/questions/28127001/the-lock-supplied-is-invalid-either-the-lock-expired-or-the-message-has-alread. The answer pointed towards the AutoCompleteMessages setting.
I checked the definition of AutoCompleteMessages.
It seems there's a logic error when acknowledging messages.
See
CAP/src/DotNetCore.CAP.AzureServiceBus/AzureServiceBusConsumerClient.cs
Lines 131 to 132 in 4d69d3e
I believe the correct behavior should be to manually call
CompleteMessageAsync
when AutoComplete is disabled. So, I think this line should be modified toif (!_serviceBusProcessor!.AutoCompleteMessages)
.Additionally, the default value of the
AutoCompleteMessages
property inAzureServiceBusOptions
should be set to false. It was changed to true in a previous commit.What do you think about this and am I missing something?
The text was updated successfully, but these errors were encountered: