Commit ff0001ed authored by Jon Olav Hauglid's avatar Jon Olav Hauglid

Backport of revno: 2617.80.1

Also re-enables the test for Bug #43867

Followup to Bug#46654 False deadlock on concurrent DML/DDL with partitions, 
                      inconsistent behavior

Partition_sync.test uses features only available in debug builds.
Disabling the test for non-debug builds.
parent 2945f773
# Disabled until Bug#46654 False deadlock on concurrent DML/DDL
# with partitions, inconsistent behavior is backported
#
# Bug #43867 ALTER TABLE on a partitioned table
# causes unnecessary deadlocks
#
CREATE TABLE t1 (a int) PARTITION BY RANGE (a)
(PARTITION p0 VALUES LESS THAN (1),
PARTITION p1 VALUES LESS THAN (2));
INSERT INTO t1 VALUES (0),(1);
# Connection 2
BEGIN;
SELECT * FROM t1;
a
0
1
# Connection 1
ALTER TABLE t1 DROP PARTITION p3;
ERROR HY000: Error in list of partitions to DROP
# Connection 2
# This failed with deadlock and should not do so.
SELECT * FROM t1;
a
0
1
# Connection 1
DROP TABLE t1;
#
# Bug #46654 False deadlock on concurrent DML/DDL
# with partitions, inconsistent behavior
......
--source include/have_partition.inc
--source include/have_debug.inc
# Save the initial number of concurrent sessions.
--source include/count_sessions.inc
--echo # Disabled until Bug#46654 False deadlock on concurrent DML/DDL
--echo # with partitions, inconsistent behavior is backported
#--echo #
#--echo # Bug #43867 ALTER TABLE on a partitioned table
#--echo # causes unnecessary deadlocks
#--echo #
#
#CREATE TABLE t1 (a int) PARTITION BY RANGE (a)
#(PARTITION p0 VALUES LESS THAN (1),
# PARTITION p1 VALUES LESS THAN (2));
#
#INSERT INTO t1 VALUES (0),(1);
#
#connect(con1,localhost,root);
#
#--echo # Connection 2
#connection con1;
#BEGIN;
#SELECT * FROM t1;
#
#--echo # Connection 1
#connection default;
#--error ER_DROP_PARTITION_NON_EXISTENT
#ALTER TABLE t1 DROP PARTITION p3;
#
#--echo # Connection 2
#connection con1;
#--echo # This failed with deadlock and should not do so.
#SELECT * FROM t1;
#
#--echo # Connection 1
#connection default;
#disconnect con1;
#DROP TABLE t1;
--echo #
--echo # Bug #43867 ALTER TABLE on a partitioned table
--echo # causes unnecessary deadlocks
--echo #
CREATE TABLE t1 (a int) PARTITION BY RANGE (a)
(PARTITION p0 VALUES LESS THAN (1),
PARTITION p1 VALUES LESS THAN (2));
INSERT INTO t1 VALUES (0),(1);
connect(con1,localhost,root);
--echo # Connection 2
connection con1;
BEGIN;
SELECT * FROM t1;
--echo # Connection 1
connection default;
--error ER_DROP_PARTITION_NON_EXISTENT
ALTER TABLE t1 DROP PARTITION p3;
--echo # Connection 2
connection con1;
--echo # This failed with deadlock and should not do so.
SELECT * FROM t1;
--echo # Connection 1
connection default;
disconnect con1;
DROP TABLE t1;
--echo #
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment