diff options
author | unknown <stewart@willster.(none)> | 2007-01-24 00:27:19 +1100 |
---|---|---|
committer | unknown <stewart@willster.(none)> | 2007-01-24 00:27:19 +1100 |
commit | 8b54310bfbdc9fc2bf20eb96788dc57605c4140f (patch) | |
tree | 470cc649de38fd45c22ffa42480f6d158f93ed93 /sql | |
parent | 8f9198ca0b40c99b3764e170481648330b18efc3 (diff) | |
download | mariadb-git-8b54310bfbdc9fc2bf20eb96788dc57605c4140f.tar.gz |
Bug#25567 records() call performs scan in NDB, performance bug
mysql-test/r/ndb_basic.result:
from spaces, to tabs. what fun!
sql/ha_ndbcluster.h:
fix estimate_rows_upper_bound() to be correct for NDB
sql/sql_select.cc:
use non-exact records information
Diffstat (limited to 'sql')
-rw-r--r-- | sql/ha_ndbcluster.h | 2 | ||||
-rw-r--r-- | sql/sql_select.cc | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/sql/ha_ndbcluster.h b/sql/ha_ndbcluster.h index 50f24c7a4cf..5b6900766b6 100644 --- a/sql/ha_ndbcluster.h +++ b/sql/ha_ndbcluster.h @@ -676,6 +676,8 @@ class ha_ndbcluster: public handler bool get_error_message(int error, String *buf); ha_rows records(); + ha_rows estimate_rows_upper_bound() + { return HA_POS_ERROR; } int info(uint); void get_dynamic_partition_info(PARTITION_INFO *stat_info, uint part_id); int extra(enum ha_extra_function operation); diff --git a/sql/sql_select.cc b/sql/sql_select.cc index 7715575d65b..919024ba457 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -2197,7 +2197,7 @@ make_join_statistics(JOIN *join, TABLE_LIST *tables, COND *conds, s->key_dependent= 0; if (tables->schema_table) table->file->stats.records= 2; - table->quick_condition_rows= table->file->records(); + table->quick_condition_rows= table->file->stats.records; s->on_expr_ref= &tables->on_expr; if (*s->on_expr_ref) |