Msg 624 Could not retrieve row from page by RID...

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance

From: Scott (js.smithatverizondotnet)
Date: 07/17/04


Date: Sat, 17 Jul 2004 07:43:52 -0400

Running:
Microsoft SQL Server 2000 - 8.00.760 (Intel X86)
 Dec 17 2002 14:22:05
 Copyright (c) 1988-2003 Microsoft Corporation
 Standard Edition on Windows NT 5.2 (Build 3790: )

I have a stored procedure that is returning the following error:

Server: Msg 624, Level 20, State 2, Procedure Rpt27310Bal, Line 170
Could not retrieve row from page by RID because the requested RID has a
higher number than the last RID on the page. Rid pageid is (1:5697) and row
num is 0x47.Page pointer = 0x2b778000, PageId = (1:5697), flags = 0x8008,
objectid = 1371279390, indexid = 0, DBID 2.
Connection Broken

Line 170 of the sp is running the following update:

Update f set
  LinkID = OwnerOID
>From #working f
JOIN EventDetail d on d.EventDetailID = f.EventDetailID
Where f.OwnerTypeCode = 4 and d.TextBuffer1 like '%internaltrx=False%'

If I comment out that update, the error goes away. Sounds like a corrupt
EventDetail index (PK is EventDetailID nonclustered). So I recreated the
table and all indexes. Still getting the error.

I ran DBCC Checkdb with Repair_rebuild. It returned (along with all the
table summaries):
CHECKDB found 0 allocation errors and 0 consistency errors in database
'ELASAdmin'.
DBCC execution completed. If DBCC printed error messages, contact your
system administrator.

Any idea where I should go from here?

TIA,

Scott