FIX: 'Load Tran' May Cause 806, 605, 2620, or 6902 with IRL on (165166)



The information in this article applies to:

  • Microsoft SQL Server 6.5

This article was previously published under Q165166
BUG#: 16666 (6.5)

SYMPTOMS

With Insert Row Locking (IRL) turned on, if lock escalation occurred during an index page split, and the transaction was still open when 'dump tran' was performed, 'load tran' using this dump file may result in any one of the following error messages:
Msg 806, Level 21, State 1, Line 1
Could not find virtual page for logical page %Id in database '%.*s'

Msg 605, Level 21, State 1, Line 1
Attempt to fetch logical page %ld in database '%.*s' belongs to object
'%.*s', not to object '%.*s'.

Msg 2620, Level 21, State 3, Line 1
The offset of the row number at offset %d does not match the entry in
the offset table of the following page: %S_PAGE.

Msg 6902, Level 21, State 0, Line 1
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

The log record type was set to IRL at beginning of the transaction, but size was set to something else since lock escalation had occurred.

WORKAROUND

It is possible to avoid this problem by increasing sp_configure option 'LEThreshold Maximum'. See SQL Server Books-Online for more information on this option.

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.

Modification Type:MajorLast Reviewed:10/3/2003
Keywords:kbbug kbfix kbusage KB165166