diff --git a/mysql-test/r/partition_mgm_err.result b/mysql-test/r/partition_mgm_err.result
index 3c2c50fc6f8d4bae7d426e3da4f5c78c0cdb975c..38a69e935360e840cd8045b6d33c99c63ccdd331 100644
--- a/mysql-test/r/partition_mgm_err.result
+++ b/mysql-test/r/partition_mgm_err.result
@@ -112,3 +112,29 @@ ALTER TABLE t1 DROP PARTITION x1;
 ALTER TABLE t1 DROP PARTITION x0;
 ERROR HY000: Cannot remove all partitions, use DROP TABLE instead
 DROP TABLE t1;
+CREATE TABLE t1 ( id INT NOT NULL,
+fname VARCHAR(50) NOT NULL,
+lname VARCHAR(50) NOT NULL,
+hired DATE NOT NULL )
+PARTITION BY RANGE(YEAR(hired)) (
+PARTITION p1 VALUES LESS THAN (1991),
+PARTITION p2 VALUES LESS THAN (1996),
+PARTITION p3 VALUES LESS THAN (2001),
+PARTITION p4 VALUES LESS THAN (2005));
+ALTER TABLE t1 ADD PARTITION (
+PARTITION p5 VALUES LESS THAN (2010),
+PARTITION p6 VALUES LESS THAN MAXVALUE);
+DROP TABLE t1;
+CREATE TABLE t1 (a INT);
+SHOW CREATE TABLE t1;
+Table	Create Table
+t1	CREATE TABLE `t1` (
+  `a` int(11) default NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+ALTER TABLE t1 PARTITION BY KEY(a) PARTITIONS 2;
+SHOW CREATE TABLE t1;
+Table	Create Table
+t1	CREATE TABLE `t1` (
+  `a` int(11) default NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 PARTITION BY KEY (a) PARTITIONS 2 
+DROP TABLE t1;
diff --git a/mysql-test/t/partition_mgm_err.test b/mysql-test/t/partition_mgm_err.test
index c12f1c05c05e6d742cd69be1e16713a88263d48e..4b6b4968bdb29a45e722bf805dcf3d9cb93c2b3c 100644
--- a/mysql-test/t/partition_mgm_err.test
+++ b/mysql-test/t/partition_mgm_err.test
@@ -167,3 +167,29 @@ ALTER TABLE t1 DROP PARTITION x1;
 ALTER TABLE t1 DROP PARTITION x0;
 
 DROP TABLE t1;
+
+#
+# Bug# 16534 - Trying to add multiple partitions crashes server
+#
+CREATE TABLE t1 ( id INT NOT NULL,
+                  fname VARCHAR(50) NOT NULL,
+                  lname VARCHAR(50) NOT NULL,
+                  hired DATE NOT NULL )
+PARTITION BY RANGE(YEAR(hired)) (
+  PARTITION p1 VALUES LESS THAN (1991),
+  PARTITION p2 VALUES LESS THAN (1996),
+  PARTITION p3 VALUES LESS THAN (2001),
+  PARTITION p4 VALUES LESS THAN (2005));
+ALTER TABLE t1 ADD PARTITION (
+  PARTITION p5 VALUES LESS THAN (2010),
+  PARTITION p6 VALUES LESS THAN MAXVALUE);
+DROP TABLE t1;
+
+#
+#BUG 15523 ALTER TABLE ... PARTITION BY does not work
+#
+CREATE TABLE t1 (a INT);
+SHOW CREATE TABLE t1;
+ALTER TABLE t1 PARTITION BY KEY(a) PARTITIONS 2;
+SHOW CREATE TABLE t1;
+DROP TABLE t1;