Closed LaserEule closed 1 year ago
@yiliuTo could you please follow up with @LaserEule on this reported issue with spring-cloud-azure-starter-servicebus-jms?
Hi @vinaysurya , please help take a look at the 'The SessionId was not set on a message' error, thanks!
Guys, any update?
I did some further debugging and looked at the message just before it's sent. Here's the screenshot of the message properties when it's sent to the standard tier servicebus:
And here's another screenshot of the message properties when the message is sent to the premium tier servicebus:
As you can see, in both cases the _groupId property is set. The standard tier servicebus accepts the message, no problem. The premium tier throws the error message above, stating that the session id is not set, but it is set, as seen from the screenshots. @vinaysurya please advise on how to proceed, thank you.
Hi @LaserEule, could you provide a minimal project for us to reproduce this issue?
Hello @saragluna, please find attached my sample project. The main thing happens in the Sender.java class. The way you reproduce the issue I'm talking about: You set the app up to connect to a standard-tier service bus (I used a service principal with a certificate) and run it and the send() method sends the message to the queue -> no problem. Connect the app to a premium-tier service bus and run it again, this time the app produces the error message from my initial post.
Thank you for looking into this.
@yiliuTo did you manage to get a look at the sample I provided?
Hi @LaserEule, @vinaysurya will look into this issue. @vinaysurya please update here if you have some findings.
Guys, any update? Don't mean to be pushy, but I'm approaching a deadline and this issue is very much a showstopper... Thanks!
@LaserEule It looks like there might be a bug on ServiceBus premium that may be causing this behavior. We are evaluating a fix for it. However, I'm curious how you are able to receive messages from a ServiceBus sessionfulQueue in JMS? Are you using JMS only for Send side and using some other sdk to receive messages from the Sessionful queue.
For future reference, the issue mentioned in this thread should be fixed soon. This was a bug on ServiceBus service side on premium messaging and a fix will be deployed in the next couple of months. So once that is deployed, we should not see this problem again.
Describe the bug I have a spring boot app which sends messages to a session-enabled queue. This queue is in a premium tier Service Bus. I get the error message that the session id is not set on the message, although it is.
I set the session id through setting the JMSXGroupID property in a message post processor, as shown in my code below. I have tried the below in a standard tier service bus und there it works. It only doesn't work in my premium tier service bus. I also wrote a little demo app to verify the issue.
Exception or Stack Trace
To Reproduce Steps to reproduce the behavior: Send a message that has the session id set via springs JmsTemplate to a session enabled queue in a premium tier service bus.
Code Snippet
Expected behavior The message can be sent successfully, since the session id is set.
Setup (please complete the following information):