summaryrefslogtreecommitdiff
path: root/sql/ha_partition.cc
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2019-11-19 01:32:50 +0200
committerMarko Mäkelä <marko.makela@mariadb.com>2019-11-19 01:32:50 +0200
commit589a1235b64866c7bbe85da2a6f6bf19ee8282fe (patch)
tree764fbac823a956510db8f0c4f93608970414095e /sql/ha_partition.cc
parent77a245fe5658b8d6d937620586ecd802b3432a78 (diff)
parent39d8652ca529e712430f57addc098b71521449e3 (diff)
downloadmariadb-git-589a1235b64866c7bbe85da2a6f6bf19ee8282fe.tar.gz
Merge 10.3 into 10.4
Diffstat (limited to 'sql/ha_partition.cc')
-rw-r--r--sql/ha_partition.cc14
1 files changed, 12 insertions, 2 deletions
diff --git a/sql/ha_partition.cc b/sql/ha_partition.cc
index baf8f88c00c..93c6bf1af5b 100644
--- a/sql/ha_partition.cc
+++ b/sql/ha_partition.cc
@@ -5480,6 +5480,13 @@ int ha_partition::index_end()
if ((tmp= (*file)->ha_index_end()))
error= tmp;
}
+ else if ((*file)->inited == RND)
+ {
+ // Possible due to MRR
+ int tmp;
+ if ((tmp= (*file)->ha_rnd_end()))
+ error= tmp;
+ }
} while (*(++file));
destroy_record_priority_queue();
DBUG_RETURN(error);
@@ -6514,8 +6521,11 @@ int ha_partition::multi_range_read_next(range_id_t *range_info)
else if (unlikely((error= handle_unordered_next(table->record[0], FALSE))))
DBUG_RETURN(error);
- *range_info=
- ((PARTITION_KEY_MULTI_RANGE *) m_range_info[m_last_part])->ptr;
+ if (!(m_mrr_mode & HA_MRR_NO_ASSOCIATION))
+ {
+ *range_info=
+ ((PARTITION_KEY_MULTI_RANGE *) m_range_info[m_last_part])->ptr;
+ }
}
DBUG_RETURN(0);
}