Hi,
We're having problems sending AMQP messages to on-premise service bus using the .net library (and other customers report having problems with the qpid library). The same message works fine when we use the net.tcp transport.
Example code:
static void Main(string[] args) { int firstSize = 49021; //Works int secondSize = 49022; //Does not work var ms = MessagingFactory.Create(); var qc = ms.CreateQueueClient("testping"); //This works on both transports qc.Send(new BrokeredMessage(new String('G', firstSize))); Console.WriteLine("First OK!"); //This works when using net.tcp transport, but fails when using AMQP. Get OperationCancelledException after 33-39sec. qc.Send(new BrokeredMessage(new String('G', secondSize))); Console.WriteLine("Second OK!"); //Never reached when using AMQP. }
Client library is 2.1.0.0, server version is 1.1.
Stack trace:
Unhandled Exception: Microsoft.ServiceBus.Messaging.MessagingException: The operation was canceled.TrackingId:e771f9fa805c44baaafe8e0722f990b9_BSvcBus1;884:886:887, Timestamp:28.11.2014 10:04:16 ---> System.OperationCanceledException: The operation was canceled. Server stack trace: Exception rethrown at [0]: at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result) at Microsoft.ServiceBus.Messaging.Amqp.AmqpMessageSender.SendAsyncResult.<getasyncsteps>b__3(SendAsyncResult thisPtr, IAsyncResult r) at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result) --- End of inner exception stack trace --- Server stack trace: Exception rethrown at [0]: at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result) at Microsoft.ServiceBus.Messaging.Amqp.AmqpMessageSender.OnEndSend(IAsyncResult result) at Microsoft.ServiceBus.Messaging.MessageSender.RetrySenderAsyncResult.<getasyncsteps>b__22(RetrySenderAsyncResult thisPtr, IAsyncResult r) at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result) Exception rethrown at [1]: at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result) at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.RunSynchronously() at Microsoft.ServiceBus.Messaging.MessageSender.OnSend(TrackingContext trackingContext, IEnumerable`1 messages, TimeSpan timeout) at Microsoft.ServiceBus.Messaging.MessageSender.Send(TrackingContext trackingContext, IEnumerable`1 messages, TimeSpan timeout) at Microsoft.ServiceBus.Messaging.MessageSender.Send(BrokeredMessage message) at Microsoft.ServiceBus.Messaging.QueueClient.Send(BrokeredMessage message) at SBMiniFail.Program.Main(String[] args) in c:\Dev\Tests\SBTests\SBMiniFail\Program.cs:line 21</getasyncsteps></getasyncsteps>
If I enable the Microsoft-ServiceBus Debug event log on the server, i get the following error, BOTH when the message sending succeeds and fails. The "Operational" contains
"connection877: Operation AsyncIoFault failed with error The decryption operation failed, see inner exception.."
And also
"gsession263: Operation CompleteAttach failed with error An AMQP error occurred (condition='amqp:link:redirect')..TrackingId:29107b7cd11146778dbb42019a3bc4c8_GSvcBus1,TimeStamp:11/28/2014 10:13:05 AM."
The Microsoft.ServiceBus.Client.Debug event log contains:
"connection884: Operation AsyncIoFault failed with error The decryption operation failed, see inner exception.."
then
"connection243: Operation AsyncIoFault failed with error The read operation failed, see inner exception.."
Since this shows up on both successes and failures, it might have nothing to do with the problem.
I can find no other interesting errors in the logs (nor exceptions), even when IncludeExceptionDetails = true. Anything else I can do?
This is really critical to us and our clients... hoping for a solution.