Error 1143

Severity

22

Message text

Invalid OAM Page %ld. Expected object=%ld. Found object=%ld, database=%d, pstat=0x%x, indid=%d.

Explanation

This error occurs when the status on the page is not for an object allocation map (OAM) page or the page is an OAM page and the object ID on the page does not match the object to which the OAM page supposedly belongs.

Error 1143 is a serious error and may result in reading the wrong OAM page into data cache and corrupting a buffer in the process.

Action

  1. Make a note of the object ID and index ID in the error message output.

  2. If the corruption is on a user table’s index (object ID is 100 or greater and index ID is between 1 and 250), run dbcc checktable to verify that the data page linkage is good. If checktable runs cleanly, dropping and re-creating the index should clear the corruption.

    Use sp_helpindex to list all indexes on the table and then rebuild all the affected nonclustered indexes using one of two methods:

    • If index ID is between 1 and 250, drop and re-create each affected nonclustered index on the table.

    or:

    • If a clustered index also exists on the table, drop and re-create it, which causes all nonclustered indexes to be automatically rebuilt. If your table is large, you may not have the space to do this (a rule of thumb is that 150 percent of your table size must be available).

  3. If the corruption is not on an index page, run dbcc tablealloc or dbcc checkalloc on the corrupted object. The output should report OAM allocation errors. Try to fix the reported errors first by referring to the appropriate write-ups in this manual.

If the 1143 errors persist, call Sybase Technical Support.

Additional information

Before calling Sybase Technical Support, have the information available that is listed in “Reporting errors”, including output from dbcc page for the corrupted page and dbcc tablealloc or dbcc checkalloc for the corrupted object.

Versions in which this error is raised

All versions