mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 02:05:57 +01:00
Merge bk-internal:/home/bk/mysql-5.0-opt
into magare.gmz:/home/kgeorge/mysql/work/WL3527-5.0-opt-merge sql/sql_yacc.yy: Auto merged mysql-test/r/select.result: merge mysql-test/t/select.test: merge
This commit is contained in:
commit
81beab69a4
3 changed files with 32 additions and 5 deletions
|
@ -3628,6 +3628,15 @@ id select_type table type possible_keys key key_len ref rows Extra
|
|||
1 SIMPLE t2 range si,ai si 5 NULL 2 Using where
|
||||
1 SIMPLE t3 eq_ref PRIMARY,ci PRIMARY 4 test.t2.a 1 Using where
|
||||
DROP TABLE t1,t2,t3;
|
||||
CREATE TABLE t1 (a INT, b INT, KEY (a));
|
||||
INSERT INTO t1 VALUES (1,1),(2,2);
|
||||
EXPLAIN SELECT 1 FROM t1 WHERE a = 1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref a a 5 const 1 Using where; Using index
|
||||
EXPLAIN SELECT 1 FROM t1 IGNORE INDEX FOR JOIN (a) WHERE a = 1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 ( f1 int primary key, f2 int, f3 int, f4 int, f5 int, f6 int, checked_out int);
|
||||
CREATE TABLE t2 ( f11 int PRIMARY KEY );
|
||||
INSERT INTO t1 VALUES (1,1,1,0,0,0,0),(2,1,1,3,8,1,0),(3,1,1,4,12,1,0);
|
||||
|
|
|
@ -3103,7 +3103,16 @@ SELECT t3.a FROM t1,t2,t3
|
|||
t3.c IN ('bb','ee');
|
||||
|
||||
DROP TABLE t1,t2,t3;
|
||||
|
||||
|
||||
#
|
||||
# WL3527: Extend IGNORE INDEX so places where index is ignored can
|
||||
# be specified
|
||||
#
|
||||
CREATE TABLE t1 (a INT, b INT, KEY (a)); INSERT INTO t1 VALUES (1,1),(2,2);
|
||||
EXPLAIN SELECT 1 FROM t1 WHERE a = 1;
|
||||
EXPLAIN SELECT 1 FROM t1 IGNORE INDEX FOR JOIN (a) WHERE a = 1;
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug#25172: Not checked buffer size leads to a server crash
|
||||
#
|
||||
|
|
|
@ -1092,7 +1092,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize);
|
|||
key_alg opt_btree_or_rtree
|
||||
|
||||
%type <string_list>
|
||||
key_usage_list using_list
|
||||
key_usage_list key_usage_list_inner using_list
|
||||
|
||||
%type <key_part>
|
||||
key_part
|
||||
|
@ -5899,6 +5899,10 @@ opt_outer:
|
|||
/* empty */ {}
|
||||
| OUTER {};
|
||||
|
||||
opt_for_join:
|
||||
/* empty */
|
||||
| FOR_SYM JOIN_SYM;
|
||||
|
||||
opt_key_definition:
|
||||
/* empty */ {}
|
||||
| USE_SYM key_usage_list
|
||||
|
@ -5914,15 +5918,20 @@ opt_key_definition:
|
|||
sel->use_index_ptr= &sel->use_index;
|
||||
sel->table_join_options|= TL_OPTION_FORCE_INDEX;
|
||||
}
|
||||
| IGNORE_SYM key_usage_list
|
||||
| IGNORE_SYM key_or_index opt_for_join key_usage_list_inner
|
||||
{
|
||||
SELECT_LEX *sel= Select;
|
||||
sel->ignore_index= *$2;
|
||||
sel->ignore_index= *$4;
|
||||
sel->ignore_index_ptr= &sel->ignore_index;
|
||||
};
|
||||
|
||||
key_usage_list:
|
||||
key_or_index { Select->interval_list.empty(); }
|
||||
key_or_index key_usage_list_inner
|
||||
{ $$= $2; }
|
||||
;
|
||||
|
||||
key_usage_list_inner:
|
||||
{ Select->interval_list.empty(); }
|
||||
'(' key_list_or_empty ')'
|
||||
{ $$= &Select->interval_list; }
|
||||
;
|
||||
|
|
Loading…
Add table
Reference in a new issue