mirror of
https://github.com/MariaDB/server.git
synced 2025-11-19 19:03:26 +03:00
Merge mysql.com:/home/mydev/mysql-5.1
into mysql.com:/home/mydev/mysql-5.1-bug8841
This commit is contained in:
@@ -1,5 +1,29 @@
|
||||
create database if not exists events_test;
|
||||
use events_test;
|
||||
CREATE USER pauline@localhost;
|
||||
CREATE DATABASE db_x;
|
||||
GRANT EVENT ON db_x.* TO pauline@localhost;
|
||||
USE db_x;
|
||||
CREATE TABLE x_table(a int);
|
||||
CREATE EVENT e_x1 ON SCHEDULE EVERY 1 SECOND DO DROP DATABASE db_x;
|
||||
CREATE EVENT e_x2 ON SCHEDULE EVERY 1 SECOND DO DROP TABLE x_table;
|
||||
SHOW DATABASES LIKE 'db_x';
|
||||
Database (db_x)
|
||||
db_x
|
||||
SET GLOBAL event_scheduler=1;
|
||||
SHOW DATABASES LIKE 'db_x';
|
||||
Database (db_x)
|
||||
db_x
|
||||
SHOW TABLES FROM db_x;
|
||||
Tables_in_db_x
|
||||
x_table
|
||||
SET GLOBAL event_scheduler=0;
|
||||
DROP EVENT e_x1;
|
||||
DROP EVENT e_x2;
|
||||
DROP DATABASE db_x;
|
||||
DROP USER pauline@localhost;
|
||||
USE events_test;
|
||||
SET GLOBAL event_scheduler=0;
|
||||
drop event if exists event1;
|
||||
Warnings:
|
||||
Note 1305 Event event1 does not exist
|
||||
@@ -20,6 +44,14 @@ select db, name, body, status, interval_field, interval_value from mysql.event;
|
||||
db name body status interval_field interval_value
|
||||
events_test e_43 set @a = 4 ENABLED SECOND 1
|
||||
drop event e_43;
|
||||
"Let's check whether we can use non-qualified names"
|
||||
create table non_qualif(a int);
|
||||
create event non_qualif_ev on schedule every 10 minute do insert into non_qualif values (800219);
|
||||
select * from non_qualif;
|
||||
a
|
||||
800219
|
||||
drop event non_qualif_ev;
|
||||
drop table non_qualif;
|
||||
set global event_scheduler = 0;
|
||||
create table t_event3 (a int, b float);
|
||||
drop event if exists event3;
|
||||
@@ -331,8 +363,8 @@ create event закачка on schedule every 10 hour do select get_lock("test_l
|
||||
show processlist;
|
||||
Id User Host db Command Time State Info
|
||||
# root localhost events_test Query # NULL show processlist
|
||||
# event_scheduler NULL Connect # Sleeping NULL
|
||||
# root events_test Connect # User lock select get_lock("test_lock2", 20)
|
||||
# event_scheduler connecting host NULL Connect # Sleeping NULL
|
||||
# root localhost events_test Connect # User lock select get_lock("test_lock2", 20)
|
||||
"Release the mutex, the event worker should finish."
|
||||
select release_lock("test_lock2");
|
||||
release_lock("test_lock2")
|
||||
@@ -350,8 +382,7 @@ set global event_scheduler=0;
|
||||
show processlist;
|
||||
Id User Host db Command Time State Info
|
||||
# root localhost events_test Query # NULL show processlist
|
||||
# event_scheduler NULL Connect # Sleeping NULL
|
||||
# root events_test Connect # User lock select get_lock("test_lock2_1", 20)
|
||||
# event_scheduler connecting host NULL Connect # Sleeping NULL
|
||||
"Release the lock so the child process should finish. Hence the scheduler also"
|
||||
select release_lock("test_lock2_1");
|
||||
release_lock("test_lock2_1")
|
||||
|
||||
46
mysql-test/r/events_stress.result
Normal file
46
mysql-test/r/events_stress.result
Normal file
@@ -0,0 +1,46 @@
|
||||
CREATE DATABASE IF NOT EXISTS events_test;
|
||||
CREATE DATABASE events_test2;
|
||||
USE events_test2;
|
||||
CREATE EVENT ev_drop1 ON SCHEDULE EVERY 10 MINUTE DISABLE DO SELECT 1;
|
||||
CREATE EVENT ev_drop2 ON SCHEDULE EVERY 10 MINUTE DISABLE DO SELECT 1;
|
||||
CREATE EVENT ev_drop3 ON SCHEDULE EVERY 10 MINUTE DISABLE DO SELECT 1;
|
||||
USE events_test;
|
||||
SELECT COUNT(*) FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='events_test2';
|
||||
COUNT(*)
|
||||
3
|
||||
DROP DATABASE events_test2;
|
||||
SELECT COUNT(*) FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='events_test2';
|
||||
COUNT(*)
|
||||
0
|
||||
"Now testing stability - dropping db -> events while they are running"
|
||||
CREATE DATABASE events_test2;
|
||||
USE events_test2;
|
||||
SELECT COUNT(*) FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='events_test2';
|
||||
COUNT(*)
|
||||
1000
|
||||
SET GLOBAL event_scheduler=1;
|
||||
DROP DATABASE events_test2;
|
||||
SET GLOBAL event_scheduler=0;
|
||||
SELECT COUNT(*) FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='events_test2';
|
||||
COUNT(*)
|
||||
0
|
||||
CREATE DATABASE events_test3;
|
||||
USE events_test3;
|
||||
SELECT COUNT(*) FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='events_test3';
|
||||
COUNT(*)
|
||||
950
|
||||
CREATE DATABASE events_test4;
|
||||
USE events_test4;
|
||||
CREATE DATABASE events_test2;
|
||||
USE events_test2;
|
||||
SELECT COUNT(*) FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='events_test2';
|
||||
COUNT(*)
|
||||
1050
|
||||
DROP DATABASE events_test2;
|
||||
SET GLOBAL event_scheduler=0;
|
||||
DROP DATABASE events_test3;
|
||||
SET GLOBAL event_scheduler=1;
|
||||
DROP DATABASE events_test4;
|
||||
SET GLOBAL event_scheduler=1;
|
||||
USE events_test;
|
||||
DROP DATABASE events_test;
|
||||
@@ -201,8 +201,14 @@ source database
|
||||
- world''s most
|
||||
-- popular open
|
||||
# source database
|
||||
'$message'
|
||||
"$message"
|
||||
'# MySQL: The
|
||||
- world''s most
|
||||
-- popular open
|
||||
# source database'
|
||||
"# MySQL: The
|
||||
- world''s most
|
||||
-- popular open
|
||||
# source database"
|
||||
hej
|
||||
hej
|
||||
hej
|
||||
@@ -221,6 +227,15 @@ mysqltest: At line 1: Missing arguments to let
|
||||
mysqltest: At line 1: Missing variable name in let
|
||||
mysqltest: At line 1: Missing variable name in let
|
||||
mysqltest: At line 1: Missing assignment operator in let
|
||||
# Execute: --echo # <whatever> success: $success
|
||||
# <whatever> success: 1
|
||||
# Execute: echo # <whatever> success: $success ;
|
||||
# <whatever> success: 1
|
||||
# The next two variants work fine and expand the content of $success
|
||||
# Execute: --echo $success
|
||||
1
|
||||
# Execute: echo $success ;
|
||||
1
|
||||
mysqltest: At line 1: Missing file name in source
|
||||
mysqltest: At line 1: Could not open file ./non_existingFile
|
||||
mysqltest: In included file "MYSQLTEST_VARDIR/tmp/recursive.sql": At line 1: Source directives are nesting too deep
|
||||
|
||||
@@ -8,8 +8,6 @@ a b c
|
||||
2 two two
|
||||
alter table t1 drop index c;
|
||||
select * from t1 where c = 'two';
|
||||
ERROR HY000: Table definition has changed, please retry transaction
|
||||
select * from t1 where c = 'two';
|
||||
a b c
|
||||
2 two two
|
||||
drop table t1;
|
||||
|
||||
@@ -30,14 +30,6 @@ drop table t1;
|
||||
create table t1 (a int) engine=ndbcluster;
|
||||
insert into t1 value (2);
|
||||
select * from t1;
|
||||
ERROR HY000: Table definition has changed, please retry transaction
|
||||
show warnings;
|
||||
Level Code Message
|
||||
Error 1296 Got error 241 'Invalid schema object version' from NDB
|
||||
Error 1412 Table definition has changed, please retry transaction
|
||||
Error 1105 Unknown error
|
||||
flush table t1;
|
||||
select * from t1;
|
||||
a
|
||||
2
|
||||
flush status;
|
||||
@@ -58,15 +50,9 @@ a
|
||||
select * from t3;
|
||||
a b c last_col
|
||||
1 Hi! 89 Longtext column
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 1
|
||||
show tables like 't4';
|
||||
Tables_in_test (t4)
|
||||
t4
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 2
|
||||
show tables;
|
||||
Tables_in_test
|
||||
t1
|
||||
@@ -74,4 +60,3 @@ t2
|
||||
t3
|
||||
t4
|
||||
drop table t1, t2, t3, t4;
|
||||
drop table t1, t3, t4;
|
||||
|
||||
@@ -300,3 +300,16 @@ select * from t1 where f1 = 10;
|
||||
f1 f2
|
||||
10 1
|
||||
drop table t1;
|
||||
set session storage_engine= 'memory';
|
||||
create table t1 (f_int1 int(11) default null) engine = memory
|
||||
partition by range (f_int1) subpartition by hash (f_int1)
|
||||
(partition part1 values less than (1000)
|
||||
(subpartition subpart11 engine = memory));
|
||||
drop table t1;
|
||||
set session storage_engine='myisam';
|
||||
create table t1 (f_int1 integer, f_int2 integer, primary key (f_int1))
|
||||
partition by hash(f_int1) partitions 2;
|
||||
insert into t1 values (1,1),(2,2);
|
||||
replace into t1 values (1,1),(2,2);
|
||||
drop table t1;
|
||||
End of 5.1 tests
|
||||
|
||||
Reference in New Issue
Block a user