Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 SQL Server 2000 Forums
 SQL Server Development (2000)
 SQL Connectivity Failure

Author  Topic 

sotocorno
Starting Member

1 Post

Posted - 2006-01-10 : 09:42:52
Hello Guys,

I would like to share with you a problem that I got and up to now I don't have any idea how to fix that up.

I had developed an application (VB 6.0 Platform) where the application is supposed to manage all plant scheduling activities, so it's complex and pretty.

I made use of OLEDB connection to reach my SQL Server, but as much as the system was getting bigger, the problem has been appearing.

The application seems normal for some time, but suddenly I got the following error messages when I'd try to run some big functionality: "General Network Error", "Connection Link Failure" and "Protocol Error in TDS Stream"

Those errors appears when the cursor is in the line that opens the recordset with the database.

Details:
1. I'm running the application under a 10/100mpbs network
2. The application has been developed in Visual Basic 6.0
3. The database type is a SQL Server 2000 (Service Pack 2.0)
4. The client is using MDAC 2.8 version
5. I already made use of ODBC connection type as well (but I got the same errors)

jen
Master Smack Fu Yak Hacker

4110 Posts

Posted - 2006-01-11 : 00:11:22
the message may mean many things, here are two things that I can think of:

1. ask your netadmin if there's unusual in the network performance if you're running the apps
2. the recordset you are retrieving has too many rows and the network is unable to handle the load

HTH

--------------------
keeping it simple...
Go to Top of Page

afrika
Master Smack Fu Yak Hacker

2706 Posts

Posted - 2006-01-11 : 03:08:27
Two things i would suggest

1. How long does it work normally for ?

2. Why use cursors. I learnt that cursors are not good. There are many issues to using them, esp memory leaks, perfomance problems, security disadvantages etc

Cursors are typically an expensive resource to open and maintain on a database server

Go to Top of Page

my_aro
Yak Posting Veteran

50 Posts

Posted - 2006-01-12 : 16:45:14
used to have this problem before when i was coding things in struts and i have written these physically in my mind so i wont forget it and usually this happens to .net developers..

General Network Error can be due to a variety of causes it meaning that the client lost its connection with a server due to:

- Database corruption and/or a handled Exception (seen in a SQL Server checkdb report and/or a SQL Server errorlog respectively) causing a spid to be killed

- A shutdown of the remote server while that stored procedure is executing (seen by inspecting the start time and end time between a pair of error logs).

- A name resolution problem (WINS, LMHOSTS and/or DNS)

- A SQL Server configuration problem (make sure http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q319942 are at defaults) in conjunction with an MDAC problem)

- A router problem, they call it a "black hole router" (that fails to forward packets greater than a certain size

- A Network problem related to the amount of data being sent - for example, for the purposes of a reproduction, try executing the contents of the stored procedure in Toad/ Query Analyser and (to test a different Database API), try Toad (which uses DB-Library)

to me it happened because i was doin' a large number of transactions consecutively and at that time due to some reasons a connection may become corrupt.. when this happens my EJB does not destroy it consecutively after using the connection, in your case it must be COM+ what happens is that it just simply puts back the connection pooling driven by my xml file. When next operation gets this connection, it gives error. Some suggests to either make pooling=false in your connection string always. This is not correct since you don’t get the benefits of a connection pooling(so whats the use of connection pooling anyway???). others suggests that increasing max pool size (typically order of thousands maybe a million of a thousand!hehehe joke) in connection string solves this problem, may be this works but this will not be a correct approach to solve the problem definitely..


Connection Link Failure:

likely caused by SQLServer disconnecting your idle session or if its within your General Network then it must be with the network which troubles..


TDS = Tabular Data Stream, is the protocol that SQL Server speaks
with its clients. This is a proprietary protocol, and the message
you get is the evidence of a bug somewhere. Basically there are
two possible reasons for this:

- Your server process ran into an access violation and was terminated
prematurely, and your client took this unexpected exit as a
protocol error. You can check the SQL Server errorlog. If there
are stack dumps that coincides with your protocol error, you have
found the reason.
- The other reason is true and genuine protocol error due to a bug
in SQL Server or in the client library.

Your best bet is to contact Microsoft Product Support for help. or maybe some other peps here can help you...


hope this helps!

quote:
can you breathe with your nose and and mouth at the same time??
Go to Top of Page
   

- Advertisement -