summaryrefslogtreecommitdiff
path: root/mysql-test/t/func_compress.test
diff options
context:
space:
mode:
authorunknown <jimw@rama.(none)>2006-07-10 19:50:40 -0700
committerunknown <jimw@rama.(none)>2006-07-10 19:50:40 -0700
commit8dc1fa1cf1aa8f04d2b52db26512f142bb1156ad (patch)
tree071591d27875662133e93f5967d673f319ab92fe /mysql-test/t/func_compress.test
parent66fc547d1bd6f267e47ac170f3038f5dd6559691 (diff)
downloadmariadb-git-8dc1fa1cf1aa8f04d2b52db26512f142bb1156ad.tar.gz
Bug #18539: uncompress(d) is null: impossible?
The UNCOMPRESS() function was not marked as maybe_null, even though it returns NULL on invalid data. This confused the optimizer. mysql-test/r/func_compress.result: Add new results mysql-test/t/func_compress.test: Add new regression test sql/item_strfunc.h: Set maybe_null within Item_func_uncompress::fix_length_and_dec()
Diffstat (limited to 'mysql-test/t/func_compress.test')
-rw-r--r--mysql-test/t/func_compress.test14
1 files changed, 14 insertions, 0 deletions
diff --git a/mysql-test/t/func_compress.test b/mysql-test/t/func_compress.test
index 4ae749f2343..eeb5d509b94 100644
--- a/mysql-test/t/func_compress.test
+++ b/mysql-test/t/func_compress.test
@@ -57,3 +57,17 @@ select uncompress(a), uncompressed_length(a) from t1;
drop table t1;
# End of 4.1 tests
+
+#
+# Bug #18539: uncompress(d) is null: impossible?
+#
+create table t1 (a varchar(32) not null);
+insert into t1 values ('foo');
+explain select * from t1 where uncompress(a) is null;
+select * from t1 where uncompress(a) is null;
+explain select *, uncompress(a) from t1;
+select *, uncompress(a) from t1;
+select *, uncompress(a), uncompress(a) is null from t1;
+drop table t1;
+
+--echo End of 5.0 tests