From daaa5834c9fb567924c21d467983c1ec3401f832 Mon Sep 17 00:00:00 2001 From: Igor Babaev Date: Fri, 5 Apr 2013 11:24:28 -0700 Subject: Fixed bug mdev-4370. Don't try to a histogram if it is not read into the cache for statistical data. It may happen so if optimizer_use_condition_selectivity is set to 3. This setting orders the optimizer not use histograms to calculate selectivity. --- sql/sql_statistics.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'sql/sql_statistics.cc') diff --git a/sql/sql_statistics.cc b/sql/sql_statistics.cc index 6c33b88d9ad..b556c37c3fb 100644 --- a/sql/sql_statistics.cc +++ b/sql/sql_statistics.cc @@ -3369,7 +3369,7 @@ double get_column_range_cardinality(Field *field, col_stats->min_value && col_stats->max_value) { Histogram *hist= &col_stats->histogram; - if (hist->get_size() > 0) + if (hist->is_available()) { double pos= field->middle_point_pos(col_stats->min_value, col_stats->max_value); @@ -3406,7 +3406,7 @@ double get_column_range_cardinality(Field *field, max_mp_pos= 1.0; Histogram *hist= &col_stats->histogram; - if (hist->get_size() == 0) + if (!hist->is_available()) sel= (max_mp_pos - min_mp_pos); else sel= hist->range_selectivity(min_mp_pos, max_mp_pos); -- cgit v1.2.1