Home > Forum > General > Disconnecting LICENSE SERVICE ERROR

Disconnecting LICENSE SERVICE ERROR
0

Hello there!

We are encountering a similar issue as described here: https://community.webcon.com/forum/thread/4743?messageid=4743

Despite checking everything, we still haven't found a solution. After a few seconds, the license service stops and gets disconnected...

The problem seems to be:
The connection is initially established but after refreshing a few times it gets disconnected. How can we resolve this issue?

We have already set the TCP inbound rule to 8002.
The system time is correct.

OS: Windows Server 2016 1607 build 14393.7070

windows service log:
Faulting application name: WebCon.WorkFlow.Service.exe, version: 2023.1.3.202, time stamp: 0x8e09a86d
Faulting module name: ntdll.dll, version: 10.0.14393.7070, time stamp: 0x666269e8
Exception code: 0xc0000028
Fault offset: 0x00000000000a5a70
Faulting process id: 0x3dd8
Faulting application start time: 0x01dad1f5fad4b7a1
Faulting application path: C:\Program Files\WEBCON\WEBCON BPS WorkFlow Service\WebCon.WorkFlow.Service.exe
Faulting module path: C:\Windows\SYSTEM32\ntdll.dll
Report Id: e616e2b0-0f38-47b1-b76f-4f8b73147cc9


error log:

Message=No connection could be made because the target machine actively refused it. (license-serv:8002)
Source=System.Private.ServiceModel
StackTrace= at System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(HttpRequestException requestException, HttpRequestMessage request, HttpAbortReason abortReason)
at System.ServiceModel.Channels.HttpChannelFactory`1.HttpClientRequestChannel.HttpClientChannelAsyncRequest.SendRequestAsync(Message message, TimeoutHelper timeoutHelper)
at System.ServiceModel.Channels.RequestChannel.RequestAsync(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.RequestChannel.RequestAsyncInternal(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(MethodCall methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(MethodInfo targetMethod, Object[] args)
at generatedProxy_1.Ping()
at WebCon.WorkFlow.BusinessLogic.Licencing.LicenceClientManager.ServiceAgent.ExecuteInternal[TResult](Func`2 executionMethod)
at WebCon.WorkFlow.BusinessLogic.Licencing.LicenceClientManager.ServiceAgent.Execute[TResult](Func`2 executionMethod)
at WebCon.WorkFlow.BusinessLogic.Licencing.LicenceClientManager.CheckIfServiceIsWorking()

InnerException:

Message=No connection could be made because the target machine actively refused it. (license-serv::8002)
Source=System.Private.ServiceModel
StackTrace= at System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(HttpRequestException requestException, HttpRequestMessage request, HttpAbortReason abortReason)
at System.ServiceModel.Channels.HttpChannelFactory`1.HttpClientRequestChannel.HttpClientChannelAsyncRequest.SendRequestAsync(Message message, TimeoutHelper timeoutHelper)
at System.ServiceModel.Channels.RequestChannel.RequestAsync(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.RequestChannel.RequestAsyncInternal(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(MethodCall methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(MethodInfo targetMethod, Object[] args)
at generatedProxy_1.Ping()
at WebCon.WorkFlow.BusinessLogic.Licencing.LicenceClientManager.ServiceAgent.ExecuteInternal[TResult](Func`2 executionMethod)
at WebCon.WorkFlow.BusinessLogic.Licencing.LicenceClientManager.ServiceAgent.Execute[TResult](Func`2 executionMethod)
at WebCon.WorkFlow.BusinessLogic.Licencing.LicenceClientManager.CheckIfServiceIsWorking()



Thank you!

WEBCON

Hi,

Generally speaking, License Service role is handled by a thread of a WEBCON Workflow Service. This means that you can get license service error in two cases:
- a thread responsible for License Service dies,
- WEBCON Workflow Service is not responding at all (or is turned off).

The second case can happen on any WEBCON BPS version and for multiple reasons. Since we're talking about errors every "few seconds", a possible scenario is an infinite loop operation (like timeout actions) or other heavy operations which make Workflow Service to consume too much resources (or even memory leak) and crash. These are just examples, it'd require more diagnostics, such as monitoring resource usage, availability of other service roles etc.

However, on builds 2023.1.3 (up to and including .202) we recognized an issue that may lead to killing a License Service thread, leading to this error.
This may happen when some particular service operations exceed a time limit set in "Service operations timeout in seconds" (https://docs.webcon.com/docs/2024R1/Studio/SystemSettings/ServiceConf/SystemSettings_ServiceManagDetails#2-miscellaneous).
Most common reasons are:
- a recurrent (cyclical) action that creates/moves too many workflow elements or actions executed on these elements are too time-consuming
- a text layer is put on a PDF file and SOLR indexing of that text layer exceeds the limit.
That's why Tomasz and Przemysław suggested increasing the limit. In some cases this may be enough. But it may happen that there are still some configuration/optimization issues on the environment and some operations done by the Workflow Service are taking too much time.
It'd be a good idea to take a peek at action executions statistics (WFActionExecutions table) and recurrent action definitions (WFRecurrentActionsDefinitions table) and analyze if there are actions with long average duration times. Better optimization (lower automation times, lower amount of elements proceeded simultaneously) may give better results.

What's most important is that the issue with license service thread being killed will be addressed in next 2023.1.3 publication (builds higher than .202), so I'd suggest that every environment that's currently on 2023.1.3 should be upgraded to that version.

Kind regards