Setting the SqlCommand.CommandTimeout property to zero may cause a General Network Error (887126)
The information in this article applies to:
- Microsoft .NET Framework 1.1
- Microsoft .NET Framework 1.0
SYMPTOMSThe CommandTimeout property of the SqlCommand class is
set to zero. Zero is an infinite timeout. When a response from an instance of Microsoft
SQL Server is broken into more than one network packet, the connection will be
incorrectly closed, and a General Network Error will occur. RESOLUTIONTo resolve this problem, use one of the following methods: - Use a large value such as 7200 for the
CommandTimeout property.
- Apply the hotfix in the
following Microsoft Knowledge Base article:
823679 FIX: Multiple fixes for SQL Server .NET Data Provider
Note This problem occurs in both the Microsoft .NET Framework 1.0 and
the Microsoft .NET Framework 1.1. However, the hotfix is only available for the .NET Framework 1.1. STATUS This
behavior is by design.MORE INFORMATIONYou can detect this problem in a network monitor trace if
you run a query, and then you retrieve more than one packet of data at a time. By
default, the SqlClient packet size is 8 kilobytes (KB). However, in the network
monitor trace the packet may appear as multiple physical network packets that
total 8 KB when added together. After you receive the first packet, the
connection is closed with an ACK+FIN packet. SQL Server will continue to send
data afterward. The behavior causes a TCP/IP connection reset and causes the error. REFERENCES
For additional information, click the following article numbers to view the
articles in the Microsoft Knowledge Base: 827422
How to troubleshoot connectivity issues in SQL Server 2000
875285 TechNet Support WebCast: Known connectivity issues related to "General Network Error" error messages
Modification Type: | Major | Last Reviewed: | 10/15/2004 |
---|
Keywords: | kbSqlClient kbconnectivity kbtshoot kbprb KB887126 kbAudDeveloper |
---|
|