FIX: ODBC 6.0 Driver Sometimes Cannot Get Results w/ dbmsspx3

Last reviewed: October 29, 1997
Article ID: Q135312
2.50.0121 6.00 WINDOWS kbnetwork kbbug2.50.0121 kbbug6.00

The information in this article applies to:

  • Microsoft SQL Server, version 6.0
  • Microsoft Open Database Connectivity, version 2.5

BUG# NT: 10051 (6.00)

SYMPTOMS

If the Microsoft ODBC 2.50.0121 Win16 SQL Server driver is running against a SQL Server version 6.0 database whose sp_configure network packet size is greater than 512 bytes, the following error occurs:

   szSqlState="01000", pfNativeError = 253,
   szErrorMsg="[Microsoft][ODBC SQL Server driver][DBMSSPX3]
               ConnectionRead(SPXListenForSequencedpacket())."

The default for the sp_configure packet size on installation is 4096, so new SQL Server version 6.0 sites may see this problem the first time they attempt to access the server from a data source configured to use the Win16 driver and DBMSSPX3.

The problem does not occur with the Win32 ODBC driver. It does not occur if the application is accessing a version 4.21a server because the 4.21a servers always run with a 512 packet size which is not configurable. The problem also does not occur with dblib clients, such as the SQL Server utilities.

The key to determining if this is the specific error encountered is to confirm that the pfNative error returned by the driver is 253. A Novell 253 error on a SPXListenForSequencedpacket call indicates that an overflow has occurred on a network packet buffer. Other problems, such as network configuration problems, may generate the same SqlState and ErrorMsg values, but they will generally have different pfNative values.

CAUSE

The Microsoft ODBC 2.50.0121 Win16 SQL Server driver cannot retrieve results from a SQL Server version 6.0 system if it is working with DBMSSPX3 network library and the server is configured to have a network packet size larger that 512 bytes.

WORKAROUND

Set the SQL Server network packet size to 512 using either the SQL Enterprise Manager, or by issuing the following command in ISQL:

   sp_configure 'network packet size', 512
   go
   reconfigure
   go

You should then stop and restart SQL Server. Other options are to use the Win32 ODBC driver, or to use the DBNMP3 network library instead of DBMSSPX3.

STATUS

Microsoft has confirmed this to be a problem in the Microsoft ODBC SQL Server driver version 2.50.0121. This problem was corrected in Service Pack 1 for SQL Server version 6.0. For more information, contact your primary support provider.


Additional reference words: 6.00 sql6 2.50
KBCategory: kbnetwork kbbug2.50.0121 kbbug6.00 kbfix6.00.sp1
KBSubcategory: SSrvLan
Keywords : SSrvLan kbbug2.50.0121 kbbug6.00 kbfix6.00.sp1 kbnetwork
Version : 2.50.0121 6.00
Platform : WINDOWS
Solution Type : kbfix


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: October 29, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.