223 lines
		
	
	
		
			7.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			223 lines
		
	
	
		
			7.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| #
 | |
| # Bug #47412: Valgrind warnings / user can read uninitalized memory
 | |
| # using SP variables
 | |
| #
 | |
| CREATE SCHEMA testdb;
 | |
| USE testdb;
 | |
| CREATE FUNCTION f2 () RETURNS INTEGER
 | |
| BEGIN
 | |
| DECLARE CONTINUE HANDLER FOR SQLSTATE '42000' SET @aux = 1;
 | |
| RETURN f_not_exists () ;
 | |
| END|
 | |
| CREATE PROCEDURE p3 ( arg1 VARCHAR(32) )
 | |
| BEGIN
 | |
| CALL p_not_exists ( );
 | |
| END|
 | |
| # should not return valgrind warnings
 | |
| CALL p3 ( f2 () );
 | |
| ERROR 42000: PROCEDURE testdb.p_not_exists does not exist
 | |
| DROP SCHEMA testdb;
 | |
| CREATE SCHEMA testdb;
 | |
| USE testdb;
 | |
| CREATE FUNCTION f2 () RETURNS INTEGER
 | |
| BEGIN
 | |
| DECLARE CONTINUE HANDLER FOR SQLSTATE '42000' SET @aux = 1;
 | |
| RETURN f_not_exists () ;
 | |
| END|
 | |
| CREATE PROCEDURE p3 ( arg2 INTEGER )
 | |
| BEGIN
 | |
| CALL p_not_exists ( );
 | |
| END|
 | |
| # should not return valgrind warnings
 | |
| CALL p3 ( f2 () );
 | |
| ERROR 42000: PROCEDURE testdb.p_not_exists does not exist
 | |
| DROP SCHEMA testdb;
 | |
| CREATE SCHEMA testdb;
 | |
| USE testdb;
 | |
| CREATE FUNCTION f2 () RETURNS INTEGER
 | |
| BEGIN
 | |
| DECLARE CONTINUE HANDLER FOR SQLSTATE '42000' SET @aux = 1;
 | |
| RETURN f_not_exists () ;
 | |
| END|
 | |
| # should not return valgrind warnings
 | |
| SELECT f2 ();
 | |
| f2 ()
 | |
| NULL
 | |
| DROP SCHEMA testdb;
 | |
| USE test;
 | |
| #
 | |
| # Bug#50423: Crash on second call of a procedure dropping a trigger
 | |
| #
 | |
| DROP TABLE IF EXISTS t1;
 | |
| DROP TRIGGER IF EXISTS tr1;
 | |
| DROP PROCEDURE IF EXISTS p1;
 | |
| CREATE TABLE t1 (f1 INTEGER);
 | |
| CREATE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW SET @aux = 1;
 | |
| CREATE PROCEDURE p1 () DROP TRIGGER tr1;
 | |
| CALL p1 ();
 | |
| CALL p1 ();
 | |
| ERROR HY000: Trigger does not exist
 | |
| DROP TABLE t1;
 | |
| DROP PROCEDURE p1;
 | |
| #
 | |
| # Bug#50423: Crash on second call of a procedure dropping a trigger
 | |
| #
 | |
| DROP TABLE IF EXISTS t1;
 | |
| DROP TRIGGER IF EXISTS tr1;
 | |
| DROP PROCEDURE IF EXISTS p1;
 | |
| CREATE TABLE t1 (f1 INTEGER);
 | |
| CREATE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW SET @aux = 1;
 | |
| CREATE PROCEDURE p1 () DROP TRIGGER tr1;
 | |
| CALL p1 ();
 | |
| CALL p1 ();
 | |
| ERROR HY000: Trigger does not exist
 | |
| DROP TABLE t1;
 | |
| DROP PROCEDURE p1;
 | |
| #
 | |
| # Bug#54375: Error in stored procedure leaves connection
 | |
| # in different default schema
 | |
| #
 | |
| SET @@SQL_MODE = 'STRICT_ALL_TABLES';
 | |
| DROP DATABASE IF EXISTS db1;
 | |
| CREATE DATABASE db1;
 | |
| USE db1;
 | |
| DROP TABLE IF EXISTS t1;
 | |
| CREATE TABLE t1 (c1 int NOT NULL PRIMARY KEY);
 | |
| INSERT INTO t1 VALUES (1);
 | |
| CREATE FUNCTION f1 (
 | |
| some_value int
 | |
| )
 | |
| RETURNS smallint
 | |
