mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
BUG#16222245 - CRASH WITH EXPLAIN FOR A QUERY WITH LOOSE SCAN FOR
GROUP BY, MYISAM Merge fix for Bug#16222245 from mysql-5.1 to mysql-5.5
This commit is contained in:
@@ -11109,9 +11109,11 @@ int QUICK_GROUP_MIN_MAX_SELECT::next_min()
|
|||||||
*/
|
*/
|
||||||
if (min_max_arg_part && min_max_arg_part->field->is_null())
|
if (min_max_arg_part && min_max_arg_part->field->is_null())
|
||||||
{
|
{
|
||||||
|
uchar key_buf[MAX_KEY_LENGTH];
|
||||||
|
|
||||||
/* Find the first subsequent record without NULL in the MIN/MAX field. */
|
/* Find the first subsequent record without NULL in the MIN/MAX field. */
|
||||||
key_copy(tmp_record, record, index_info, 0);
|
key_copy(key_buf, record, index_info, 0);
|
||||||
result= file->index_read_map(record, tmp_record,
|
result= file->index_read_map(record, key_buf,
|
||||||
make_keypart_map(real_key_parts),
|
make_keypart_map(real_key_parts),
|
||||||
HA_READ_AFTER_KEY);
|
HA_READ_AFTER_KEY);
|
||||||
/*
|
/*
|
||||||
@@ -11127,7 +11129,7 @@ int QUICK_GROUP_MIN_MAX_SELECT::next_min()
|
|||||||
if (!result)
|
if (!result)
|
||||||
{
|
{
|
||||||
if (key_cmp(index_info->key_part, group_prefix, real_prefix_len))
|
if (key_cmp(index_info->key_part, group_prefix, real_prefix_len))
|
||||||
key_restore(record, tmp_record, index_info, 0);
|
key_restore(record, key_buf, index_info, 0);
|
||||||
}
|
}
|
||||||
else if (result == HA_ERR_KEY_NOT_FOUND || result == HA_ERR_END_OF_FILE)
|
else if (result == HA_ERR_KEY_NOT_FOUND || result == HA_ERR_END_OF_FILE)
|
||||||
result= 0; /* There is a result in any case. */
|
result= 0; /* There is a result in any case. */
|
||||||
|
Reference in New Issue
Block a user