diff options
Diffstat (limited to 'storage/rocksdb/mysql-test/rocksdb/t/type_float.inc')
-rw-r--r-- | storage/rocksdb/mysql-test/rocksdb/t/type_float.inc | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/storage/rocksdb/mysql-test/rocksdb/t/type_float.inc b/storage/rocksdb/mysql-test/rocksdb/t/type_float.inc new file mode 100644 index 00000000..ff58b73a --- /dev/null +++ b/storage/rocksdb/mysql-test/rocksdb/t/type_float.inc @@ -0,0 +1,121 @@ +# +# Float types +# + +--disable_warnings +DROP TABLE IF EXISTS t1; +--enable_warnings + +eval CREATE TABLE t1 ( + f FLOAT $extra_col_opts, + f0 FLOAT(0) $extra_col_opts, + r1_1 REAL(1,1) $extra_col_opts, + f23_0 FLOAT(23) $extra_col_opts, + f20_3 FLOAT(20,3) $extra_col_opts, + d DOUBLE $extra_col_opts, + d1_0 DOUBLE(1,0) $extra_col_opts, + d10_10 DOUBLE PRECISION (10,10) $extra_col_opts, + d53 DOUBLE(53,0) $extra_col_opts, + d53_10 DOUBLE(53,10) $extra_col_opts, + pk DOUBLE $extra_col_opts PRIMARY KEY +) ENGINE=rocksdb; + +SHOW COLUMNS IN t1; + +# Always valid values + +INSERT INTO t1 (f,f0,r1_1,f23_0,f20_3,d,d1_0,d10_10,d53,d53_10,pk) VALUES (12345.12345,12345.12345,0.9,123456789.123,56789.987,11111111.111,8.0,0.0123456789,1234566789123456789,99999999999999999.99999999,1); + +--sorted_result +--query_vertical SELECT f,f0,r1_1,f23_0,f20_3,d,d1_0,d10_10,d53,d53_10 FROM t1 + +INSERT INTO t1 (f,f0,r1_1,f23_0,f20_3,d,d1_0,d10_10,d53,d53_10,pk) VALUES (0,0,0,0,0,0,0,0,0,0,2); +INSERT INTO t1 (f,f0,r1_1,f23_0,f20_3,d,d1_0,d10_10,d53,d53_10,pk) VALUES ( + 99999999999999999999999999999999999999, + 99999999999999999999999999999999999999.9999999999999999, + 0.9, + 99999999999999999999999999999999999999.9, + 99999999999999999.999, + 999999999999999999999999999999999999999999999999999999999999999999999999999999999, + 9, + 0.9999999999, + 1999999999999999999999999999999999999999999999999999999, + 19999999999999999999999999999999999999999999.9999999999, + 3 +); + +--sorted_result +--query_vertical SELECT f,f0,r1_1,f23_0,f20_3,d,d1_0,d10_10,d53,d53_10 FROM t1 + +# Values which can be valid or not, +# depending on whether columns are SIGNED or UNSIGNED +# (if not valid should produce warnings) + +INSERT INTO t1 (f,f0,r1_1,f23_0,f20_3,d,d1_0,d10_10,d53,d53_10,pk) VALUES (-999999999999999999999999,-99999999999.999999999999,-0.9,-999.99999999999999999999,-99999999999999999.999,-999999999999999999999999999999999999999999999999999999999999-0.999,-9,-.9999999999,-999999999999999999999999999999.99999999999999999999999,-9999999999999999999999999999999999999999999.9999999999,4); + +--sorted_result +--query_vertical SELECT f,f0,r1_1,f23_0,f20_3,d,d1_0,d10_10,d53,d53_10 FROM t1 + +--sorted_result +query_vertical +SELECT + CONCAT('', MAX(f)), + CONCAT('', MAX(f0)), + CONCAT('', MAX(r1_1)), + CONCAT('', MAX(f23_0)), + CONCAT('', MAX(f20_3)), + CONCAT('', MAX(d)), + CONCAT('', MAX(d1_0)), + CONCAT('', MAX(d10_10)), + CONCAT('', MAX(d53)), + CONCAT('', MAX(d53_10)) FROM t1; + +# Invalid values + +INSERT INTO t1 (f,f0,r1_1,f23_0,f20_3,d,d1_0,d10_10,d53,d53_10,pk) VALUES ( + 9999999999999999999999999999999999999999999999999999999999999.9999, + 9999999999999999999999999999999999999999999999999999999999999.9999, + 9999999999999999999999999999999999999999999999999999999999999.9999, + 9999999999999999999999999999999999999999999999999999999999999.9999, + 9999999999999999999999999999999999999999999999999999999999999.9999, + 9999999999999999999999999999999999999999999999999999999999999.9999, + 9999999999999999999999999999999999999999999999999999999999999.9999, + 9999999999999999999999999999999999999999999999999999999999999.9999, + 9999999999999999999999999999999999999999999999999999999999999.9999, + 9999999999999999999999999999999999999999999999999999999999999.9999, + 5 +); + +--sorted_result +--query_vertical SELECT f,f0,r1_1,f23_0,f20_3,d,d1_0,d10_10,d53,d53_10 FROM t1 + +INSERT INTO t1 (f,f0,r1_1,f23_0,f20_3,d,d1_0,d10_10,d53,d53_10,pk) VALUES ( + 999999999999999999999999999999999999999, + 999999999999999999999999999999999999999.9999999999999999, + 1.9, + 999999999999999999999999999999999999999.9, + 999999999999999999.999, + 9999999999999999999999999999999999999999999999999999999999999999999999999999999999, + 99, + 1.9999999999, + 1999999999999999999999999999999999999999999999999999999, + 19999999999999999999999999999999999999999999.9999999999, + 6 +); + +--sorted_result +--query_vertical SELECT f,f0,r1_1,f23_0,f20_3,d,d1_0,d10_10,d53,d53_10 FROM t1 + +# Error occurs on MySQL but not on MariaDB: +# --error ER_TOO_BIG_DISPLAYWIDTH +eval ALTER TABLE t1 ADD COLUMN d0_0 DOUBLE(0,0) $extra_col_opts; + +--error ER_TOO_BIG_PRECISION +eval ALTER TABLE t1 ADD COLUMN n66_6 DECIMAL(256,1) $extra_col_opts; + +# Error occurs on MySQL but not on MariaDB: +# --error ER_TOO_BIG_SCALE +eval ALTER TABLE t1 ADD COLUMN n66_66 DECIMAL(40,35) $extra_col_opts; + +DROP TABLE t1; + |