mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-23 04:43:03 +01:00
Fixed bug CORE-2340 : Bugcheck 258 (page slot not empty) could occurs under high concurrent load
This commit is contained in:
parent
781a565209
commit
ff50ab26a2
@ -2614,16 +2614,16 @@ static void extend_relation( thread_db* tdbb, jrd_rel* relation, WIN * window)
|
||||
CCH_MARK(tdbb, &pp_window);
|
||||
ppage->ppg_header.pag_flags &= ~ppg_eof;
|
||||
ppage->ppg_next = new_pp_window.win_page.getPageNum();
|
||||
ppage = (pointer_page*) CCH_HANDOFF(tdbb, &pp_window, new_pp_window.win_page.getPageNum(),
|
||||
LCK_write, pag_pointer);
|
||||
break;
|
||||
--pp_sequence;
|
||||
}
|
||||
CCH_RELEASE(tdbb, &pp_window);
|
||||
}
|
||||
|
||||
/* We've found a slot. Stick in the pointer to the data page */
|
||||
|
||||
if (ppage->ppg_page[slot]) {
|
||||
if (ppage->ppg_page[slot])
|
||||
{
|
||||
CCH_RELEASE(tdbb, &pp_window);
|
||||
CORRUPT(258); /* msg 258 page slot not empty */
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user