Microsoft KB Archive/170090

From BetaArchive Wiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Knowledge Base


FIX: Recovery May Fail w/Error 6902 and Mark Database as Suspect

Article ID: 170090

Article Last Modified on 10/16/2003



APPLIES TO

  • Microsoft SQL Server 6.5 Standard Edition



This article was previously published under Q170090

BUG #: 16964 (6.5)

SYMPTOMS

LOAD TRAN or recovery may fail with the following error and mark the database as suspect if UPDATETEXT was used to insert at least two text/image pages into the middle of an existing text/image column:

6902 21 Page timestamp value falls between the old and new timestamps
from log. Page #=%ld, object id = %ld, page timestamp=%04x %08lx. Log:
old timestamp=%04x %08lx, new timestamp=%04x %08lx.

CAUSE

When processing an UPDATETEXT statement that would insert one or more pages, the timestamp on the first page after the newly inserted pages is not changed until all pages are inserted. On recovery, SQL Server checks the timestamps before making any change on a page, which causes the problem.

WORKAROUND

To work around this problem, avoid using UPDATETEXT to insert data into the middle of existing text/image pages. However, UPDATETEXT works fine if new data is appended to the end rather than inserted into the middle.

STATUS

Microsoft has confirmed this to be a problem in SQL Server version 6.5. This problem was corrected in the latest Microsoft SQL Server 6.5 U.S. Service Pack. For information on obtaining the service pack, query on the following word in the Microsoft Knowledge Base (without the spaces):

   S E R V P A C K
                


Additional query words: tlog database wrong begin incomplete rollback forward abort

Keywords: kbbug kbfix kbusage KB170090