summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <serg@serg.mysql.com>2003-02-24 11:58:31 +0100
committerunknown <serg@serg.mysql.com>2003-02-24 11:58:31 +0100
commit6f5ea7022660f62e8e434c968f0d256aa8c8e47c (patch)
tree5607b4c346ded1dfb13c68b5f47675e9d82eb2d2
parent17a76b00c65ef8da504bee2163a276b989bfe7f7 (diff)
parent8f89795ec2059d9662ee15a9db1a36bcea769525 (diff)
downloadmariadb-git-6f5ea7022660f62e8e434c968f0d256aa8c8e47c.tar.gz
Merge work:/home/bk/mysql-4.1
into serg.mysql.com:/usr/home/serg/Abk/mysql-4.1
-rw-r--r--sql/sql_select.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc
index 883693a0406..47fe271f2b6 100644
--- a/sql/sql_select.cc
+++ b/sql/sql_select.cc
@@ -1394,7 +1394,7 @@ static ha_rows get_quick_record_count(SQL_SELECT *select,TABLE *table,
0 ok
1 Fatal error
*/
-
+
static bool
make_join_statistics(JOIN *join,TABLE_LIST *tables,COND *conds,
DYNAMIC_ARRAY *keyuse_array)
@@ -1703,7 +1703,7 @@ make_join_statistics(JOIN *join,TABLE_LIST *tables,COND *conds,
sizeof(POSITION)*join->const_tables);
join->best_read=1.0;
}
- DBUG_RETURN(get_best_combination(join));
+ DBUG_RETURN(join->thd->killed || get_best_combination(join));
}
@@ -2532,6 +2532,8 @@ find_best(JOIN *join,table_map rest_tables,uint idx,double record_count,
swap(JOIN_TAB*,join->best_ref[idx],*pos);
find_best(join,rest_tables & ~real_table_bit,idx+1,
current_record_count,current_read_time);
+ if (thd->killed)
+ return;
swap(JOIN_TAB*,join->best_ref[idx],*pos);
}
if (join->select_options & SELECT_STRAIGHT_JOIN)