Error 7989



Message text

The serial allocation flag was found to be improperly set in allocation unit %ld, at extent ID %ld, with alloc map = %d and objid = %ld.  This flag has been cleared by DBCC.


When you initialize a database device, the space is divided into allocation units of 256 2K pages each. When an object requires space, Adaptive Server allocates a block of 8 2K pages within the unit, known as an extent, to the object.

The first page of each allocation unit is an allocation page, which stores information about each extent contained in the allocation unit. The allocation page also contains a serial allocation flag that indicates whether extents in the unit are allocated in serial, unbroken order. This flag enables more efficient processing: dumps and loads, for example, can process a set of transaction log pages as a group without having to traverse individual log pages.

dbcc checkalloc examines each allocation page for consistency. When it finds an allocation page with serial allocation turned on, checkalloc verifies that all extents in that allocation unit are indeed allocated serially. If this is not the case, checkalloc raises error 7989.


Error 7989 is informational. No action is needed. checkalloc resets the flag to indicate that the extents are not serially allocated.

Versions in which this error is raised

All versions