diff options
author | anozdrin/alik@station. <> | 2007-10-23 18:03:51 +0400 |
---|---|---|
committer | anozdrin/alik@station. <> | 2007-10-23 18:03:51 +0400 |
commit | b2264ff81040fa021671181d8098778964458033 (patch) | |
tree | eaae216f32a03ef82da350e4dcf6edb1038c090f /mysql-test/t/select.test | |
parent | 6fa35a5d3b3647682d1ee211a7afd20d220f8151 (diff) | |
download | mariadb-git-b2264ff81040fa021671181d8098778964458033.tar.gz |
Patch for BUG#30736: Row Size Too Large Error Creating a Table and
Inserting Data.
The problem was that under some circumstances Field class was not
properly initialized before calling create_length_to_internal_length()
function, which led to assert failure.
The fix is to do the proper initialization.
The user-visible problem was that under some circumstances
CREATE TABLE ... SELECT statement crashed the server or led
to wrong error message (wrong results).
Diffstat (limited to 'mysql-test/t/select.test')
-rw-r--r-- | mysql-test/t/select.test | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/mysql-test/t/select.test b/mysql-test/t/select.test index 5c30a17e08e..6deb951c4e8 100644 --- a/mysql-test/t/select.test +++ b/mysql-test/t/select.test @@ -3484,4 +3484,52 @@ DROP VIEW v1, v2, v3; --enable_ps_protocol +########################################################################### + +--echo +--echo # +--echo # Bug#30736: Row Size Too Large Error Creating a Table and +--echo # Inserting Data. +--echo # + +--disable_warnings +DROP TABLE IF EXISTS t1; +DROP TABLE IF EXISTS t2; +--enable_warnings + +--echo + +CREATE TABLE t1( + c1 DECIMAL(10, 2), + c2 FLOAT); + +--echo + +INSERT INTO t1 VALUES (0, 1), (2, 3), (4, 5); + +--echo + +CREATE TABLE t2( + c3 DECIMAL(10, 2)) + SELECT + c1 * c2 AS c3 + FROM t1; + +--echo + +SELECT * FROM t1; + +--echo + +SELECT * FROM t2; + +--echo + +DROP TABLE t1; +DROP TABLE t2; + +--echo + +########################################################################### + --echo End of 5.0 tests |