PRB: Dbmsspx3.dll Does Not Support Larger TDS Packet Size

Last reviewed: April 15, 1997
Article ID: Q152133
The information in this article applies to:
  • Microsoft SQL Server version 6.0

SYMPTOMS

The client-side SPX Net-Library for Windows, Dbmsspx3.dll, does not support negotiated packet size. If the DB-Library or ODBC application tries to use a larger TDS packet size, the following errors may occur when running a query that returns a large number of rows:

   Possible network error, read from SQL Server failed.
   General SQL Server error: Check messages from SQL Server.

   This command did not return data, and it did not return any rows
   DB-Library Process Dead - Connection Broken

After the query fails, the application may hang the workstation or cause the system to become unstable. Trying to close the application may cause Windows to exit unexpectedly.

Similar connection problems occur when using the 16-bit ODBC drivers with a TDS packet size larger than 512 bytes under IPX/SPX.

CAUSE

This problem is due to the architecture limit in the current version of Dbmsspx3.dll, which does not support a larger TDS buffer size.

WORKAROUND

You can avoid this problem by forcing the client application to use the default 512-byte TDS packet size. There are several ways this can be done:

  1. Don't make any explicit calls such as DBSETLPACKET() in your application
to set a larger packet size. 2. Configure your SQL Server default "Network Packet Size" to 512 bytes. 3. Use later versions of ODBC driver or DB-Library that can automatically restrict the packet size to 512 for SPX clients.


Additional query words: ipx/spx
Version : 6.0
Platform : WINDOWS


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: April 15, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.