Microsoft Service Bus - MessageSizeExceededException (EPiServer.Commerce 11.2.5)

Vote:
 

I've noticed recently that there are a bunch of errors logged by one of our application which involve Microsoft Service Bus.

Looking at the event id (8b448bc6-f7e1-4833-bdc7-ca338b77adfa) I was able to track this to the CatalogEventBroadcaster class which has a CommerceProductUpdated GUID which is used when rasing events.

Stack trace below:

Failed to send event. EventId=8b448bc6-f7e1-4833-bdc7-ca338b77adfa. Sequence=530.
Microsoft.ServiceBus.Messaging.MessageSizeExceededException: A request from the client instance has exceeded the maximum message size, and the underlying channel will be recreated. Validate the content size before retrying. TrackingId:7ce145de-3c03-4e32-8d1d-41c8bc976ce4, Timestamp:12/16/2017 1:07:11 AM ---> System.ServiceModel.FaultException`1[System.ServiceModel.ExceptionDetail]: A request from the client instance has exceeded the maximum message size, and the underlying channel will be recreated. Validate the content size before retrying. TrackingId:7ce145de-3c03-4e32-8d1d-41c8bc976ce4, Timestamp:12/16/2017 1:07:11 AM

Server stack trace: 


Exception rethrown at [0]: 
   at Microsoft.ServiceBus.Common.ExceptionDispatcher.Throw(Exception exception)
   at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
   at Microsoft.ServiceBus.Messaging.Sbmp.DuplexRequestBindingElement.DuplexRequestSessionChannel.EndRequest(IAsyncResult result)
   at Microsoft.ServiceBus.Messaging.Channels.ReconnectBindingElement.ReconnectChannelFactory`1.RequestSessionChannel.RequestAsyncResult.<>c.b__9_3(RequestAsyncResult thisPtr, IAsyncResult r)
   at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)

Exception rethrown at [1]: 
   at Microsoft.ServiceBus.Common.ExceptionDispatcher.Throw(Exception exception)
   at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
   at Microsoft.ServiceBus.Messaging.Channels.ReconnectBindingElement.ReconnectChannelFactory`1.RequestSessionChannel.EndRequest(IAsyncResult result)
   at Microsoft.ServiceBus.Messaging.Sbmp.RedirectBindingElement.RedirectContainerChannelFactory`1.RedirectContainerSessionChannel.RequestAsyncResult.<>c__DisplayClass8_1.b__4(RequestAsyncResult thisPtr, IAsyncResult r)
   at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)

Exception rethrown at [2]: 
   at Microsoft.ServiceBus.Common.ExceptionDispatcher.Throw(Exception exception)
   at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
   at Microsoft.ServiceBus.Messaging.Sbmp.RedirectBindingElement.RedirectContainerChannelFactory`1.RedirectContainerSessionChannel.EndRequest(IAsyncResult result)
   at Microsoft.ServiceBus.Messaging.Channels.ReconnectBindingElement.ReconnectChannelFactory`1.RequestSessionChannel.RequestAsyncResult.<>c.b__9_3(RequestAsyncResult thisPtr, IAsyncResult r)
   at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)

Exception rethrown at [3]: 
   at Microsoft.ServiceBus.Common.ExceptionDispatcher.Throw(Exception exception)
   at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
   at Microsoft.ServiceBus.Messaging.Channels.ReconnectBindingElement.ReconnectChannelFactory`1.RequestSessionChannel.EndRequest(IAsyncResult result)
   at Microsoft.ServiceBus.Messaging.Sbmp.SbmpTransactionalAsyncResult`1.<>c.b__18_3(TIteratorAsyncResult thisPtr, IAsyncResult a)
   at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)

Exception rethrown at [4]: 
   at Microsoft.ServiceBus.Common.ExceptionDispatcher.Throw(Exception exception)
   at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
   at Microsoft.ServiceBus.Messaging.Sbmp.SbmpMessageSender.EndSendCommand(IAsyncResult result)
   --- End of inner exception stack trace ---
   at Microsoft.ServiceBus.Common.ExceptionDispatcher.Throw(Exception exception)
   at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
   at System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic(IAsyncResult iar, Func`2 endFunction, Action`1 endAction, Task`1 promise, Boolean requiresSynchronization)

#186328
Dec 18, 2017 8:56
Vote:
 

Hi,

We've seen this before but it was unclear which caused it. Thank you for pointing out - we will look into this.

#186333
Dec 18, 2017 9:40
Vote:
 

This has been accepted as COM-6051 and we're working on a fix.

#186987
Jan 09, 2018 20:50