| DETERMINISTIC
 | |
| BEGIN
 | |
| INSERT INTO t1 SET c1 = some_value;
 | |
| RETURN(LAST_INSERT_ID());
 | |
| END$$
 | |
| DROP DATABASE IF EXISTS db2;
 | |
| CREATE DATABASE db2;
 | |
| USE db2;
 | |
| SELECT DATABASE();
 | |
| DATABASE()
 | |
| db2
 | |
| SELECT db1.f1(1);
 | |
| ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
 | |
| SELECT DATABASE();
 | |
| DATABASE()
 | |
| db2
 | |
| USE test;
 | |
| DROP FUNCTION db1.f1;
 | |
| DROP TABLE db1.t1;
 | |
| DROP DATABASE db1;
 | |
| DROP DATABASE db2;
 | |
| USE test;
 | |
| #
 | |
| # Bug#13105873:valgrind warning:possible crash in foreign 
 | |
| # key handling on subsequent create table if not exists 
 | |
| #
 | |
| DROP DATABASE IF EXISTS testdb;
 | |
| CREATE DATABASE testdb;
 | |
| USE testdb;
 | |
| CREATE TABLE t1 (id1 INT PRIMARY KEY);
 | |
| CREATE PROCEDURE `p1`()
 | |
| BEGIN
 | |
| CREATE TABLE IF NOT EXISTS t2(id INT PRIMARY KEY,
 | |
| CONSTRAINT FK FOREIGN KEY (id) REFERENCES t1( id1 ));
 | |
| END$
 | |
| CALL p1();
 | |
| # below stmt should not return valgrind warnings
 | |
| CALL p1();
 | |
| Warnings:
 | |
| Note	1050	Table 't2' already exists
 | |
| DROP DATABASE testdb;
 | |
| USE test;
 | |
| End of 5.1 tests
 | |
| #
 | |
| # Bug#11763507 - 56224: FUNCTION NAME IS CASE-SENSITIVE
 | |
| #
 | |
| SET @@SQL_MODE = '';
 | |
| CREATE FUNCTION testf_bug11763507() RETURNS INT
 | |
| BEGIN
 | |
| RETURN 0;
 | |
| END
 | |
| $
 | |
| CREATE PROCEDURE testp_bug11763507()
 | |
| BEGIN
 | |
| SELECT "PROCEDURE testp_bug11763507";
 | |
| END
 | |
| $
 | |
| SELECT testf_bug11763507();
 | |
| testf_bug11763507()
 | |
| 0
 | |
| SELECT TESTF_bug11763507();
 | |
| TESTF_bug11763507()
 | |
| 0
 | |
| SHOW FUNCTION STATUS LIKE  'testf_bug11763507';
 | |
| Db	Name	Type	Definer	Modified	Created	Security_type	Comment	character_set_client	collation_connection	Database Collation
 | |
| test	testf_bug11763507	FUNCTION	root@localhost	#	#	DEFINER		latin1	latin1_swedish_ci	latin1_swedish_ci
 | |
| SHOW FUNCTION STATUS WHERE NAME='testf_bug11763507';
 | |
| Db	Name	Type	Definer	Modified	Created	Security_type	Comment	character_set_client	collation_connection	Database Collation
 | |
| test	testf_bug11763507	FUNCTION	root@localhost	#	#	DEFINER		latin1	latin1_swedish_ci	latin1_swedish_ci
 | |
| SHOW FUNCTION STATUS LIKE  'TESTF_bug11763507';
 | |
| Db	Name	Type	Definer	Modified	Created	Security_type	Comment	character_set_client	collation_connection	Database Collation
 | |
| test	testf_bug11763507	FUNCTION	root@localhost	#	#	DEFINER		latin1	latin1_swedish_ci	latin1_swedish_ci
 | |
| SHOW FUNCTION STATUS WHERE NAME='TESTF_bug11763507';
 | |
| Db	Name	Type	Definer	Modified	Created	Security_type	Comment	character_set_client	collation_connection	Database Collation
 | |
| test	testf_bug11763507	FUNCTION	root@localhost	#	#	DEFINER		latin1	latin1_swedish_ci	latin1_swedish_ci
 | |
| SHOW CREATE FUNCTION testf_bug11763507;
 | |
| Function	sql_mode	Create Function	character_set_client	collation_connection	Database Collation
 | |
| testf_bug11763507		CREATE DEFINER=`root`@`localhost` FUNCTION `testf_bug11763507`() RETURNS int(11)
 | |
