mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Merge macbook.local:/Users/kgeorge/mysql/work/B28701-5.0-opt
into macbook.local:/Users/kgeorge/mysql/work/B28701-merged-5.0-opt
This commit is contained in:
@ -625,7 +625,7 @@ drop table t1;
|
||||
create table t1 (a int, b int);
|
||||
create view v1 as select a, sum(b) from t1 group by a;
|
||||
select b from v1 use index (some_index) where b=1;
|
||||
ERROR HY000: Key 'some_index' doesn't exist in table 'v1'
|
||||
ERROR HY000: Incorrect usage of USE INDEX and VIEW
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
create table t1 (col1 char(5),col2 char(5));
|
||||
@ -3562,4 +3562,15 @@ table_name is_updatable
|
||||
v1 NO
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (a INT);
|
||||
INSERT INTO t1 VALUES (1),(2);
|
||||
CREATE VIEW v1 AS SELECT * FROM t1;
|
||||
SELECT * FROM v1 USE KEY(non_existant);
|
||||
ERROR HY000: Incorrect usage of USE INDEX and VIEW
|
||||
SELECT * FROM v1 FORCE KEY(non_existant);
|
||||
ERROR HY000: Incorrect usage of FORCE INDEX and VIEW
|
||||
SELECT * FROM v1 IGNORE KEY(non_existant);
|
||||
ERROR HY000: Incorrect usage of IGNORE INDEX and VIEW
|
||||
DROP VIEW v1;
|
||||
DROP TABLE t1;
|
||||
End of 5.0 tests.
|
||||
|
@ -510,7 +510,7 @@ drop table t1;
|
||||
#
|
||||
create table t1 (a int, b int);
|
||||
create view v1 as select a, sum(b) from t1 group by a;
|
||||
-- error 1176
|
||||
--error ER_WRONG_USAGE
|
||||
select b from v1 use index (some_index) where b=1;
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
@ -3415,5 +3415,24 @@ select table_name, is_updatable from information_schema.views
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Bug #28701: SELECTs from VIEWs completely ignore USE/FORCE KEY, allowing
|
||||
# invalid statements
|
||||
#
|
||||
|
||||
CREATE TABLE t1 (a INT);
|
||||
INSERT INTO t1 VALUES (1),(2);
|
||||
CREATE VIEW v1 AS SELECT * FROM t1;
|
||||
--error ER_WRONG_USAGE
|
||||
SELECT * FROM v1 USE KEY(non_existant);
|
||||
--error ER_WRONG_USAGE
|
||||
SELECT * FROM v1 FORCE KEY(non_existant);
|
||||
--error ER_WRONG_USAGE
|
||||
SELECT * FROM v1 IGNORE KEY(non_existant);
|
||||
|
||||
DROP VIEW v1;
|
||||
DROP TABLE t1;
|
||||
|
||||
|
||||
--echo End of 5.0 tests.
|
||||
|
||||
|
Reference in New Issue
Block a user