Commit d1ffce69 authored by unknown's avatar unknown
Browse files

Merge bk-internal.mysql.com:/home/bk/mysql-5.0

into  mysql.com:/opt/local/work/mysql-5.0-12736

parents 32a0bac1 371f8c69
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -367,3 +367,6 @@ DROP TABLE t1;
select cast(NULL as decimal(6)) as t1;
t1
NULL
select cast(1.0e+300 as signed int);
cast(1.0e+300 as signed int)
9223372036854775807
+3 −0
Original line number Diff line number Diff line
@@ -92,3 +92,6 @@ id select_type table type possible_keys key key_len ref rows Extra
1	SIMPLE	NULL	NULL	NULL	NULL	NULL	NULL	NULL	No tables used
Warnings:
Note	1003	select password(_latin1'idkfa ') AS `password('idkfa ')`,old_password(_latin1'idkfa') AS `old_password('idkfa')`
select encrypt('1234','_.');
encrypt('1234','_.')
#
+434 −0
Original line number Diff line number Diff line
@@ -1254,6 +1254,440 @@ flush logs;
SHOW PROCEDURE STATUS LIKE 'p1';
	-------- switch to slave -------
SHOW PROCEDURE STATUS LIKE 'p1';

######## CREATE OR REPLACE VIEW v1 as select * from t1  ########

-------- switch to master -------
INSERT INTO t1 SET f1= 18 + 1;
SELECT MAX(f1) FROM t1;
MAX(f1)
19

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
18

-------- switch to master -------
CREATE OR REPLACE VIEW v1 as select * from t1;
SELECT MAX(f1) FROM t1;
MAX(f1)
19

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
19

-------- switch to master -------
ROLLBACK;
SELECT MAX(f1) FROM t1;
MAX(f1)
19

TEST-INFO: MASTER: The INSERT is committed (Succeeded)

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
19

TEST-INFO: SLAVE:  The INSERT is committed (Succeeded)

-------- switch to master -------
flush logs;

-------- switch to slave --------
flush logs;

-------- switch to master -------
SHOW CREATE VIEW v1;
View	Create View
v1	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f1` AS `f1` from `t1`

-------- switch to slave -------
SHOW CREATE VIEW v1;
View	Create View
v1	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f1` AS `f1` from `t1`

######## ALTER VIEW v1 AS select f1 from t1  ########

-------- switch to master -------
INSERT INTO t1 SET f1= 19 + 1;
SELECT MAX(f1) FROM t1;
MAX(f1)
20

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
19

-------- switch to master -------
ALTER VIEW v1 AS select f1 from t1;
SELECT MAX(f1) FROM t1;
MAX(f1)
20

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
20

-------- switch to master -------
ROLLBACK;
SELECT MAX(f1) FROM t1;
MAX(f1)
20

TEST-INFO: MASTER: The INSERT is committed (Succeeded)

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
20

TEST-INFO: SLAVE:  The INSERT is committed (Succeeded)

-------- switch to master -------
flush logs;

-------- switch to slave --------
flush logs;

