SQL Server - TCP connections suddenly failing.
Asked By ken.sumne
16-Apr-07 07:25 PM
I am running a large mission critical application on a cluster. This
is a 2003 server latest SP with SQL 2000 Enterprise latest SP also.
This app has run for years with little change. Today at around 3:00
all connections stopped coming in.
After some debugging, we found that we could connect with named
pipes., but not TCP. TCP has been the default protocol for years.
We have the server monitored and no changes occurred recently. The
server has not been rebooted in months, and the last time the instance
was restarted was two months ago.
What can cause a server that has run reliably using TCP for years to
stop accepting TCP connectionsl suddenly?
The errors I am getting is a handshake error trying to connect locally
using TCP, and I get a connection failed error remotely.
Connections are instant and lovely using named pipes.
Thanks for any help.
Kenneth Sumner replied...
just a FYI. I can telnet to udp and Tcp port.
Gabe Matteson replied...
Can you check
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Cluster
and make sure the clusteripaddr is set to the virtual server ip?
ken.sumne replied...
The clusteipaddr was fine on both instances on both all servers within
the cluster.
I want a root cause, but we took the cluster group offline and brought
it back online and that resolved the TCP connect issue.
On Apr 17, 5:51 am, "Gabe Matteson" <gmatteson.rounder.com.nospam>
ken.sumne replied...
Another issus that may have had an impact is that just before the
problem started, we had a 2019 Srv error: Server was unable to
allocate from the system nonpaged pool because pool was empty.
Can this have an impact on SQL Server TCP connections only, but allow
named pipes to connect?
Geoff N. Hiten replied...
Yes. IIRC, that is where systmem network buffers come from. By chance, do
you have a lot of .Net client application connections?
--
Geoff N. Hiten
Senior Database Administrator
Microsoft SQL Server MVP
ken.sumne replied...
We have a medium to high amount of .net connections Please explain
further... I am interested.
Geoff N. Hiten replied...
.Net uses an 8k packet size by default. This is larger than the SQL 2000
default packet size and requests for allocations must be serviced from the
system nonpaged memory pool rather than the internal network packet pool.
The high use from this pool can cause severe fragmentation and memory
starvation. You may want to lower the amount of physical memory allocated
to SQL Server in this situation.
--
Geoff N. Hiten
Senior Database Administrator
Microsoft SQL Server MVP
ken.sumne replied...
Thanks for the info. Doing the math, this could be our issue. But
how could that cause TPC only to stop working but allow named pipes
to work without issue?
ken.sumne replied...
I wasn't clear in the last post. The memory gets fragmented and the
OS is starved. There are issues and the noted error messages.
Reducing SQL's memory footprint, and allowing the OS more room, should
resolve the problem.
Now the question goes to why it quits accepting TCP connections? Are
you saying that the non-paged pool doesn't recover-- when the load
drops, and you must reinitialize this pool after this issue happens?
Kenneth Sumner replied...
That or something similar appears to be the case.
This error with non-paged memory happened at 3:00 yesterday afternoon.
There was heavy traffic, but there has been worse without error.
After this error no TCP connections could be made to the SQL server.
Pings to the server were fine. I could Telnet to the SQL instance
fine via both UDP port and to TCP port.
Connections were great with Named Pipes. The connection error
everyone got when they tried to connect to the server was either an
invalid connnect string error or a handshake error, like TCP was
suddenly Greek to the SQL instance.
We brought the clustergroup offline and then back online, TCP worked
problem resolved. The group was never moved nor did it fail over.
Geoff N. Hiten replied...
TCP packet allocation is different than named pipes and is not as sensitive
to nonpaged pool fragmentation. Wyy something breaks today and not
yestereday or tomorrow on an apparantly stable system is a question that
keeps many DBAs gainfully employed. I wish I had the easy answer to that
one.
--
Geoff N. Hiten
Senior Database Administrator
Microsoft SQL Server MVP
SQL Server MSDE on Windows 2003 R2 box, new DL385G6 - Install Fails during SQL Services I have been finding that I am having trouble with the Crystal Reports Server XI installation failing when it is dealing with SQL. So, as a thought and in case there was something wrong with my SQL portion of the isntall. I thought ok, I will try installing the actual MSDE application direct from Microsoft. So, I downloaded the MSDE for SQL 2000 (which is msde2000a.exe), set my switches and off to the races. It quit seconds left to the installation and bombed with the same errors as the Crystal Reports Server install. The error is the same whether I try to install MSDE by itself or
SQL Server unable to connect to sql server remotely This is a multi-part message in MIME format. - -- -- - = _NextPart_000_0006_01C831AE.4FC2B4D0 Content-Type: text charset = "iso-8859-1" Content-Transfer-Encoding: quoted-printable Here is my issue. I installed SQL 2005 on one of my servers. Up until 10 = minutes ago I was able to connect to the server remotely using SQL = Server Management Studio but I was unable connect to the SQL server from = the actual server
SQL Server Why_can’t_recursive_queries_contain. . .? hi I hope I didn = 92t put too many questions 1) Why can such as this is already a strong case to simply disallow the option. - - Hugo Kornelis, SQL Server MVP My SQL Server blog: http: / / sqlblog.com / blogs / hugo_kornelis MS SQL Server is a minimal subset of the ANSI / ISO Standards. In Standard SQL, the WITH clause
SQL Server error 10060 - going nuts This is a multi-part message in MIME format. - -- -- - = _NextPart_000_01C1_01C85874.74EDC7D0 hi all, I'm having a hard time trying to connect to a database using sql 200 or = 2005. this is the message I get: - -- -- -- -- -- -- -- -- -- -- -- -- -- -- = 20 Cannot connect to mssql.mynetkeepers 20 - -- -- -- -- -- -- -- -- -- -- -- -- -- -- = 20 ADDITIONAL INFORMATION: = 20 An error has occurred while establishing a connection to the server. = When connecting to SQL Server 2005, this failure may be caused by the = fact that under the default settings SQL Server does not allow remote = connections. (provider: TCP Provider, error: 0 - A connection attempt = failed because
SQL Server KB948110 / MS08-040, SQL 2000 & sa authentication Hi everyone, I'm having an issue installing KB948110 / MS08-04 security patch for SQL Server 2000 Standard. I'm getting the message: 1 or more SQL Server instances could not verify your account information when I provide sql authentication details when installing this patch. We have installed SQL Server 2000 STD on a