20
Stored procedure '%.*s' is corrupted. Must re-create procedure.
This error can be caused to hardware problems.
Procedure buffers are data structures that manage Adaptive Server stored procedures (and other compiled objects like triggers, rules, defaults, check constraints, and views) in the procedure cache. The server uses one procedure buffer for every copy of a named object stored in the procedure cache.
The Procedure Buffer Manager maintains an array of procedure buffers in memory, and controls and synchronizes access to procedure buffers. It maintains a usage count to determine whether a procedure buffer is in use.
Error 2806 is raised when the Procedure Buffer Manager detects one of these problems:
While looking for an available procedure buffer for a given stored procedure or trigger, a buffer with a usage count greater than 1 is found. Buffers for a stored procedure or a trigger are not shared and should never have a usage count that exceeds 1.
While reading rows from sysprocedures, the Procedure Buffer Manager finds a header but no additional rows for the object.
While reading rows from sysprocedures, the Procedure Buffer Manager finds out-of-sequence rows for the object.
Error 2806 results from corrupted procedure buffers, which can be related to hardware or operating system problems.
If this is an isolated error on a user stored procedure or trigger, drop and re-create the procedure to resolve the problem.
If the error occurs on one or more system stored procedures (that is, procedures beginning with the sp_ prefix), recreate the sybsystemprocs database where system procedures reside. See “Recovering the sybsystemprocs database” in the System Administration Guide: Volume 2 for instructions.
If other errors are reported (2806 errors during installation of a new server are often accompanied by error 605 or other errors), follow the directions in this manual for recovering from those errors.
Have the information listed in “Reporting errors” ready if you call Sybase Technical Support.
All versions