FIX: ODBC Driver May Return "TDS Buffer Link Too Large" Error

ID: Q176256

The information in this article applies to:

BUG #: 17365

SYMPTOMS

In a very slow network environment such as a WAN or dial-up network, where TDS packets may be delayed during normal transmissions, an ODBC application with asynchronous mode enabled may return one of the following TDS protocol related errors, depending on the timing of the network read and the versions of the ODBC drivers used:

This problem is more likely to occur when you are using TCP/IP sockets than other IPs.

CAUSE

When an ODBC driver's call to Net-Library fails to return data immediately due to slow network transmissions, the driver switches to asynchronous mode. When new TDS data arrives, the ODBC driver resumes its network read. However, under TCP/IP sockets with a slow and routed network (such as a WAN), where big TDS packets are typically split across different TCP packets and multiple TDS packets can be coalesced into a single TCP packet, the resumed network read may return the remaining part of the previous TDS packet (as it should), but the driver can be confused by this data stream, which causes the error.

Under other IPCs, multiple TDS packets are typically not coalesced together during transmissions; therefore, the problem is less likely to occur with other IPCs.

WORKAROUND

To work around this problem, disable the asynchronous mode. For more information on how to do this, consult your product documentation or see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q153908
   TITLE     : FIX: 16-bit Driver Times Out on Async Calls to SQLTables

STATUS

Microsoft has confirmed this to be a problem in the SQL Server ODBC driver versions 2.5 and 2.65. A supported fix is now available, but has not been fully regression- tested and should be applied only to systems experiencing this specific problem. Unless you are severely impacted by this specific problem, Microsoft recommends that you wait for the next Service Pack that contains this fix. Contact Microsoft Technical Support for more information.

Additional query words: netlib dblib db-lib async

Keywords          : kbnetwork ODBCGen SSrvGen 
Version           : WINDOWS:2.5 2.65
Platform          : WINDOWS
Issue type        : kbbug
Solution Type     : kbfix

Last Reviewed: November 20, 1997