diff options
author | unknown <bar@mysql.com> | 2005-03-04 14:20:49 +0400 |
---|---|---|
committer | unknown <bar@mysql.com> | 2005-03-04 14:20:49 +0400 |
commit | c56d0283ddde723bb8c8052b963d1f54b26bed3b (patch) | |
tree | 2441bab602265c2b1dba098f2faeade8b9cc33df /mysql-test/t/func_system.test | |
parent | e54b545a966a92677242d6e6f904a10eb73cb707 (diff) | |
download | mariadb-git-c56d0283ddde723bb8c8052b963d1f54b26bed3b.tar.gz |
type_blob.result, func_system.result, func_str.result, ctype_collate.result:
fixing test results accordingly.
func_system.test:
New test that illegal mix of collations does not happen anymore.
item_strfunc.h:
safe_charset_converter() was added for system constants.
item_strfunc.cc:
safe_charset_converter() was added for system constants.
item_func.cc, item.h, item.cc:
Bug#8291: Illegal collation mix with USER() function.
After discussion with PeterG and Serge, a new coercibility
level for "system constants" was introduced, between
COERRIBLE and IMPLICIT. Thus:
SELECT col1 = USER() FROM t1; - is done according to col1 collation.
SELECT 'string' = USER(); - is done according to USER() collation.
At the same time, "nagg" and "strong" members were removed as unused.
item_create.cc:
Version is a system constant too.
sql/item.cc:
Bug#8291: Illegal collation mix with USER() function.
After discussion with PeterG and Serge, a new coercibility
level for "system constants" was introduced, between
COERRIBLE and IMPLICIT. Thus:
SELECT col1 = USER() FROM t1; - is done according to col1 collation.
SELECT 'string' = USER(); - is done according to USER() collation.
At the same time, "nagg" and "strong" members were removed as unused.
sql/item.h:
Bug#8291: Illegal collation mix with USER() function.
After discussion with PeterG and Serge, a new coercibility
level for "system constants" was introduced, between
COERRIBLE and IMPLICIT. Thus:
SELECT col1 = USER() FROM t1; - is done according to col1 collation.
SELECT 'string' = USER(); - is done according to USER() collation.
At the same time, "nagg" and "strong" members were removed as unused.
sql/item_create.cc:
Version is a system constant too.
sql/item_func.cc:
Bug#8291: Illegal collation mix with USER() function.
After discussion with PeterG and Serge, a new coercibility
level for "system constants" was introduced, between
COERRIBLE and IMPLICIT. Thus:
SELECT col1 = USER() FROM t1; - is done according to col1 collation.
SELECT 'string' = USER(); - is done according to USER() collation.
At the same time, "nagg" and "strong" members were removed as unused.
sql/item_strfunc.cc:
safe_charset_converter() was added for system constants.
sql/item_strfunc.h:
safe_charset_converter() was added for system constants.
mysql-test/t/func_system.test:
New test that illegal mix of collations does not happen anymore.
mysql-test/r/ctype_collate.result:
fixing test results accordingly.
mysql-test/r/func_str.result:
fixing test results accordingly.
mysql-test/r/func_system.result:
fixing test results accordingly.
mysql-test/r/type_blob.result:
fixing test results accordingly.
Diffstat (limited to 'mysql-test/t/func_system.test')
-rw-r--r-- | mysql-test/t/func_system.test | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/mysql-test/t/func_system.test b/mysql-test/t/func_system.test index a05b80ca56b..7fff165e057 100644 --- a/mysql-test/t/func_system.test +++ b/mysql-test/t/func_system.test @@ -30,3 +30,12 @@ show create table t1; drop table t1; select TRUE,FALSE,NULL; + +# +# Bug#8291 Illegal collation mix with USER() function +# +create table t1 (a char(10)) character set latin1; +select * from t1 where a=version(); +select * from t1 where a=database(); +select * from t1 where a=user(); +drop table t1; |