summaryrefslogtreecommitdiffstats
path: root/mysql-test/main/long_unique_bugs.test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/main/long_unique_bugs.test')
-rw-r--r--mysql-test/main/long_unique_bugs.test92
1 files changed, 92 insertions, 0 deletions
diff --git a/mysql-test/main/long_unique_bugs.test b/mysql-test/main/long_unique_bugs.test
index c06b4169..01c3f736 100644
--- a/mysql-test/main/long_unique_bugs.test
+++ b/mysql-test/main/long_unique_bugs.test
@@ -564,5 +564,97 @@ update t1 set b = 30 limit 1;
drop table t1;
--echo #
+--echo # MDEV-32839 LONG UNIQUE gives error when used with REPLACE
+--echo #
+create table t1 (
+ f1 bigint(20) not null auto_increment primary key,
+ f2 varchar(30) default null,
+ f3 varchar(30) default null,
+ f4 varchar(255) default null,
+ f5 varchar(30) default null,
+ f6 varchar(255) default null,
+ f7 varchar(255) default null,
+ unique problem_key (f3,f5,f6,f2,f4,f7) using hash
+) engine=myisam;
+insert t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'd');
+replace t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'd');
+insert t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'e');
+replace t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'e');
+select * from t1;
+drop table t1;
+
+create table t1 (
+ f1 bigint(20) not null auto_increment primary key,
+ f2 varchar(30) default null,
+ f3 varchar(30) default null,
+ f4 varchar(255) default null,
+ f5 varchar(30) default null,
+ f6 varchar(255) default null,
+ f7 varchar(255) default null,
+ unique problem_key (f3,f5,f6,f2,f4,f7) using hash
+) engine=innodb;
+insert t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'd');
+replace t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'd');
+insert t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'e');
+replace t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'e');
+select * from t1;
+drop table t1;
+
+create table t1 (
+ f1 bigint(20) not null auto_increment primary key,
+ f2 varchar(30) default null,
+ f3 varchar(30) default null,
+ f4 varchar(255) default null,
+ f5 varchar(30) default null,
+ f6 varchar(255) default null,
+ f7 varchar(255) default null,
+ unique problem_key (f3,f5,f6,f2,f4,f7) using hash
+) engine=myisam partition by key(f1) partitions 2;
+insert t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'd');
+replace t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'd');
+insert t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'e');
+replace t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'e');
+select * from t1;
+drop table t1;
+
+create table t1 (
+ f1 bigint(20) not null auto_increment primary key,
+ f2 varchar(30) default null,
+ f3 varchar(30) default null,
+ f4 varchar(255) default null,
+ f5 varchar(30) default null,
+ f6 varchar(255) default null,
+ f7 varchar(255) default null,
+ unique problem_key (f3,f5,f6,f2,f4,f7) using hash
+) engine=innodb partition by key(f1) partitions 2;
+insert t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'd');
+replace t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'd');
+insert t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'e');
+replace t1 (f2, f3, f4, f5, f6, f7) values ('00004', '0001009089999', '', 'netstes', 'psit', 'e');
+select * from t1;
+drop table t1;
+
+--echo #
+--echo # MDEV-29954 Unique hash key on column prefix is computed incorrectly
+--echo #
+create table t1 (c char(10),unique key a using hash (c(1)));
+insert into t1 values (0);
+check table t1 extended;
+drop table t1;
+
+
+--echo #
+--echo # MDEV-32837 long unique does not work like unique key when using replace
+--echo #
+
+CREATE TABLE t1 (a INT PRIMARY KEY, b INT, c INT, UNIQUE KEY `test` (b,c) USING HASH) ENGINE=MyISAM;
+INSERT INTO t1 VALUES (1,1,1),(2,2,2);
+REPLACE INTO t1 VALUES (3,1,1);
+SELECT * FROM t1 ORDER BY a;
+REPLACE INTO t1 VALUES (3,2,2);
+SELECT * FROM t1;
+DROP TABLE t1;
+
+--echo #
--echo # End of 10.5 tests
--echo #