PRB: Error 601 Occurs When Accessing a Database (239097)



The information in this article applies to:

  • Microsoft SQL Server 6.5

This article was previously published under Q239097

SYMPTOMS

When attempting to access a database or trying to run a query, you may receive the following error message:
Error : 601, Severity: 21, State: 1
Descriptor for system table '%Id' in database '%d' not found in the descriptor hash table.

CAUSE

This error indicates that the in-memory structure used by SQL Server to access a system table has been reused. Usually, only user-table descriptors are reused; system table descriptors are always in memory.

WORKAROUND

To work around this problem, shut down and restart SQL Server. This should temporarily alleviate the error 601; however, an underlying problem may still exist. To troubleshoot this problem, do the following:
  1. Examine the error logs and the parameters of sp_configure for additional information.
  2. Look for warnings indicating that open objects and open databases may be set too low.
  3. Look at the settings for memory, open objects, and open databases and increase them if they are not appropriate for the amount of physical memory, number of databases, and number of objects. For more information on how to determine the memory overhead for connections, objects, locks and databases, see the following article in the Microsoft Knowledge Base:

    160234 INF: Memory Overhead for Connections, Objects, Locks, and DBs

  4. Also run DBCC CHECKDB, DBCC NEWALLOC, and DBCC CHECKCATALOG to verify that there are no structural problems in the database that may have caused the error.

REFERENCES

SQL Server 6.5 Books Online; topic: "Error 601"

Modification Type:MajorLast Reviewed:10/3/2003
Keywords:kbprb KB239097