mirror of
https://github.com/MariaDB/server.git
synced 2025-07-05 12:42:17 +03:00
Backport test cases for Bug#46198 and Bug#38054
from 6.0 to trunk-bugfixing.
This commit is contained in:
@ -2111,4 +2111,24 @@ COUNT(*)
|
|||||||
0
|
0
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
SET SESSION SQL_MODE=DEFAULT;
|
SET SESSION SQL_MODE=DEFAULT;
|
||||||
|
#
|
||||||
|
# Bug#46198: Hang after failed ALTER TABLE on partitioned table.
|
||||||
|
#
|
||||||
|
DROP TABLE IF EXISTS t1;
|
||||||
|
CREATE TABLE t1 (s1 INT PRIMARY KEY) PARTITION BY HASH(s1);
|
||||||
|
LOCK TABLES t1 WRITE, t1 b READ;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
ALTER TABLE t1 DROP PARTITION p1;
|
||||||
|
ERROR HY000: DROP PARTITION can only be used on RANGE/LIST partitions
|
||||||
|
SELECT * FROM t1;
|
||||||
|
s1
|
||||||
|
DROP TABLE t1;
|
||||||
|
CREATE TABLE t1 (s1 VARCHAR(5) PRIMARY KEY) PARTITION BY KEY(s1);
|
||||||
|
LOCK TABLES t1 WRITE, t1 b READ;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
ALTER TABLE t1 ADD COLUMN (s3 VARCHAR(5) UNIQUE);
|
||||||
|
ERROR HY000: A UNIQUE INDEX must include all columns in the table's partitioning function
|
||||||
|
SELECT * FROM t1;
|
||||||
|
s1
|
||||||
|
DROP TABLE t1;
|
||||||
End of 5.1 tests
|
End of 5.1 tests
|
||||||
|
@ -10,3 +10,10 @@ set debug= '-P';
|
|||||||
select @@debug;
|
select @@debug;
|
||||||
@@debug
|
@@debug
|
||||||
T
|
T
|
||||||
|
SELECT @@session.debug, @@global.debug;
|
||||||
|
@@session.debug @@global.debug
|
||||||
|
T
|
||||||
|
SET SESSION debug = '';
|
||||||
|
SELECT @@session.debug, @@global.debug;
|
||||||
|
@@session.debug @@global.debug
|
||||||
|
|
||||||
|
@ -2118,4 +2118,49 @@ SET SESSION SQL_MODE=DEFAULT;
|
|||||||
#SELECT 1 FROM t1 JOIN t1 AS t2 USING (a) FOR UPDATE;
|
#SELECT 1 FROM t1 JOIN t1 AS t2 USING (a) FOR UPDATE;
|
||||||
#
|
#
|
||||||
#DROP TABLE t1;
|
#DROP TABLE t1;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#46198: Hang after failed ALTER TABLE on partitioned table.
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
--disable_warnings
|
||||||
|
DROP TABLE IF EXISTS t1;
|
||||||
|
--enable_warnings
|
||||||
|
|
||||||
|
#
|
||||||
|
# Case 1.
|
||||||
|
#
|
||||||
|
|
||||||
|
CREATE TABLE t1 (s1 INT PRIMARY KEY) PARTITION BY HASH(s1);
|
||||||
|
|
||||||
|
LOCK TABLES t1 WRITE, t1 b READ;
|
||||||
|
|
||||||
|
UNLOCK TABLES;
|
||||||
|
|
||||||
|
--error ER_ONLY_ON_RANGE_LIST_PARTITION
|
||||||
|
ALTER TABLE t1 DROP PARTITION p1;
|
||||||
|
|
||||||
|
# The SELECT below used to hang in tdc_wait_for_old_versions().
|
||||||
|
SELECT * FROM t1;
|
||||||
|
|
||||||
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Case 2.
|
||||||
|
#
|
||||||
|
|
||||||
|
CREATE TABLE t1 (s1 VARCHAR(5) PRIMARY KEY) PARTITION BY KEY(s1);
|
||||||
|
|
||||||
|
LOCK TABLES t1 WRITE, t1 b READ;
|
||||||
|
|
||||||
|
UNLOCK TABLES;
|
||||||
|
|
||||||
|
--error ER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF
|
||||||
|
ALTER TABLE t1 ADD COLUMN (s3 VARCHAR(5) UNIQUE);
|
||||||
|
|
||||||
|
# The SELECT below used to hang in tdc_wait_for_old_versions().
|
||||||
|
SELECT * FROM t1;
|
||||||
|
|
||||||
|
DROP TABLE t1;
|
||||||
|
|
||||||
--echo End of 5.1 tests
|
--echo End of 5.1 tests
|
||||||
|
@ -10,3 +10,13 @@ set debug= '+P';
|
|||||||
select @@debug;
|
select @@debug;
|
||||||
set debug= '-P';
|
set debug= '-P';
|
||||||
select @@debug;
|
select @@debug;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug#38054: "SET SESSION debug" modifies @@global.debug variable
|
||||||
|
#
|
||||||
|
|
||||||
|
SELECT @@session.debug, @@global.debug;
|
||||||
|
|
||||||
|
SET SESSION debug = '';
|
||||||
|
|
||||||
|
SELECT @@session.debug, @@global.debug;
|
||||||
|
Reference in New Issue
Block a user