Skip to content

Commit

Permalink
Fixes a problem with heap when scanning and insert rows at the same time
Browse files Browse the repository at this point in the history
This causes failures in versioning.update-big in 10.3 and above
  • Loading branch information
montywi committed Aug 20, 2019
1 parent 64c6f2b commit 262927a
Showing 1 changed file with 6 additions and 9 deletions.
15 changes: 6 additions & 9 deletions storage/heap/hp_scan.c
Original file line number Diff line number Diff line change
Expand Up @@ -44,22 +44,19 @@ int heap_scan(register HP_INFO *info, uchar *record)
DBUG_ENTER("heap_scan");

pos= ++info->current_record;
if (pos >= share->records+share->deleted)
{
info->update= 0; /* No active row */
DBUG_RETURN(my_errno= HA_ERR_END_OF_FILE);
}

if (pos < info->next_block)
{
info->current_ptr+=share->block.recbuffer;
}
else
{
info->next_block+=share->block.records_in_block;
if (info->next_block >= share->records+share->deleted)
{
info->next_block= share->records+share->deleted;
if (pos >= info->next_block)
{
info->update= 0;
DBUG_RETURN(my_errno= HA_ERR_END_OF_FILE);
}
}
hp_find_record(info, pos);
}
if (!info->current_ptr[share->visible])
Expand Down

0 comments on commit 262927a

Please sign in to comment.