FIX: Dump Aborts if PG_DMPTRLR Bit Set (MSG 3220)

ID: Q161741


The information in this article applies to:


SYMPTOMS

When you attempt to dump a database in which the PG_DMPTRLR bit has been set, the dump will terminate prematurely with the following error:

Msg 3220, Level 16, State 1, Server <server>, Line 1
page <pagenum> of database <name> has the PG_DMPTRLR bit set
Msg 3204, Level 16, State 1, Server <server>, Line 1
Operator aborted Dump or Load.


WORKAROUND

This problem occurs most frequently in databases in which other corruption problems exist, typically in the form of page or extent allocation errors. Correction of existing database errors usually results in the ability to perform a successful dump of the database for which the error 3220 has been reported.

If the error occurs on a page for which a 2540 error exists, run the DBCC FIX_AL() command against the database in question. Deallocation of the mis- allocated page will correct the problem under this condition.

NOTE: it is necessary to carefully review the output from DBCC FIX_AL(), to ensure that error 7915 has not been reported. If error 7915 has been reported, the FIX_AL() will not correct the allocation discrepancies, and you will receive the following message:

Allocation page <pagenum> extid <extentid> is referenced, but there are
no referenced pages within this extent. Contact Tech Support for object
<objid>.

Should message 7915 be reported from DBCC FIX_AL(), contact technical support for assistance in resolving this error.



In cases in which DBCC NEWALLOC() does not report allocation errors, the error may exist on a correctly allocated data page. Identify the object on which the error occurs (see the SQL Server Troubleshooting Guide, Appendix A, "Associating a page with an Object"). If the error occurs on a table object, export the data, drop and re-create the table, and import the data again. It is also possible that the error will occur on an index page. Should this situation arise, drop and re-create the index to which the page specified in the error message belongs.


STATUS

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


MORE INFORMATION

SQL Server versions prior to 6.5 did not check to see if this bit was set while performing a database dump. This allowed for situations in which an error 605 would occur when attempting to reload a database that was dumped while the PG_DMPTRLR bit was set. The check for the PG_DMPTRLR bit, which was added in SQL Server 6.5, was designed to address SQL Server 6.0 bug 11857, "Need to check and clear PG_DMPTRLR status at DUMP DATABASE time."


Keywords          : kbusage SSrvGen 
Version           : 6.5
Platform          : WINDOWS 
Issue type        : 

Last Reviewed: April 7, 1999