| BEGIN
 | |
| RETURN 0;
 | |
| END	latin1	latin1_swedish_ci	latin1_swedish_ci
 | |
| SHOW CREATE FUNCTION TESTF_bug11763507;
 | |
| Function	sql_mode	Create Function	character_set_client	collation_connection	Database Collation
 | |
| testf_bug11763507		CREATE DEFINER=`root`@`localhost` FUNCTION `testf_bug11763507`() RETURNS int(11)
 | |
| BEGIN
 | |
| RETURN 0;
 | |
| END	latin1	latin1_swedish_ci	latin1_swedish_ci
 | |
| CALL testp_bug11763507();
 | |
| PROCEDURE testp_bug11763507
 | |
| PROCEDURE testp_bug11763507
 | |
| CALL TESTP_bug11763507();
 | |
| PROCEDURE testp_bug11763507
 | |
| PROCEDURE testp_bug11763507
 | |
| SHOW PROCEDURE STATUS LIKE  'testp_bug11763507';
 | |
| Db	Name	Type	Definer	Modified	Created	Security_type	Comment	character_set_client	collation_connection	Database Collation
 | |
| test	testp_bug11763507	PROCEDURE	root@localhost	#	#	DEFINER		latin1	latin1_swedish_ci	latin1_swedish_ci
 | |
| SHOW PROCEDURE STATUS WHERE NAME='testp_bug11763507';
 | |
| Db	Name	Type	Definer	Modified	Created	Security_type	Comment	character_set_client	collation_connection	Database Collation
 | |
| test	testp_bug11763507	PROCEDURE	root@localhost	#	#	DEFINER		latin1	latin1_swedish_ci	latin1_swedish_ci
 | |
| SHOW PROCEDURE STATUS LIKE  'TESTP_bug11763507';
 | |
| Db	Name	Type	Definer	Modified	Created	Security_type	Comment	character_set_client	collation_connection	Database Collation
 | |
| test	testp_bug11763507	PROCEDURE	root@localhost	#	#	DEFINER		latin1	latin1_swedish_ci	latin1_swedish_ci
 | |
| SHOW PROCEDURE STATUS WHERE NAME='TESTP_bug11763507';
 | |
| Db	Name	Type	Definer	Modified	Created	Security_type	Comment	character_set_client	collation_connection	Database Collation
 | |
| test	testp_bug11763507	PROCEDURE	root@localhost	#	#	DEFINER		latin1	latin1_swedish_ci	latin1_swedish_ci
 | |
| SHOW CREATE PROCEDURE testp_bug11763507;
 | |
| Procedure	sql_mode	Create Procedure	character_set_client	collation_connection	Database Collation
 | |
| testp_bug11763507		CREATE DEFINER=`root`@`localhost` PROCEDURE `testp_bug11763507`()
 | |
| BEGIN
 | |
| SELECT "PROCEDURE testp_bug11763507";
 | |
| END	latin1	latin1_swedish_ci	latin1_swedish_ci
 | |
| SHOW CREATE PROCEDURE TESTP_bug11763507;
 | |
| Procedure	sql_mode	Create Procedure	character_set_client	collation_connection	Database Collation
 | |
| testp_bug11763507		CREATE DEFINER=`root`@`localhost` PROCEDURE `testp_bug11763507`()
 | |
| BEGIN
 | |
| SELECT "PROCEDURE testp_bug11763507";
 | |
| END	latin1	latin1_swedish_ci	latin1_swedish_ci
 | |
| SELECT specific_name FROM INFORMATION_SCHEMA.ROUTINES WHERE specific_name LIKE 'testf_bug11763507';
 | |
| specific_name
 | |
| testf_bug11763507
 | |
| SELECT specific_name FROM INFORMATION_SCHEMA.ROUTINES WHERE specific_name LIKE 'TESTF_bug11763507';
 | |
| specific_name
 | |
| testf_bug11763507
 | |
| SELECT specific_name FROM INFORMATION_SCHEMA.ROUTINES WHERE specific_name='testf_bug11763507';
 | |
| specific_name
 | |
| testf_bug11763507
 | |
| SELECT specific_name FROM INFORMATION_SCHEMA.ROUTINES WHERE specific_name='TESTF_bug11763507';
 | |
| specific_name
 | |
| testf_bug11763507
 | |
| DROP PROCEDURE testp_bug11763507;
 | |
| DROP FUNCTION testf_bug11763507;
 | |
| #END OF BUG#11763507 test.
 |