mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-22 20:03:02 +01:00
Attempt to fix recent crashes in oltp-emul test.
This commit is contained in:
parent
c890589b67
commit
36200de471
@ -647,6 +647,10 @@ void IndexTableScan::setPage(thread_db* tdbb, Impure* impure, win* window) const
|
||||
}
|
||||
|
||||
impure->irsb_nav_page = newPage;
|
||||
|
||||
// clear position as page was changed
|
||||
impure->irsb_nav_incarnation = 0;
|
||||
impure->irsb_nav_offset = 0;
|
||||
}
|
||||
}
|
||||
|
||||
@ -659,8 +663,10 @@ void IndexTableScan::setPosition(thread_db* tdbb,
|
||||
{
|
||||
// We can actually set position without having a data page
|
||||
// fetched; if not, just set the incarnation to the lowest possible
|
||||
impure->irsb_nav_incarnation = CCH_get_incarnation(window);
|
||||
// Note, setPage could clear position (incarnation and offset).
|
||||
|
||||
setPage(tdbb, impure, window);
|
||||
impure->irsb_nav_incarnation = CCH_get_incarnation(window);
|
||||
impure->irsb_nav_number = rpb->rpb_number;
|
||||
|
||||
// save the current key value
|
||||
|
Loading…
Reference in New Issue
Block a user