Service Bus High CPU
-
13-12-2020 - |
Pregunta
I am experiencing slowdown on my SP 2016 onprem dev farm with Workflow Manager installed. I have traced it to Microsoft.ServiceBus.MessageBroker.exe service:
Also, in Microsoft-ServiceBus/Debug event log I can see numerous warnings with Event ID 60006:
An exception was handled at workflowdefaultnamespace:Topic:sharepoint/default/bb146885-1dcc-4153-a780-8eb09f382513/aafa9933-d87a-4767-a6f2-a518e3bc1607/wftopic|MTW. Exception message Messaging entity 'workflowdefaultnamespace:Topic:sharepoint/default/bb146885-1dcc-4153-a780-8eb09f382513/aafa9933-d87a-4767-a6f2-a518e3bc1607/wftopic|MTW' is currently disabled for Receive operations., Stack Trace
Server stack trace:
Exception rethrown at [0]:
at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
at Microsoft.ApplicationServer.Messaging.Broker.ComponentPartitionMessagingFactory.OnEndAcceptSessionReceiver(IAsyncResult result)
at Microsoft.ApplicationServer.Messaging.Broker.BrokerMessagingFactory.AcceptSessionReceiverAsyncResult.<GetAsyncSteps>b__67(AcceptSessionReceiverAsyncResult thisPtr, IAsyncResult r)
at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.EnumerateSteps(CurrentThreadType state)
Exception rethrown at [1]:
at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
at Microsoft.ApplicationServer.Messaging.Broker.BrokerMessagingFactory.EndAcceptSessionReceiver(IAsyncResult result)
at Microsoft.ApplicationServer.Messaging.Broker.NamespaceSessionManager.AcceptSessionAsyncResult.<GetAsyncSteps>b__9(AcceptSessionAsyncResult thisPtr, IAsyncResult r)
at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.EnumerateSteps(CurrentThreadType state).
Any help with this problem would be appreciated.
Solución
Ok, for me it was a relatively easy fix.
From event log record I recognized sharepoint/default/bb146885-1dcc-4153-a780-8eb09f382513/aafa9933-d87a-4767-a6f2-a518e3bc1607
is actually a scope.
Then I looked at scopes in WFResourceManagementDB
database and found out this particular scope was in Suspended
status:
SELECT TOP 1000 [ScopeId]
,[ParentScopeId]
,[DefaultWorkflowConfiguration]
,[WorkflowActivationThrottleThreshold]
,[WorkflowActivationThrottleTimeWindowInMinutes]
,[SecuritySettings]
,[Path]
,[Status]
,[HasTopic]
,[Description]
,[HasExceededTopicSizeQuota]
,[RevisionNumber]
,[Created]
,[LastModified]
,[LastRevised]
,[DisplayName]
,[RowVersion]
,[KeyRollingEnabled]
,[IsSnapshot]
,[IsSyncUpdate]
FROM [WFResourceManagementDB].[dbo].[Scopes]
Eventually I ran the PS script to remove this scope since it was being used on a site collection which I don't use any more:
PS C:\script> Remove-WFScope -ScopeUri http://servername:12291/sharepoint/default/bb146885-1dcc-4153-a780-8eb09f382513/aafa9933-d87a-4767-a6f2-a518e3bc1607
That scope has changed it's status in the database to Unregistered
.
And voila, the server is breathing again:
Hope this helps someone!