I'm having issues with Azure Message Bus Queues.
I'm having MessageLockLostException
thrown and The request operation did not complete within the allotted timeout of 00:01:10. The time allotted to this operation may have been a portion of a longer timeout.
I've set my queue into ReceiveMode.PeekLock
.
I also check
if(message.LockedUntilUtc.Minute <= 1)
message.RenewLock();
Why would this happen, what's causing the lock to give out? I was reading somewhere from the point where you Receive you have 5 minutes by default. This process takes a little longer usually. I wanted to renew the lock but this isn't working too well.
The LockDuration is property of the Queue. You typically set this when you create the Queue. This is Queue
level property and cannot be changed on a message base. What you've read, most probably is saying that this duration cannot be longer than 5 minutes. The default value is 1 Minute, that's why you face issues. And why you face it 70 seconds later - I assume the logic for checking this conditions is executed every 10 seconds.
So I suggest that you create or modify your Queue to set LockDuration property to 5 minutes. Then, while working RenewLock of your message when appropriate.