Microsoft KB Archive/153954

From BetaArchive Wiki
Knowledge Base


FIX: Checkpoint Process Deadlock Results in Errors 603, 3314

Article ID: 153954

Article Last Modified on 10/3/2003



APPLIES TO

  • Microsoft SQL Server 6.5 Standard Edition



This article was previously published under Q153954


SYMPTOMS

A stored procedure that performs the following actions:

  1. creates a temporary table
  2. inserts data into the table
  3. creates a cursor for read-only access that is then used to update the contents of the temporary table
  4. drops the cursor
  5. drops the temporary table

can, if executed by multiple users, result in the Checkpoint Process being chosen as a deadlock victim (spid 3). In this case, the following message will come up three times:

Your server command (process id 3) was deadlocked with another process and has been chosen as a deadlock victim. Re-run your command.


The message will be followed by the following errors:

603: There are not enough system session descriptors available to run this query. The maximum number available to a process is %d. Split query and rerun.

3314: Error while undoing log row in database '%.*s'. %S_RID.


A thread-level Access Violation will also be displayed.

If you run sp_who prior to receiving 1105 errors in tempdb, the Checkpoint Process is not present, and if the client processes continue to run, the result is that tempdb eventually fills because the log is not being truncated.


STATUS

Microsoft has confirmed this to be a problem in Microsoft SQL Server version 6.5. This problem was corrected in the latest Microsoft SQL Server U.S. Service Pack. For information on obtaining the Service Pack, query on the following word in the Microsoft Knowledge Base (without the spaces):

S E R V P A C K



Additional query words: sp1

Keywords: kbfix kbnetwork KB153954