-
Notifications
You must be signed in to change notification settings - Fork 52
amqp: receiver settlement mode "second" requested, received "first" from server #119
Comments
Same here, suddenly happened today. |
And we've got the same. :( |
I believe if you lock into [email protected] this should not happen (https://github.com/vcabbage/amqp/releases). In 0.11.0, the handling of settlement mode became strict. I'm not sure what has triggered this bug (either a server code change or an update to the AMQP lib in your deployments). If everyone can provide the version of AMQP they are using, it would be super helpful. Either way, I will address this issue today. Sorry for the inconvenience. |
In our production branch we use dep:
|
Probably shouldn't have closed this with the After upgrade (0.4.1), if you run into the issue again, please reopen. |
Thanks @devigned |
I'm still getting to the bottom of that. The facts as they stand now, is that when I updated to 0.11.0, the test suite passed. After this issue was opened, I ran the test suite again and it didn't pass due to settlement mismatch when creating a sender. I'll report back as a root cause is determined. /cc @maggiepint |
As a data point, the following was working ok: The following does not work: |
The Azure Service Bus had deployed a change to the service which responded unexpectedly when negotiating the link mode, thus the error noted in the original issue. The service has rolled back the change and should work with amqp v0.11.0. This also explains why this worked initially when migrating to amqp v0.11.0 and tests passed in some other regions (onion skin deployment of service changes). Based on this experience, we will have planned work to run more test scenarios in the canary environment to prevent an issue like this from reaching customer regions. We are very sorry about the inconvenience. Please don't hesitate to reopen this issue if you think this issue has not been resolved. |
I'm still seeing this issue w amqp v0.11.0, but not with amqp v0.10.4 |
@orourkedd what version of azure-service-bus-go are you using? |
From my go.mod: github.com/Azure/azure-service-bus-go v0.3.0 |
There's the issue. I would suggest updating to the latest version if possible, |
That did it. Thanks! |
I'm noticing this issue intermittently. It turns out that the downgrade to v0.3.0 was the result of debugging v0.8.0. The issue is happening again. Here are my go.mod and go.sum: go.mod
go.sum
|
After further investigation, I can confirm that it's not intermittent. It happens consistently on one topic/subscription but not on another. What I mean is that when I try with topic The only difference that I can think of is that |
Wow... That is really odd, @orourkedd! @nemakam, any thoughts on why SB would behave this way? |
Here are the settings for the subscriptions. These settings are the only other differences I can find, outside of creation time. Additionally, the not-working topic has 3 subscriptions and the working topic has 1 subscription. Not Working:
Working:
|
I found another case where this error can occur. If one is receiving using a session filter I'm working on a fix to provide the underlying error rather than the receiver settlement mode error. |
As of v0.11.2 of pack.ag/amqp this error will be returned only in the case of actual settlement mode mismatch. The dependency on v0.11.2 has been merged into master and should resolve this issue. |
…entioned in Azure/azure-service-bus-go#119 . Will think about using the latest amqp lib again once Azure Service Bus has fixed this issue
A few hours ago our production code suddenly started getting errors from queue.Send()
Error: receiver settlement mode "second" requested, received "first" from server
Just in case I'm providing how we create queue client instances:
After
go get -u
:azure-amqp-common-go v1.1.4
azure-service-bus-go v0.4.0
The text was updated successfully, but these errors were encountered: