FIX: Checkpoint Process Access Violation when Log Fills (158234)



The information in this article applies to:

  • Microsoft SQL Server 6.5 Service Pack 1 and later

This article was previously published under Q158234
BUG #: 16060 (Windows NT: 6.5)

SYMPTOMS

On SQL Server 6.5 SP1 (6.00.213) Alpha platforms, the checkpoint process will encounter an access violation (AV) if both of the following are true:
  • A database's transaction log becomes full between cycles of the checkpoint process.

    -and-
  • The database has the option "trunc. log on chkpt" enabled.
This problem is specific to Alpha platforms, and does not occur on non- Alpha versions of Microsoft SQL Server. To work around this problem, do not use the database option "trunc. log on chkpt." Instead, do one of the following:
  • Develop a procedure to regularly truncate your transaction log using the DUMP TRANSACTION command.

    -or-
  • Extend your transaction log to avoid encountering a transaction log full condition.

STATUS

Microsoft has confirmed this to be a problem in 6.5, Alpha Platform, Service Pack 1. This problem has been corrected in U.S. Service Pack 2 for Microsoft SQL Server version 6.5. For more information, contact your primary support provider.

MORE INFORMATION

The first symptom of this problem is a process filling up the transaction log, resulting in the following error in the errorlog:
spid n Error : 1105, Severity: 17, State: 2

spid n Can't allocate space for object 'Syslogs' in database 'pubs' because the 'logsegment' segment is full. If you ran out of space in Syslogs, dump the transaction log. Otherwise, use ALTER DATABASE or sp_extendsegment to increase the size of the segment.

After the log is full and the checkpoint process wakes up (the checkpoint process wakes up every 60 seconds), the following error will be written into the errorlog:
spid n Automatic checkpointing is disabled in database 'pubs' because the log is out of space. It will continue when the DBO successfully checkpoints the database. Please free up some space or extend the database and then run CHECKPOINT.

kernel checkpoint: Process 3 generated access violation; SQL Server is terminating this process.

This problem can occur if the log fills for any database that has the Truncate Log On Chkpt option enabled.

Modification Type:MajorLast Reviewed:10/3/2003
Keywords:kbBug kbfix kbnetwork KB158234