diff options
author | Sergey Vojtovich <svoj@mariadb.org> | 2018-04-03 16:19:37 +0400 |
---|---|---|
committer | Sergey Vojtovich <svoj@mariadb.org> | 2018-04-20 17:05:28 +0400 |
commit | 3dec6c48bce84a6c804f2a714aa899aef8c45f93 (patch) | |
tree | 97bcb6b0a8a6c2e2c9588fe35e5853def16e0b2c /mysql-test/main/column_compression.result | |
parent | 43ab88f0ea4169f5b1a4681320c4fa5f5423585e (diff) | |
download | mariadb-git-3dec6c48bce84a6c804f2a714aa899aef8c45f93.tar.gz |
MDEV-15762 - VARCHAR(0) COMPRESSED crashes the server
Character set safe truncation is done when storing non-empty string in
VARCHAR(0) COMPRESSED column, so that string becomes empty. The code
didn't expect empty string after truncation.
Fixed by moving empty string check after truncation.
Diffstat (limited to 'mysql-test/main/column_compression.result')
-rw-r--r-- | mysql-test/main/column_compression.result | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/mysql-test/main/column_compression.result b/mysql-test/main/column_compression.result index b3d4caad555..4362dff4942 100644 --- a/mysql-test/main/column_compression.result +++ b/mysql-test/main/column_compression.result @@ -1373,3 +1373,16 @@ bar foo SET SESSION optimizer_switch=DEFAULT; DROP TABLE t1; +# +# MDEV-15762 - VARCHAR(0) COMPRESSED crashes the server +# +CREATE TABLE t1(a VARCHAR(0) COMPRESSED); +INSERT INTO t1 VALUES('a'); +ERROR 22001: Data too long for column 'a' at row 1 +INSERT INTO t1 VALUES(' '); +Warnings: +Note 1265 Data truncated for column 'a' at row 1 +SELECT LENGTH(a) FROM t1; +LENGTH(a) +0 +DROP TABLE t1; |