mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Merge bk-internal:/home/bk/mysql-5.0
into magare.gmz:/home/kgeorge/mysql/work/merge-5.0-bugteam
This commit is contained in:
@ -1153,4 +1153,26 @@ DROP DATABASE db27878;
|
||||
use test;
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #33201 Crash occurs when granting update privilege on one column of a view
|
||||
#
|
||||
drop table if exists test;
|
||||
drop function if exists test_function;
|
||||
drop view if exists v1;
|
||||
create table test (col1 varchar(30));
|
||||
delimiter |;
|
||||
create function test_function() returns varchar(30)
|
||||
begin
|
||||
declare tmp varchar(30);
|
||||
select col1 from test limit 1 into tmp;
|
||||
return '1';
|
||||
end|
|
||||
delimiter ;|
|
||||
create view v1 as select test.* from test where test.col1=test_function();
|
||||
grant update (col1) on v1 to 'greg'@'localhost';
|
||||
drop user 'greg'@'localhost';
|
||||
drop view v1;
|
||||
drop table test;
|
||||
drop function test_function;
|
||||
|
||||
--echo End of 5.0 tests
|
||||
|
@ -972,4 +972,50 @@ EXPLAIN SELECT a FROM t1 WHERE a='b' OR a='B';
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug #34731: highest possible value for INT erroneously filtered by WHERE
|
||||
#
|
||||
|
||||
# test UNSIGNED. only occurs when indexed.
|
||||
CREATE TABLE t1 (f1 TINYINT(11) UNSIGNED NOT NULL, PRIMARY KEY (f1));
|
||||
|
||||
INSERT INTO t1 VALUES (127),(254),(0),(1),(255);
|
||||
|
||||
# test upper bound
|
||||
# count 5
|
||||
SELECT SQL_NO_CACHE COUNT(*) FROM t1 WHERE f1 < 256;
|
||||
SELECT SQL_NO_CACHE COUNT(*) FROM t1 WHERE f1 < 256.0;
|
||||
# count 4
|
||||
SELECT SQL_NO_CACHE COUNT(*) FROM t1 WHERE f1 < 255;
|
||||
|
||||
# show we don't fiddle with lower bound on UNSIGNED
|
||||
# count 0
|
||||
SELECT SQL_NO_CACHE COUNT(*) FROM t1 WHERE f1 < -1;
|
||||
# count 5
|
||||
SELECT SQL_NO_CACHE COUNT(*) FROM t1 WHERE f1 > -1;
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
|
||||
# test signed. only occurs when index.
|
||||
CREATE TABLE t1 ( f1 TINYINT(11) NOT NULL, PRIMARY KEY (f1));
|
||||
|
||||
INSERT INTO t1 VALUES (127),(126),(0),(-128),(-127);
|
||||
|
||||
# test upper bound
|
||||
# count 5
|
||||
SELECT SQL_NO_CACHE COUNT(*) FROM t1 WHERE f1 < 128;
|
||||
SELECT SQL_NO_CACHE COUNT(*) FROM t1 WHERE f1 < 128.0;
|
||||
# count 4
|
||||
SELECT SQL_NO_CACHE COUNT(*) FROM t1 WHERE f1 < 127;
|
||||
|
||||
# test lower bound
|
||||
# count 5
|
||||
SELECT SQL_NO_CACHE COUNT(*) FROM t1 WHERE f1 > -129;
|
||||
SELECT SQL_NO_CACHE COUNT(*) FROM t1 WHERE f1 > -129.0;
|
||||
# count 4
|
||||
SELECT SQL_NO_CACHE COUNT(*) FROM t1 WHERE f1 > -128;
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
# End of 5.0 tests
|
||||
|
Reference in New Issue
Block a user