No ratings

Error: "An operation on a socket could not be performed..."


The following error is presented on the K2 Server:  

An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full

This typically occurs at regular intervals (i.e. weekly, monthly, etc.)


This typically indicates that the K2 Server ran out of available transient ports . There are a few ways this can happen:

a) Code running that's opening connections to the K2 Server but never being closed.  It is good practice to review any custom code either in workflows or custom solutions that might be using the SourceCode.Workflow.Client API to open connections.  Make sure these connections are getting closed and disposed.

b) It's possible that when this occurs, there of workflows stuck in a Running state.  To confirm this, check the [Server].[ProcInst] table for instances in a status of 1, wait a short time, then run the query again to see if the same entries are returned.  Running (status 1) is a transient state and instances should not be remaining in this state.  If they are, it means they are stuck or looping.  Perhaps there is a workflow started on a monthly or weekly basis that causes this issue.

A monthly restart is also fairly normal and recommended. Typically, it would be best practice to restart the K2 Server service often, even if there are no performance issues occurring. Additionally, depending on the version of K2, it may require a fix pack to be applied to fix this issue.  If K2 Blackpearl version 4.7 is used, then there should be a fix included in the March 2018 Cumulative Update + fix pack 31. See the following KB for more information on this:


Labels: (2)
Version history
Last update:
‎07-07-2021 07:59 AM
Updated by: