mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +01:00
c443dbff0e
Other changes: - In test_quick_select(), assume that if table->used_stats_records is 0 then the table has 0 rows. - Fixed prepare_simple_select() to populate table->used_stat_records - Enusre that set_statistics_for_tables() doesn't cause used_stats_records to be 0 when using stat_tables. - To get blackhole to work with replication, set stats.records to 2 so that test_quick_select() doesn't assume the table is empty.
32 lines
1.3 KiB
Text
32 lines
1.3 KiB
Text
#
|
|
# MDEV-14429 sql_safe_updates in my.cnf not work
|
|
#
|
|
select @@sql_safe_updates;
|
|
@@sql_safe_updates
|
|
1
|
|
#
|
|
# MDEV-18304 sql_safe_updates does not work with OR clauses
|
|
#
|
|
create table t1 (a int, b int, primary key (a), key (b));
|
|
update t1 set b=2 where a=1 or b=2;
|
|
explain update t1 set b=2 where a=1 or b=2;
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
|
|
delete from t1 where a=1 or b=2;
|
|
explain delete from t1 where a=1 or b=2;
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
|
|
insert into t1 values (1,1),(2,2),(3,3),(4,4),(5,5),(6,6),(7,7),(8,8);
|
|
explain update t1 set b=2 where a=1 or b=2;
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE t1 index_merge PRIMARY,b PRIMARY,b 4,5 NULL 2 Using union(PRIMARY,b); Using where; Using buffer
|
|
update t1 set b=2 where a=1 or b=2;
|
|
set @@optimizer_switch="index_merge=off";
|
|
update t1 set b=2 where a=1 or b=2;
|
|
ERROR HY000: You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column
|
|
delete from t1 where a=1 or b=2;
|
|
ERROR HY000: You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column
|
|
drop table t1;
|
|
#
|
|
# End of 10.3 tests
|
|
#
|