From 3b60dc73a4639bc36e2cf519befecf32a25c31e8 Mon Sep 17 00:00:00 2001
From: "anozdrin/alik@quad." <>
Date: Wed, 6 Feb 2008 14:55:19 +0300
Subject: [PATCH] Add a test case for Bug#21380: DEFAULT definition not always
 transfered by CREATE TABLE/SELECT to the new table.

---
 mysql-test/r/create.result | 46 ++++++++++++++++++++++++++++++++++++++
 mysql-test/t/create.test   | 44 ++++++++++++++++++++++++++++++++++++
 2 files changed, 90 insertions(+)

diff --git a/mysql-test/r/create.result b/mysql-test/r/create.result
index 0613c9ba488..13192dca969 100644
--- a/mysql-test/r/create.result
+++ b/mysql-test/r/create.result
@@ -1743,4 +1743,50 @@ t1	CREATE TABLE `t1` (
   `MAXLEN` bigint(3) NOT NULL DEFAULT '0'
 ) ENGINE=MEMORY DEFAULT CHARSET=utf8
 drop table t1;
+
+# --
+# -- Bug#21380: DEFAULT definition not always transfered by CREATE
+# -- TABLE/SELECT to the new table.
+# --
+
+DROP TABLE IF EXISTS t1;
+DROP TABLE IF EXISTS t2;
+
+CREATE TABLE t1(
+c1 INT DEFAULT 12 COMMENT 'column1',
+c2 INT NULL COMMENT 'column2',
+c3 INT NOT NULL COMMENT 'column3',
+c4 VARCHAR(255) CHARACTER SET utf8 NOT NULL DEFAULT 'a',
+c5 VARCHAR(255) COLLATE utf8_unicode_ci NULL DEFAULT 'b',
+c6 VARCHAR(255))
+COLLATE ucs2_unicode_ci;
+
+SHOW CREATE TABLE t1;
+Table	Create Table
+t1	CREATE TABLE `t1` (
+  `c1` int(11) DEFAULT '12' COMMENT 'column1',
+  `c2` int(11) DEFAULT NULL COMMENT 'column2',
+  `c3` int(11) NOT NULL COMMENT 'column3',
+  `c4` varchar(255) CHARACTER SET utf8 NOT NULL DEFAULT 'a',
+  `c5` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT 'b',
+  `c6` varchar(255) COLLATE ucs2_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=ucs2 COLLATE=ucs2_unicode_ci
+
+CREATE TABLE t2 AS SELECT * FROM t1;
+
+SHOW CREATE TABLE t2;
+Table	Create Table
+t2	CREATE TABLE `t2` (
+  `c1` int(11) DEFAULT '12' COMMENT 'column1',
+  `c2` int(11) DEFAULT NULL COMMENT 'column2',
+  `c3` int(11) NOT NULL COMMENT 'column3',
+  `c4` varchar(255) CHARACTER SET utf8 NOT NULL DEFAULT 'a',
+  `c5` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT 'b',
+  `c6` varchar(255) CHARACTER SET ucs2 COLLATE ucs2_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+
+DROP TABLE t2;
+
+# -- End of test case for Bug#21380.
+
 End of 5.1 tests
diff --git a/mysql-test/t/create.test b/mysql-test/t/create.test
index dff6bf3fcff..1fc61010b8b 100644
--- a/mysql-test/t/create.test
+++ b/mysql-test/t/create.test
@@ -1341,4 +1341,48 @@ create table t1 like information_schema.character_sets;
 show create table t1;
 drop table t1;
 
+--echo
+--echo # --
+--echo # -- Bug#21380: DEFAULT definition not always transfered by CREATE
+--echo # -- TABLE/SELECT to the new table.
+--echo # --
+--echo
+
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+DROP TABLE IF EXISTS t2;
+--enable_warnings
+
+--echo
+
+CREATE TABLE t1(
+  c1 INT DEFAULT 12 COMMENT 'column1',
+  c2 INT NULL COMMENT 'column2',
+  c3 INT NOT NULL COMMENT 'column3',
+  c4 VARCHAR(255) CHARACTER SET utf8 NOT NULL DEFAULT 'a',
+  c5 VARCHAR(255) COLLATE utf8_unicode_ci NULL DEFAULT 'b',
+  c6 VARCHAR(255))
+  COLLATE ucs2_unicode_ci;
+
+--echo
+
+SHOW CREATE TABLE t1;
+
+--echo
+
+CREATE TABLE t2 AS SELECT * FROM t1;
+
+--echo
+
+SHOW CREATE TABLE t2;
+
+--echo
+
+DROP TABLE t2;
+
+--echo
+--echo # -- End of test case for Bug#21380.
+--echo
+
 --echo End of 5.1 tests
-- 
2.30.9