The information in this article applies to:
SYMPTOMS
Under certain situations, DB-Library (DBLIB) cannot handle multiple
incoming tabular data stream (TDS) packets correctly, resulting in the
following error:
This problem typically occurs under TCP/IP sockets when multiple TDS packets are bundled in a single network packet and read to the DBLIB in one single ConnectionRead. Also, a data row must be split between TDS packets for the problem to occur. CAUSETypically, each TDS packet is sent to the client by a single network packet. However, under TCP/IP sockets, TCP may choose to bundle multiple TDS data packets into a single data segment to improve the network performance (this is also knowm as Nagle algorithm). This tends to create a situation where a data row is split across two consecutive ConnectionRead(), which causes the DBLIB to be unable to decode the TDS data correctly. STATUS
Microsoft has confirmed this to be a problem in Microsoft SQL Server
version 6.0. We are researching this problem and will post new information
here in the Microsoft Knowledge Base as it becomes available.
MORE INFORMATIONBecause only TCP/IP sockets applications are subject to the coalescing of data packets, the problem seems to occur only when TCP/IP sockets are used for the SQL Server connections. The problem does not occur under either named pipes or IPX/SPX. Additional query words: netlib Net-Library dbmssocn dbmssoc3
Keywords : kbbug6.00 |
Last Reviewed: March 27, 1999 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |