From 41b45a81637be64c5039d4f600ce7eb9dbf03844 Mon Sep 17 00:00:00 2001 From: Sergey Petrunya Date: Fri, 10 Oct 2014 17:08:12 +0400 Subject: MDEV-6738: use_stat_table + histograms crashing optimizer - When EITS code calls store_key_image_to_rec(), it should follow its calling convention (which is counter-intuitive) --- sql/sql_statistics.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'sql/sql_statistics.cc') diff --git a/sql/sql_statistics.cc b/sql/sql_statistics.cc index e1b197f4a63..a38df24cfb7 100644 --- a/sql/sql_statistics.cc +++ b/sql/sql_statistics.cc @@ -3531,7 +3531,7 @@ double get_column_range_cardinality(Field *field, if (hist->is_available()) { store_key_image_to_rec(field, (uchar *) min_endp->key, - min_endp->length); + field->key_length()); double pos= field->pos_in_interval(col_stats->min_value, col_stats->max_value); res= col_non_nulls * @@ -3555,7 +3555,7 @@ double get_column_range_cardinality(Field *field, if (min_endp && !(field->null_ptr && min_endp->key[0])) { store_key_image_to_rec(field, (uchar *) min_endp->key, - min_endp->length); + field->key_length()); min_mp_pos= field->pos_in_interval(col_stats->min_value, col_stats->max_value); } @@ -3564,7 +3564,7 @@ double get_column_range_cardinality(Field *field, if (max_endp) { store_key_image_to_rec(field, (uchar *) max_endp->key, - max_endp->length); + field->key_length()); max_mp_pos= field->pos_in_interval(col_stats->min_value, col_stats->max_value); } -- cgit v1.2.1