This article was previously published under Q133384
When you run a TCP/IP sockets based program on a Windows NT computer a non-paged pool memory leak occurs. When the memory leak occurs for a while itcauses Windows NT to malfunction and the following out of memory errorappears in the system log:
Event ID 2019
Description: The server was unable to allocate from the system nonpaged pool because the pool was empty.
To determine that there is a memory leak:
Run Performance Monitor.
From the Edit menu, choose Add To Chart.
In the Object field, select Memory.
In the Counter field:
Select Pool Nonpaged Bytes and choose Add.
Select Pool Paged Bytes and choose Add.
Choose Done and watch Performance Monitor in Chart view mode.
If the Nonpaged value rises rapidly while the TCP/IP sockets program is running then you may be experiencing this problem.
Example configurations under which this problem may occur:
Systems Management Server needs to communicate with an SQL server.
A SQL default client is configured for sockets - not Named Pipes.
TCP/IP is installed on the server, but SQL Server is not set up to use it. SQL Server is designed to use Named Pipes only.
Systems Management Server uses the default SQL client configuration for sockets.
Systems Management Server attempts to access SQL using sockets repeatedly.
This problem can be caused by a TCP/IP sockets program that continuouslyattempts to open a socket port that does not exist.
To work around this problem, correct your TCP/IP sockets program so that itdoes not attempt to open the unsupported socket port.
To correct this problem, install the latest U.S. Service Pack for WindowsNT version 3.51.
Microsoft has confirmed this to be a problem in Windows NT version 3.51.This problem has been corrected in the latest U.S. Service Pack for WindowsNT version 3.51. For information on obtaining the Service Pack, query onthe following word in the Microsoft Knowledge Base (without the spaces):