~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to tests/r/select_safe.result

  • Committer: Stewart Smith
  • Date: 2008-12-22 02:20:48 UTC
  • mto: This revision was merged to the branch mainline in revision 728.
  • Revision ID: stewart@flamingspork.com-20081222022048-8gbkwxsdudm12qwo
fix select_safe and http://bugs.mysql.com/bug.php?id=32250 (but for Drizzle)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
drop table if exists t1;
2
 
SET SQL_SAFE_UPDATES=1,SQL_SELECT_LIMIT=4, SQL_MAX_JOIN_SIZE=9;
 
2
SET SQL_SAFE_UPDATES=1,SQL_SELECT_LIMIT=4, MAX_JOIN_SIZE=9;
3
3
create table t1 (a int auto_increment primary key, b char(20));
4
4
insert into t1 values(1,"test");
5
5
SELECT SQL_BUFFER_RESULT * from t1;
30
30
delete from t1 where a+0=1;
31
31
ERROR HY000: You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column
32
32
select 1 from t1,t1 as t2,t1 as t3,t1 as t4,t1 as t5;
33
 
ERROR 42000: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is okay
 
33
ERROR 42000: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET MAX_JOIN_SIZE=# if the SELECT is okay
34
34
update t1 set b="a" limit 1;
35
35
update t1 set b="a" where b="b" limit 2;
36
36
delete from t1 where b="test" limit 1;
42
42
2       0
43
43
insert into t1 values (null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a");
44
44
SELECT * from t1 order by a;
45
 
ERROR 42000: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is okay
 
45
ERROR 42000: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET MAX_JOIN_SIZE=# if the SELECT is okay
46
46
SET SQL_BIG_SELECTS=1;
47
47
SELECT * from t1 order by a;
48
48
a       b
52
52
5       a
53
53
SET MAX_JOIN_SIZE=2;
54
54
SELECT * from t1;
55
 
ERROR 42000: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is okay
 
55
ERROR 42000: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET MAX_JOIN_SIZE=# if the SELECT is okay
56
56
SET MAX_JOIN_SIZE=DEFAULT;
57
57
SELECT * from t1;
58
58
a       b
66
66
insert into t1 values (null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a"),(null,"a");
67
67
explain select STRAIGHT_JOIN * from t1,t1 as t2 where t1.b=t2.b;
68
68
id      select_type     table   type    possible_keys   key     key_len ref     rows    Extra
69
 
1       SIMPLE  t1      ALL     b       NULL    NULL    NULL    21      
70
 
1       SIMPLE  t2      ref     b       b       21      test.t1.b       6       
 
69
1       SIMPLE  t1      index   b       PRIMARY 4       NULL    21      
 
70
1       SIMPLE  t2      ref     b       b       83      test.t1.b       5       Using index
71
71
set MAX_SEEKS_FOR_KEY=1;
72
72
explain select STRAIGHT_JOIN * from t1,t1 as t2 where t1.b=t2.b;
73
73
id      select_type     table   type    possible_keys   key     key_len ref     rows    Extra
74
 
1       SIMPLE  t1      ALL     b       NULL    NULL    NULL    21      
75
 
1       SIMPLE  t2      ref     b       b       21      test.t1.b       6       
 
74
1       SIMPLE  t1      index   b       PRIMARY 4       NULL    21      
 
75
1       SIMPLE  t2      ref     b       b       83      test.t1.b       5       Using index
76
76
SET MAX_SEEKS_FOR_KEY=DEFAULT;
77
77
drop table t1;
78
78
create table t1 (a int);
82
82
insert into t1 select * from t1;
83
83
set local  max_join_size=8;
84
84
select * from (select * from t1) x;
85
 
ERROR 42000: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is okay
 
85
ERROR 42000: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET MAX_JOIN_SIZE=# if the SELECT is okay
86
86
set local  max_join_size=1;
87
87
select * from (select a.a as aa, b.a as ba from t1 a, t1 b) x;
88
 
ERROR 42000: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is okay
 
88
ERROR 42000: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET MAX_JOIN_SIZE=# if the SELECT is okay
89
89
set local  max_join_size=1;
90
90
select * from (select 1 union select 2 union select 3) x;
91
 
ERROR 42000: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is okay
 
91
ERROR 42000: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET MAX_JOIN_SIZE=# if the SELECT is okay
92
92
drop table t1;
93
 
SET SQL_SAFE_UPDATES=0,SQL_SELECT_LIMIT=DEFAULT, SQL_MAX_JOIN_SIZE=DEFAULT;
 
93
SET SQL_SAFE_UPDATES=0,SQL_SELECT_LIMIT=DEFAULT, MAX_JOIN_SIZE=DEFAULT;