Microsoft KB Archive/309435

= PRB: SQL 2000 Server Fails to Start Due to Exception Access Violation After You Configure a High Lock Value =

Article ID: 309435

Article Last Modified on 10/3/2003

-

APPLIES TO


 * Microsoft SQL Server 2000 Standard Edition

-



This article was previously published under Q309435



BUG #: 355795 (SHILOH_BUGS)



SYMPTOMS
After you increase the SQL Server 2000 locks configuration value to a significantly higher value, SQL Server 2000 fails to start due to a fatal Exception Access Violation (AV). The AV may occur on both SQL Server 2000 RTM and SQL Server 2000 Service Pack 1 (SP1). The SQL Server 2000 error log will have stack information that is similar to: 2001-10-04 15:45:50.87 server   SqlDumpExceptionHandler: Process 2608 generated fatal exception c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server is terminating this process. --- Short Stack Dump 0082EAEC Module(sqlservr+0042EAEC) (LockManager::AllocateLockOwnerBlocks+00000047) 0054AAE7 Module(sqlservr+0014AAE7) (LockManager::Init+0000021E) 00549C0A Module(sqlservr+00149C0A) (StartUp::InitServerComponents+00000858) 00547100 Module(sqlservr+00147100) (sqlservr_main+0000016A) 77DC9571 Module(ADVAPI32+00019571) (CreateProcessWithLogonW+000000C8) --- 2001-10-04 15:45:52.51 server   SQL Server is aborting. Fatal exception c0000005 caught.
 * BEGIN STACK DUMP:
 * 10/04/01 15:45:50 spid 0
 * Exception Address = 0082EAEC (LockManager::AllocateLockOwnerBlocks + 00000047 Line 0+00000000)
 * Exception Code   = c0000005 EXCEPTION_ACCESS_VIOLATION
 * Access Violation occurred reading address 00000034
 * MODULE                         BASE      END       SIZE
 * sqlservr                      00400000  00B0EFFF  0070f000
 * ntdll                         77F80000  77FFAFFF  0007b000
 * KERNEL32                      77E80000  77F34FFF  000b5000
 * ADVAPI32                      77DB0000  77E0AFFF  0005b000
 * RPCRT4                        77D40000  77DAFFFF  00070000
 * USER32                        77E10000  77E73FFF  00064000
 * GDI32                         77F40000  77F7BFFF  0003c000
 * OPENDS60                      41060000  41065FFF  00006000
 * MSVCRT                        78000000  78045FFF  00046000
 * UMS                           41070000  4107CFFF  0000d000
 * SQLSORT                       42AE0000  42B6FFFF  00090000
 * MSVCIRT                       780A0000  780B1FFF  00012000
 * sqlevn70                      41080000  41086FFF  00007000
 * dbghelp                       72A00000  72A2CFFF  0002d000
 * Edi: 00000000:
 * Esi: 00A006A0: 19122020 19124020  28F90020  00020000  00000001  00000000
 * Eax: 00000000:
 * Ebx: 00000000:
 * Ecx: 000BA150: 00000000 00000000  00000000  00000000  00030002  00080100
 * Edx: 00000CEA:
 * Eip: 0082EAEC: 0C3440F6 C319850F  40F7FFD1  00410130  0C850F00  5FFFD1C3
 * Ebp: 00C4F694: 00C4F6CC 0054AAE7  0007A120  00000000  000B9478  000B9478
 * SegCs: 0000001B:
 * EFlags: 00010212: 004B0044 004C005C  00620069  0000005C  0055004E  0042004D
 * Esp: 00C4F680: 0007A120 00A006A0  0007A120  1AFE6100  00000000  00C4F6CC
 * SegSs: 00000023:
 * Ebp: 00C4F694: 00C4F6CC 0054AAE7  0007A120  00000000  000B9478  000B9478
 * SegCs: 0000001B:
 * EFlags: 00010212: 004B0044 004C005C  00620069  0000005C  0055004E  0042004D
 * Esp: 00C4F680: 0007A120 00A006A0  0007A120  1AFE6100  00000000  00C4F6CC
 * SegSs: 00000023:



WORKAROUND
To work around the problem, start SQL Server 2000 in minimal configuration mode by using Sqlservr.exe with the -c -f option and reconfigure the locks value to dynamic.

For example, use these steps:  At a command prompt, navigate to the path where the SQL Server 2000 instance is installed and use the following:

 For a SQL Server 2000 Default Instance:

Navigate to the Binn folder where the SQL Server 2000 default instance is installed and run the following command:

sqlservr.exe -c -f

 For a SQL Server 2000 Named Instance:

Navigate to the Binn folder where the SQL Server named instance is installed and run the following command:

sqlservr.exe -c -f -s Instance_Name 

  Connect to SQL Server through Query Analyzer, and then run this code: sp_configure 'locks ', 0 go reconfigure with override go  Navigate to the command prompt described in step 1, and then press CTRL+C. To shut down the SQL Server 2000 instance, type:

y </li></ol>

Additional query words: sp_configure locks Exception Acces Violation start fail

Keywords: kbprb KB309435

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.