summaryrefslogtreecommitdiff
path: root/storage/heap
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2019-08-23 08:06:17 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2019-08-23 08:06:17 +0300
commitefb8485d85b19a2a729310adc6779ca649198f29 (patch)
treea2b7778acfecd95d2f5b1fcff588d93268afa112 /storage/heap
parent235cf969d21ba3406a9325d952fda47c589e58d6 (diff)
parentb96e4424fb4d35dd5de52f44ed6b726a3f0dd010 (diff)
downloadmariadb-git-efb8485d85b19a2a729310adc6779ca649198f29.tar.gz
Merge 10.3 into 10.4, except for MDEV-20265
The MDEV-20265 commit e746f451d57def4be679caafc29976741b3e89f7 introduces DBUG_ASSERT(right_op == r_tbl) in st_select_lex::add_cross_joined_table(), and that assertion would fail in several tests that exercise joins. That commit was skipped in this merge, and a separate fix of MDEV-20265 will be necessary in 10.4.
Diffstat (limited to 'storage/heap')
-rw-r--r--storage/heap/hp_scan.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/storage/heap/hp_scan.c b/storage/heap/hp_scan.c
index 3315cb05b3f..f07efe6cf67 100644
--- a/storage/heap/hp_scan.c
+++ b/storage/heap/hp_scan.c
@@ -50,7 +50,9 @@ int heap_scan(register HP_INFO *info, uchar *record)
}
else
{
- info->next_block+=share->block.records_in_block;
+ /* increase next_block to the next records_in_block boundary */
+ ulong rem= info->next_block % share->block.records_in_block;
+ info->next_block+=share->block.records_in_block - rem;
if (info->next_block >= share->records+share->deleted)
{
info->next_block= share->records+share->deleted;