-------- switch to master -------
SHOW CREATE VIEW v1;
View	Create View
v1	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f1` AS `f1` from `t1`

-------- switch to slave -------
SHOW CREATE VIEW v1;
View	Create View
v1	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`f1` AS `f1` from `t1`

######## DROP VIEW IF EXISTS v1  ########

-------- switch to master -------
INSERT INTO t1 SET f1= 20 + 1;
SELECT MAX(f1) FROM t1;
MAX(f1)
21

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
20

-------- switch to master -------
DROP VIEW IF EXISTS v1;
SELECT MAX(f1) FROM t1;
MAX(f1)
21

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
21

-------- switch to master -------
ROLLBACK;
SELECT MAX(f1) FROM t1;
MAX(f1)
21

TEST-INFO: MASTER: The INSERT is committed (Succeeded)

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
21

TEST-INFO: SLAVE:  The INSERT is committed (Succeeded)

-------- switch to master -------
flush logs;

-------- switch to slave --------
flush logs;

-------- switch to master -------
SHOW CREATE VIEW v1;
ERROR 42S02: Table 'mysqltest1.v1' doesn't exist

-------- switch to slave -------
SHOW CREATE VIEW v1;
ERROR 42S02: Table 'mysqltest1.v1' doesn't exist

######## CREATE TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW SET @a:=1  ########

-------- switch to master -------
INSERT INTO t1 SET f1= 21 + 1;
SELECT MAX(f1) FROM t1;
MAX(f1)
22

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
21

-------- switch to master -------
CREATE TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW SET @a:=1;
SELECT MAX(f1) FROM t1;
MAX(f1)
22

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
22

-------- switch to master -------
ROLLBACK;
SELECT MAX(f1) FROM t1;
MAX(f1)
22

TEST-INFO: MASTER: The INSERT is committed (Succeeded)

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
22

TEST-INFO: SLAVE:  The INSERT is committed (Succeeded)

-------- switch to master -------
flush logs;

-------- switch to slave --------
flush logs;

-------- switch to master -------
SHOW TRIGGERS;
Trigger	Event	Table	Statement	Timing	Created	sql_mode
trg1	INSERT	t1	 SET @a:=1	BEFORE	NULL	

-------- switch to slave -------
SHOW TRIGGERS;
Trigger	Event	Table	Statement	Timing	Created	sql_mode
trg1	INSERT	t1	 SET @a:=1	BEFORE	NULL	

######## DROP TRIGGER trg1  ########

-------- switch to master -------
INSERT INTO t1 SET f1= 22 + 1;
SELECT MAX(f1) FROM t1;
MAX(f1)
23

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
22

-------- switch to master -------
DROP TRIGGER trg1;
SELECT MAX(f1) FROM t1;
MAX(f1)
23

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
23

-------- switch to master -------
ROLLBACK;
SELECT MAX(f1) FROM t1;
MAX(f1)
23

TEST-INFO: MASTER: The INSERT is committed (Succeeded)

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
23

TEST-INFO: SLAVE:  The INSERT is committed (Succeeded)

-------- switch to master -------
flush logs;

-------- switch to slave --------
flush logs;

-------- switch to master -------
SHOW TRIGGERS;
Trigger	Event	Table	Statement	Timing	Created	sql_mode

-------- switch to slave -------
SHOW TRIGGERS;
Trigger	Event	Table	Statement	Timing	Created	sql_mode

######## CREATE USER user1@localhost  ########

-------- switch to master -------
INSERT INTO t1 SET f1= 23 + 1;
SELECT MAX(f1) FROM t1;
MAX(f1)
24

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
23

-------- switch to master -------
CREATE USER user1@localhost;
SELECT MAX(f1) FROM t1;
MAX(f1)
24

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
24

-------- switch to master -------
ROLLBACK;
SELECT MAX(f1) FROM t1;
MAX(f1)
24

TEST-INFO: MASTER: The INSERT is committed (Succeeded)

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
24

TEST-INFO: SLAVE:  The INSERT is committed (Succeeded)

-------- switch to master -------
flush logs;

-------- switch to slave --------
flush logs;

-------- switch to master -------
SELECT user FROM mysql.user WHERE user = 'user1';
user
user1

-------- switch to slave -------
SELECT user FROM mysql.user WHERE user = 'user1';
user
user1

######## RENAME USER user1@localhost TO rename1@localhost  ########

-------- switch to master -------
INSERT INTO t1 SET f1= 24 + 1;
SELECT MAX(f1) FROM t1;
MAX(f1)
25

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
24

-------- switch to master -------
RENAME USER user1@localhost TO rename1@localhost;
SELECT MAX(f1) FROM t1;
MAX(f1)
25

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
25

-------- switch to master -------
ROLLBACK;
SELECT MAX(f1) FROM t1;
MAX(f1)
25

TEST-INFO: MASTER: The INSERT is committed (Succeeded)

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
25

TEST-INFO: SLAVE:  The INSERT is committed (Succeeded)

-------- switch to master -------
flush logs;

-------- switch to slave --------
flush logs;

-------- switch to master -------
SELECT user FROM mysql.user WHERE user = 'rename1';
user
rename1

-------- switch to slave -------
SELECT user FROM mysql.user WHERE user = 'rename1';
user
rename1

######## DROP USER rename1@localhost  ########

-------- switch to master -------
INSERT INTO t1 SET f1= 25 + 1;
SELECT MAX(f1) FROM t1;
MAX(f1)
26

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
25

-------- switch to master -------
DROP USER rename1@localhost;
SELECT MAX(f1) FROM t1;
MAX(f1)
26

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
26

-------- switch to master -------
ROLLBACK;
SELECT MAX(f1) FROM t1;
MAX(f1)
26

TEST-INFO: MASTER: The INSERT is committed (Succeeded)

-------- switch to slave --------
SELECT MAX(f1) FROM t1;
MAX(f1)
26

TEST-INFO: SLAVE:  The INSERT is committed (Succeeded)

-------- switch to master -------
flush logs;

-------- switch to slave --------
flush logs;

-------- switch to master -------
SELECT user FROM mysql.user WHERE user = 'rename1';
user

-------- switch to slave -------
SELECT user FROM mysql.user WHERE user = 'rename1';
user
DROP DATABASE IF EXISTS mysqltest1;
DROP DATABASE IF EXISTS mysqltest2;
DROP DATABASE IF EXISTS mysqltest3;
+5 −0
Original line number Diff line number Diff line
@@ -160,6 +160,11 @@ select cast(concat('184467440','73709551615') as signed);
select cast(repeat('1',20) as unsigned);
select cast(repeat('1',20) as signed);

#
# Bug #13344: cast of large decimal to signed int not handled correctly
#
select cast(1.0e+300 as signed int);

# End of 4.1 tests


+6 −0
Original line number Diff line number Diff line
@@ -49,4 +49,10 @@ select old_password(' i d k f a ');

explain extended select password('idkfa '), old_password('idkfa');

#
# Bug #13619: Crash on FreeBSD with salt like '_.'
#
--replace_column 1 #
select encrypt('1234','_.');

# End of 4.1 tests
Loading