mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
merged 5.1 main -> 5.1-bugteam
This commit is contained in:
@ -553,3 +553,102 @@ DROP TABLE t1, t2;
|
||||
--enable_abort_on_error
|
||||
|
||||
--echo EOF OF TESTS
|
||||
|
||||
#
|
||||
# BUG#40004: Replication failure with no PK + no indexes
|
||||
#
|
||||
|
||||
# The test cases are taken from the bug report. It is difficult to
|
||||
# produce a test case that generates a HA_ERR_RECORD_DELETED, so we go
|
||||
# with the test cases we have.
|
||||
|
||||
connection master;
|
||||
|
||||
eval CREATE TABLE t1 (a int) ENGINE=$type;
|
||||
|
||||
INSERT IGNORE INTO t1 VALUES (NULL);
|
||||
INSERT INTO t1 ( a ) VALUES ( 0 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 9 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 2 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 9 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
|
||||
UPDATE t1 SET a = 5 WHERE a = 9;
|
||||
DELETE FROM t1 WHERE a < 6;
|
||||
UPDATE t1 SET a = 9 WHERE a < 3;
|
||||
INSERT INTO t1 ( a ) VALUES ( 3 );
|
||||
UPDATE t1 SET a = 0 WHERE a < 4;
|
||||
UPDATE t1 SET a = 8 WHERE a < 5;
|
||||
|
||||
sync_slave_with_master;
|
||||
|
||||
let $diff_table_1=master:test.t1;
|
||||
let $diff_table_2=slave:test.t1;
|
||||
source include/diff_tables.inc;
|
||||
|
||||
connection master;
|
||||
drop table t1;
|
||||
sync_slave_with_master;
|
||||
|
||||
#
|
||||
# Bug #39752: Replication failure on RBR + MyISAM + no PK
|
||||
#
|
||||
|
||||
# The test cases are taken from the bug report. It is difficult to
|
||||
# produce a test case that generates a HA_ERR_RECORD_DELETED, so we go
|
||||
# with the test cases we have.
|
||||
|
||||
connection master;
|
||||
|
||||
--disable_warnings
|
||||
eval CREATE TABLE t1 (a bit) ENGINE=$type;
|
||||
INSERT IGNORE INTO t1 VALUES (NULL);
|
||||
INSERT INTO t1 ( a ) VALUES ( 0 );
|
||||
UPDATE t1 SET a = 0 WHERE a = 1 LIMIT 3;
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
DELETE FROM t1 WHERE a < 2 LIMIT 4;
|
||||
DELETE FROM t1 WHERE a < 9 LIMIT 4;
|
||||
INSERT INTO t1 ( a ) VALUES ( 9 );
|
||||
UPDATE t1 SET a = 8 WHERE a = 0 LIMIT 6;
|
||||
INSERT INTO t1 ( a ) VALUES ( 8 );
|
||||
UPDATE t1 SET a = 0 WHERE a < 6 LIMIT 0;
|
||||
INSERT INTO t1 ( a ) VALUES ( 4 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 3 );
|
||||
UPDATE t1 SET a = 0 WHERE a = 7 LIMIT 6;
|
||||
DELETE FROM t1 WHERE a = 4 LIMIT 7;
|
||||
UPDATE t1 SET a = 9 WHERE a < 2 LIMIT 9;
|
||||
UPDATE t1 SET a = 0 WHERE a < 9 LIMIT 2;
|
||||
DELETE FROM t1 WHERE a < 0 LIMIT 5;
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
UPDATE t1 SET a = 4 WHERE a < 6 LIMIT 4;
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
UPDATE t1 SET a = 9 WHERE a < 5 LIMIT 8;
|
||||
DELETE FROM t1 WHERE a < 8 LIMIT 8;
|
||||
INSERT INTO t1 ( a ) VALUES ( 6 );
|
||||
DELETE FROM t1 WHERE a < 6 LIMIT 7;
|
||||
UPDATE t1 SET a = 7 WHERE a = 3 LIMIT 7;
|
||||
UPDATE t1 SET a = 8 WHERE a = 0 LIMIT 6;
|
||||
INSERT INTO t1 ( a ) VALUES ( 7 );
|
||||
DELETE FROM t1 WHERE a < 9 LIMIT 4;
|
||||
INSERT INTO t1 ( a ) VALUES ( 7 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 6 );
|
||||
UPDATE t1 SET a = 8 WHERE a = 3 LIMIT 4;
|
||||
DELETE FROM t1 WHERE a = 2 LIMIT 9;
|
||||
DELETE FROM t1 WHERE a = 1 LIMIT 4;
|
||||
UPDATE t1 SET a = 4 WHERE a = 2 LIMIT 7;
|
||||
INSERT INTO t1 ( a ) VALUES ( 0 );
|
||||
DELETE FROM t1 WHERE a < 3 LIMIT 0;
|
||||
UPDATE t1 SET a = 8 WHERE a = 5 LIMIT 2;
|
||||
INSERT INTO t1 ( a ) VALUES ( 1 );
|
||||
UPDATE t1 SET a = 9 WHERE a < 5 LIMIT 3;
|
||||
--enable_warnings
|
||||
|
||||
sync_slave_with_master;
|
||||
|
||||
let $diff_table_1=master:test.t1;
|
||||
let $diff_table_2=slave:test.t1;
|
||||
source include/diff_tables.inc;
|
||||
|
||||
connection master;
|
||||
drop table t1;
|
||||
sync_slave_with_master;
|
||||
|
@ -1668,3 +1668,12 @@ explain select a from t2 where a=b;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 index NULL a 10 NULL # Using where; Using index
|
||||
drop table t1, t2;
|
||||
SET SESSION BINLOG_FORMAT=STATEMENT;
|
||||
SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
|
||||
select @@session.sql_log_bin, @@session.binlog_format, @@session.tx_isolation;
|
||||
@@session.sql_log_bin 1
|
||||
@@session.binlog_format STATEMENT
|
||||
@@session.tx_isolation READ-COMMITTED
|
||||
CREATE TABLE t1 ( a INT ) ENGINE=InnoDB;
|
||||
INSERT INTO t1 VALUES(1);
|
||||
DROP TABLE t1;
|
||||
|
@ -1,4 +1,78 @@
|
||||
drop table if exists t1, t2;
|
||||
CREATE TABLE t1 (a INT NOT NULL, KEY(a))
|
||||
PARTITION BY RANGE(a)
|
||||
(PARTITION p1 VALUES LESS THAN (200), PARTITION pmax VALUES LESS THAN MAXVALUE);
|
||||
INSERT INTO t1 VALUES (2), (40), (40), (70), (60), (90), (199);
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 95 ORDER BY a ASC;
|
||||
a
|
||||
60
|
||||
70
|
||||
90
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 95;
|
||||
a
|
||||
60
|
||||
70
|
||||
90
|
||||
INSERT INTO t1 VALUES (200), (250), (210);
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 220 ORDER BY a ASC;
|
||||
a
|
||||
60
|
||||
70
|
||||
90
|
||||
199
|
||||
200
|
||||
210
|
||||
SELECT a FROM t1 WHERE a BETWEEN 200 AND 220 ORDER BY a ASC;
|
||||
a
|
||||
200
|
||||
210
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 95 ORDER BY a DESC;
|
||||
a
|
||||
90
|
||||
70
|
||||
60
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 220 ORDER BY a DESC;
|
||||
a
|
||||
210
|
||||
200
|
||||
199
|
||||
90
|
||||
70
|
||||
60
|
||||
SELECT a FROM t1 WHERE a BETWEEN 200 AND 220 ORDER BY a DESC;
|
||||
a
|
||||
210
|
||||
200
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 220;
|
||||
a
|
||||
199
|
||||
200
|
||||
210
|
||||
60
|
||||
70
|
||||
90
|
||||
SELECT a FROM t1 WHERE a BETWEEN 200 AND 220;
|
||||
a
|
||||
200
|
||||
210
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 95;
|
||||
a
|
||||
60
|
||||
70
|
||||
90
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 220;
|
||||
a
|
||||
199
|
||||
200
|
||||
210
|
||||
60
|
||||
70
|
||||
90
|
||||
SELECT a FROM t1 WHERE a BETWEEN 200 AND 220;
|
||||
a
|
||||
200
|
||||
210
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (
|
||||
a INT NOT NULL,
|
||||
b MEDIUMINT NOT NULL,
|
||||
|
@ -1,40 +0,0 @@
|
||||
stop slave;
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
reset master;
|
||||
reset slave;
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
start slave;
|
||||
SHOW SLAVE STATUS;
|
||||
SHOW SLAVE HOSTS;
|
||||
Server_id Host Port Rpl_recovery_rank Master_id
|
||||
2 127.0.0.1 SLAVE_PORT 2 1
|
||||
create table t1 ( n int);
|
||||
insert into t1 values (1),(2),(3),(4);
|
||||
insert into t1 values(5);
|
||||
SELECT * FROM t1 ORDER BY n;
|
||||
n
|
||||
1
|
||||
2
|
||||
3
|
||||
4
|
||||
5
|
||||
SELECT * FROM t1 ORDER BY n;
|
||||
n
|
||||
1
|
||||
2
|
||||
3
|
||||
4
|
||||
SELECT * FROM t1 ORDER BY n;
|
||||
n
|
||||
1
|
||||
2
|
||||
3
|
||||
4
|
||||
SELECT * FROM t1 ORDER BY n;
|
||||
n
|
||||
1
|
||||
2
|
||||
3
|
||||
4
|
||||
5
|
||||
drop table t1;
|
@ -547,9 +547,6 @@ KEY `time_key` (`time_key`),
|
||||
KEY `datetime_key` (`datetime_key`),
|
||||
KEY `varchar_key` (`varchar_key`)
|
||||
) ENGINE=InnoDB;
|
||||
Warnings:
|
||||
Warning 1286 Unknown table engine 'InnoDB'
|
||||
Warning 1266 Using storage engine MyISAM for table 't1'
|
||||
INSERT INTO t1 VALUES (1,8,5,'0000-00-00','0000-00-00','10:37:38','10:37:38','0000-00-00 00:00:00','0000-00-00 00:00:00','p','p'),(2,0,9,'0000-00-00','0000-00-00','00:00:00','00:00:00','2007-10-14 00:00:00','2007-10-14 00:00:00','d','d');
|
||||
CREATE TABLE t2 (
|
||||
`pk` int(11) NOT NULL AUTO_INCREMENT,
|
||||
@ -570,9 +567,6 @@ KEY `time_key` (`time_key`),
|
||||
KEY `datetime_key` (`datetime_key`),
|
||||
KEY `varchar_key` (`varchar_key`)
|
||||
) ENGINE=InnoDB;
|
||||
Warnings:
|
||||
Warning 1286 Unknown table engine 'InnoDB'
|
||||
Warning 1266 Using storage engine MyISAM for table 't2'
|
||||
INSERT INTO t2 VALUES (1,1,6,'2005-12-23','2005-12-23','02:24:28','02:24:28','0000-00-00 00:00:00','0000-00-00 00:00:00','g','g'),(2,0,3,'2009-09-14','2009-09-14','00:00:00','00:00:00','2000-01-30 16:39:40','2000-01-30 16:39:40','q','q'),(3,0,3,'0000-00-00','0000-00-00','00:00:00','00:00:00','0000-00-00 00:00:00','0000-00-00 00:00:00','c','c'),(4,1,6,'2007-03-29','2007-03-29','15:49:00','15:49:00','0000-00-00 00:00:00','0000-00-00 00:00:00','m','m'),(5,4,0,'2002-12-04','2002-12-04','00:00:00','00:00:00','0000-00-00 00:00:00','0000-00-00 00:00:00','o','o'),(6,9,0,'2005-01-28','2005-01-28','00:00:00','00:00:00','2001-05-18 00:00:00','2001-05-18 00:00:00','w','w'),(7,6,0,'0000-00-00','0000-00-00','06:57:25','06:57:25','0000-00-00 00:00:00','0000-00-00 00:00:00','m','m'),(8,0,0,'0000-00-00','0000-00-00','00:00:00','00:00:00','0000-00-00 00:00:00','0000-00-00 00:00:00','z','z'),(9,4,6,'2006-08-15','2006-08-15','00:00:00','00:00:00','2002-04-12 14:44:25','2002-04-12 14:44:25','j','j'),(10,0,5,'2006-12-20','2006-12-20','10:13:53','10:13:53','2008-07-22 00:00:00','2008-07-22 00:00:00','y','y'),(11,9,7,'0000-00-00','0000-00-00','00:00:00','00:00:00','2004-07-05 00:00:00','2004-07-05 00:00:00','{','{'),(12,4,3,'2007-01-26','2007-01-26','23:00:51','23:00:51','2001-05-16 00:00:00','2001-05-16 00:00:00','f','f'),(13,7,0,'2004-03-27','2004-03-27','00:00:00','00:00:00','2005-01-24 03:30:37','2005-01-24 03:30:37','',''),(14,6,0,'2006-07-26','2006-07-26','18:43:57','18:43:57','0000-00-00 00:00:00','0000-00-00 00:00:00','{','{'),(15,0,6,'2000-01-14','2000-01-14','00:00:00','00:00:00','2000-09-21 00:00:00','2000-09-21 00:00:00','o','o'),(16,9,8,'0000-00-00','0000-00-00','21:15:08','21:15:08','0000-00-00 00:00:00','0000-00-00 00:00:00','a','a'),(17,2,0,'2004-10-27','2004-10-27','00:00:00','00:00:00','2004-03-24 22:13:43','2004-03-24 22:13:43','',''),(18,7,4,'0000-00-00','0000-00-00','08:38:27','08:38:27','2002-03-18 19:51:44','2002-03-18 19:51:44','t','t'),(19,5,3,'2008-03-07','2008-03-07','03:29:07','03:29:07','2007-12-01 18:44:44','2007-12-01 18:44:44','t','t'),(20,0,0,'2002-04-09','2002-04-09','16:06:03','16:06:03','2009-04-22 00:00:00','2009-04-22 00:00:00','n','n');
|
||||
DELETE FROM t2 WHERE `int_key` < 3 LIMIT 1;
|
||||
UPDATE t1 SET `int_key` = 3 ORDER BY `pk` LIMIT 4;
|
||||
@ -588,3 +582,60 @@ UPDATE t1 SET `int_key` = 4 ORDER BY `pk` LIMIT 6;
|
||||
Comparing tables master:test.t2 and master:test.t2
|
||||
DROP TABLE t1, t2;
|
||||
EOF OF TESTS
|
||||
CREATE TABLE t1 (a int) ENGINE='MYISAM' ;
|
||||
INSERT IGNORE INTO t1 VALUES (NULL);
|
||||
INSERT INTO t1 ( a ) VALUES ( 0 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 9 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 2 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 9 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
UPDATE t1 SET a = 5 WHERE a = 9;
|
||||
DELETE FROM t1 WHERE a < 6;
|
||||
UPDATE t1 SET a = 9 WHERE a < 3;
|
||||
INSERT INTO t1 ( a ) VALUES ( 3 );
|
||||
UPDATE t1 SET a = 0 WHERE a < 4;
|
||||
UPDATE t1 SET a = 8 WHERE a < 5;
|
||||
Comparing tables master:test.t1 and slave:test.t1
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (a bit) ENGINE='MYISAM' ;
|
||||
INSERT IGNORE INTO t1 VALUES (NULL);
|
||||
INSERT INTO t1 ( a ) VALUES ( 0 );
|
||||
UPDATE t1 SET a = 0 WHERE a = 1 LIMIT 3;
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
DELETE FROM t1 WHERE a < 2 LIMIT 4;
|
||||
DELETE FROM t1 WHERE a < 9 LIMIT 4;
|
||||
INSERT INTO t1 ( a ) VALUES ( 9 );
|
||||
UPDATE t1 SET a = 8 WHERE a = 0 LIMIT 6;
|
||||
INSERT INTO t1 ( a ) VALUES ( 8 );
|
||||
UPDATE t1 SET a = 0 WHERE a < 6 LIMIT 0;
|
||||
INSERT INTO t1 ( a ) VALUES ( 4 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 3 );
|
||||
UPDATE t1 SET a = 0 WHERE a = 7 LIMIT 6;
|
||||
DELETE FROM t1 WHERE a = 4 LIMIT 7;
|
||||
UPDATE t1 SET a = 9 WHERE a < 2 LIMIT 9;
|
||||
UPDATE t1 SET a = 0 WHERE a < 9 LIMIT 2;
|
||||
DELETE FROM t1 WHERE a < 0 LIMIT 5;
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
UPDATE t1 SET a = 4 WHERE a < 6 LIMIT 4;
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
UPDATE t1 SET a = 9 WHERE a < 5 LIMIT 8;
|
||||
DELETE FROM t1 WHERE a < 8 LIMIT 8;
|
||||
INSERT INTO t1 ( a ) VALUES ( 6 );
|
||||
DELETE FROM t1 WHERE a < 6 LIMIT 7;
|
||||
UPDATE t1 SET a = 7 WHERE a = 3 LIMIT 7;
|
||||
UPDATE t1 SET a = 8 WHERE a = 0 LIMIT 6;
|
||||
INSERT INTO t1 ( a ) VALUES ( 7 );
|
||||
DELETE FROM t1 WHERE a < 9 LIMIT 4;
|
||||
INSERT INTO t1 ( a ) VALUES ( 7 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 6 );
|
||||
UPDATE t1 SET a = 8 WHERE a = 3 LIMIT 4;
|
||||
DELETE FROM t1 WHERE a = 2 LIMIT 9;
|
||||
DELETE FROM t1 WHERE a = 1 LIMIT 4;
|
||||
UPDATE t1 SET a = 4 WHERE a = 2 LIMIT 7;
|
||||
INSERT INTO t1 ( a ) VALUES ( 0 );
|
||||
DELETE FROM t1 WHERE a < 3 LIMIT 0;
|
||||
UPDATE t1 SET a = 8 WHERE a = 5 LIMIT 2;
|
||||
INSERT INTO t1 ( a ) VALUES ( 1 );
|
||||
UPDATE t1 SET a = 9 WHERE a < 5 LIMIT 3;
|
||||
Comparing tables master:test.t1 and slave:test.t1
|
||||
drop table t1;
|
||||
|
@ -582,3 +582,60 @@ UPDATE t1 SET `int_key` = 4 ORDER BY `pk` LIMIT 6;
|
||||
Comparing tables master:test.t2 and master:test.t2
|
||||
DROP TABLE t1, t2;
|
||||
EOF OF TESTS
|
||||
CREATE TABLE t1 (a int) ENGINE='INNODB' ;
|
||||
INSERT IGNORE INTO t1 VALUES (NULL);
|
||||
INSERT INTO t1 ( a ) VALUES ( 0 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 9 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 2 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 9 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
UPDATE t1 SET a = 5 WHERE a = 9;
|
||||
DELETE FROM t1 WHERE a < 6;
|
||||
UPDATE t1 SET a = 9 WHERE a < 3;
|
||||
INSERT INTO t1 ( a ) VALUES ( 3 );
|
||||
UPDATE t1 SET a = 0 WHERE a < 4;
|
||||
UPDATE t1 SET a = 8 WHERE a < 5;
|
||||
Comparing tables master:test.t1 and slave:test.t1
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (a bit) ENGINE='INNODB' ;
|
||||
INSERT IGNORE INTO t1 VALUES (NULL);
|
||||
INSERT INTO t1 ( a ) VALUES ( 0 );
|
||||
UPDATE t1 SET a = 0 WHERE a = 1 LIMIT 3;
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
DELETE FROM t1 WHERE a < 2 LIMIT 4;
|
||||
DELETE FROM t1 WHERE a < 9 LIMIT 4;
|
||||
INSERT INTO t1 ( a ) VALUES ( 9 );
|
||||
UPDATE t1 SET a = 8 WHERE a = 0 LIMIT 6;
|
||||
INSERT INTO t1 ( a ) VALUES ( 8 );
|
||||
UPDATE t1 SET a = 0 WHERE a < 6 LIMIT 0;
|
||||
INSERT INTO t1 ( a ) VALUES ( 4 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 3 );
|
||||
UPDATE t1 SET a = 0 WHERE a = 7 LIMIT 6;
|
||||
DELETE FROM t1 WHERE a = 4 LIMIT 7;
|
||||
UPDATE t1 SET a = 9 WHERE a < 2 LIMIT 9;
|
||||
UPDATE t1 SET a = 0 WHERE a < 9 LIMIT 2;
|
||||
DELETE FROM t1 WHERE a < 0 LIMIT 5;
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
UPDATE t1 SET a = 4 WHERE a < 6 LIMIT 4;
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
UPDATE t1 SET a = 9 WHERE a < 5 LIMIT 8;
|
||||
DELETE FROM t1 WHERE a < 8 LIMIT 8;
|
||||
INSERT INTO t1 ( a ) VALUES ( 6 );
|
||||
DELETE FROM t1 WHERE a < 6 LIMIT 7;
|
||||
UPDATE t1 SET a = 7 WHERE a = 3 LIMIT 7;
|
||||
UPDATE t1 SET a = 8 WHERE a = 0 LIMIT 6;
|
||||
INSERT INTO t1 ( a ) VALUES ( 7 );
|
||||
DELETE FROM t1 WHERE a < 9 LIMIT 4;
|
||||
INSERT INTO t1 ( a ) VALUES ( 7 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 6 );
|
||||
UPDATE t1 SET a = 8 WHERE a = 3 LIMIT 4;
|
||||
DELETE FROM t1 WHERE a = 2 LIMIT 9;
|
||||
DELETE FROM t1 WHERE a = 1 LIMIT 4;
|
||||
UPDATE t1 SET a = 4 WHERE a = 2 LIMIT 7;
|
||||
INSERT INTO t1 ( a ) VALUES ( 0 );
|
||||
DELETE FROM t1 WHERE a < 3 LIMIT 0;
|
||||
UPDATE t1 SET a = 8 WHERE a = 5 LIMIT 2;
|
||||
INSERT INTO t1 ( a ) VALUES ( 1 );
|
||||
UPDATE t1 SET a = 9 WHERE a < 5 LIMIT 3;
|
||||
Comparing tables master:test.t1 and slave:test.t1
|
||||
drop table t1;
|
||||
|
@ -10,6 +10,3 @@
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
rpl_redirect : Failure is sporadic and and the test is superfluous (mats)
|
||||
rpl_innodb_bug28430 : Failure on Solaris Bug #36793
|
||||
rpl_flushlog_loop : BUG#37733 2008-07-23 Sven disabled in 5.1-bugteam. the bug has been fixed in 5.1-rpl: please re-enable when that gets pushed to main
|
||||
|
@ -1,45 +0,0 @@
|
||||
#
|
||||
# Test of automatic redirection of queries to master/slave.
|
||||
#
|
||||
|
||||
source include/master-slave.inc;
|
||||
# We disable this for now as PS doesn't handle redirection
|
||||
--disable_ps_protocol
|
||||
|
||||
#first, make sure the slave has had enough time to register
|
||||
save_master_pos;
|
||||
connection slave;
|
||||
sync_with_master;
|
||||
|
||||
#discover slaves
|
||||
connection master;
|
||||
source include/show_slave_status.inc;
|
||||
--replace_result $SLAVE_MYPORT SLAVE_PORT
|
||||
SHOW SLAVE HOSTS;
|
||||
rpl_probe;
|
||||
|
||||
#turn on master/slave query direction auto-magic
|
||||
enable_rpl_parse;
|
||||
create table t1 ( n int);
|
||||
insert into t1 values (1),(2),(3),(4);
|
||||
disable_rpl_parse;
|
||||
save_master_pos;
|
||||
connection slave;
|
||||
sync_with_master;
|
||||
insert into t1 values(5);
|
||||
connection master;
|
||||
enable_rpl_parse;
|
||||
# The first of the queries will be sent to the slave, the second to the master.
|
||||
SELECT * FROM t1 ORDER BY n;
|
||||
SELECT * FROM t1 ORDER BY n;
|
||||
disable_rpl_parse;
|
||||
SELECT * FROM t1 ORDER BY n;
|
||||
connection slave;
|
||||
SELECT * FROM t1 ORDER BY n;
|
||||
|
||||
# Cleanup
|
||||
connection master;
|
||||
drop table t1;
|
||||
sync_slave_with_master;
|
||||
|
||||
# End of 4.1 tests
|
@ -588,3 +588,60 @@ UPDATE t1 SET `int_key` = 4 ORDER BY `pk` LIMIT 6;
|
||||
Comparing tables master:test.t2 and master:test.t2
|
||||
DROP TABLE t1, t2;
|
||||
EOF OF TESTS
|
||||
CREATE TABLE t1 (a int) ENGINE='NDB' ;
|
||||
INSERT IGNORE INTO t1 VALUES (NULL);
|
||||
INSERT INTO t1 ( a ) VALUES ( 0 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 9 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 2 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 9 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
UPDATE t1 SET a = 5 WHERE a = 9;
|
||||
DELETE FROM t1 WHERE a < 6;
|
||||
UPDATE t1 SET a = 9 WHERE a < 3;
|
||||
INSERT INTO t1 ( a ) VALUES ( 3 );
|
||||
UPDATE t1 SET a = 0 WHERE a < 4;
|
||||
UPDATE t1 SET a = 8 WHERE a < 5;
|
||||
Comparing tables master:test.t1 and slave:test.t1
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (a bit) ENGINE='NDB' ;
|
||||
INSERT IGNORE INTO t1 VALUES (NULL);
|
||||
INSERT INTO t1 ( a ) VALUES ( 0 );
|
||||
UPDATE t1 SET a = 0 WHERE a = 1 LIMIT 3;
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
DELETE FROM t1 WHERE a < 2 LIMIT 4;
|
||||
DELETE FROM t1 WHERE a < 9 LIMIT 4;
|
||||
INSERT INTO t1 ( a ) VALUES ( 9 );
|
||||
UPDATE t1 SET a = 8 WHERE a = 0 LIMIT 6;
|
||||
INSERT INTO t1 ( a ) VALUES ( 8 );
|
||||
UPDATE t1 SET a = 0 WHERE a < 6 LIMIT 0;
|
||||
INSERT INTO t1 ( a ) VALUES ( 4 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 3 );
|
||||
UPDATE t1 SET a = 0 WHERE a = 7 LIMIT 6;
|
||||
DELETE FROM t1 WHERE a = 4 LIMIT 7;
|
||||
UPDATE t1 SET a = 9 WHERE a < 2 LIMIT 9;
|
||||
UPDATE t1 SET a = 0 WHERE a < 9 LIMIT 2;
|
||||
DELETE FROM t1 WHERE a < 0 LIMIT 5;
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
UPDATE t1 SET a = 4 WHERE a < 6 LIMIT 4;
|
||||
INSERT INTO t1 ( a ) VALUES ( 5 );
|
||||
UPDATE t1 SET a = 9 WHERE a < 5 LIMIT 8;
|
||||
DELETE FROM t1 WHERE a < 8 LIMIT 8;
|
||||
INSERT INTO t1 ( a ) VALUES ( 6 );
|
||||
DELETE FROM t1 WHERE a < 6 LIMIT 7;
|
||||
UPDATE t1 SET a = 7 WHERE a = 3 LIMIT 7;
|
||||
UPDATE t1 SET a = 8 WHERE a = 0 LIMIT 6;
|
||||
INSERT INTO t1 ( a ) VALUES ( 7 );
|
||||
DELETE FROM t1 WHERE a < 9 LIMIT 4;
|
||||
INSERT INTO t1 ( a ) VALUES ( 7 );
|
||||
INSERT INTO t1 ( a ) VALUES ( 6 );
|
||||
UPDATE t1 SET a = 8 WHERE a = 3 LIMIT 4;
|
||||
DELETE FROM t1 WHERE a = 2 LIMIT 9;
|
||||
DELETE FROM t1 WHERE a = 1 LIMIT 4;
|
||||
UPDATE t1 SET a = 4 WHERE a = 2 LIMIT 7;
|
||||
INSERT INTO t1 ( a ) VALUES ( 0 );
|
||||
DELETE FROM t1 WHERE a < 3 LIMIT 0;
|
||||
UPDATE t1 SET a = 8 WHERE a = 5 LIMIT 2;
|
||||
INSERT INTO t1 ( a ) VALUES ( 1 );
|
||||
UPDATE t1 SET a = 9 WHERE a < 5 LIMIT 3;
|
||||
Comparing tables master:test.t1 and slave:test.t1
|
||||
drop table t1;
|
||||
|
@ -29,3 +29,17 @@ insert into t2 select @a:=A.a+10*(B.a + 10*C.a),@a, @a from t1 A, t1 B, t1 C;
|
||||
explain select a from t2 where a=b;
|
||||
drop table t1, t2;
|
||||
|
||||
#
|
||||
# Bug #40360: Binlog related errors with binlog off
|
||||
#
|
||||
# This bug is triggered when the binlog format is STATEMENT and the
|
||||
# binary log is turned off. In this case, no error should be shown for
|
||||
# the statement since there are no replication issues.
|
||||
|
||||
SET SESSION BINLOG_FORMAT=STATEMENT;
|
||||
SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
|
||||
query_vertical select @@session.sql_log_bin, @@session.binlog_format, @@session.tx_isolation;
|
||||
CREATE TABLE t1 ( a INT ) ENGINE=InnoDB;
|
||||
INSERT INTO t1 VALUES(1);
|
||||
DROP TABLE t1;
|
||||
|
||||
|
@ -14,6 +14,35 @@
|
||||
drop table if exists t1, t2;
|
||||
--enable_warnings
|
||||
|
||||
#
|
||||
# Bug#40494: Crash MYSQL server crashes on range access with partitioning
|
||||
# and order by
|
||||
#
|
||||
CREATE TABLE t1 (a INT NOT NULL, KEY(a))
|
||||
PARTITION BY RANGE(a)
|
||||
(PARTITION p1 VALUES LESS THAN (200), PARTITION pmax VALUES LESS THAN MAXVALUE);
|
||||
INSERT INTO t1 VALUES (2), (40), (40), (70), (60), (90), (199);
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 95 ORDER BY a ASC;
|
||||
--sorted_result
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 95;
|
||||
INSERT INTO t1 VALUES (200), (250), (210);
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 220 ORDER BY a ASC;
|
||||
SELECT a FROM t1 WHERE a BETWEEN 200 AND 220 ORDER BY a ASC;
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 95 ORDER BY a DESC;
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 220 ORDER BY a DESC;
|
||||
SELECT a FROM t1 WHERE a BETWEEN 200 AND 220 ORDER BY a DESC;
|
||||
--sorted_result
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 220;
|
||||
--sorted_result
|
||||
SELECT a FROM t1 WHERE a BETWEEN 200 AND 220;
|
||||
--sorted_result
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 95;
|
||||
--sorted_result
|
||||
SELECT a FROM t1 WHERE a BETWEEN 60 AND 220;
|
||||
--sorted_result
|
||||
SELECT a FROM t1 WHERE a BETWEEN 200 AND 220;
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# Bug35931: Index search may return duplicates
|
||||
#
|
||||
|
Reference in New Issue
Block a user