Commit 0ff109f1 authored by bar@mysql.com's avatar bar@mysql.com

Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-4.1

into  mysql.com:/usr/home/bar/mysql-4.1.b10892
parents 9a422fc3 8545cf92
......@@ -440,3 +440,6 @@ insert into tables_priv values ('','test_db','mysqltest_1','test_table','test_gr
flush privileges;
delete from tables_priv where host = '' and user = 'mysqltest_1';
flush privileges;
set @user123="non-existent";
select * from mysql.db where user=@user123;
Host Db User Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Grant_priv References_priv Index_priv Alter_priv Create_tmp_table_priv Lock_tables_priv
......@@ -402,4 +402,11 @@ flush privileges;
delete from tables_priv where host = '' and user = 'mysqltest_1';
flush privileges;
#
# Bug #10892 user variables not auto cast for comparisons
# Check that we don't get illegal mix of collations
#
set @user123="non-existent";
select * from mysql.db where user=@user123;
# End of 4.1 tests
......@@ -455,14 +455,18 @@ bool DTCollation::aggregate(DTCollation &dt, uint flags)
; // Do nothing
}
else if ((flags & MY_COLL_ALLOW_SUPERSET_CONV) &&
derivation < dt.derivation &&
collation->state & MY_CS_UNICODE)
collation->state & MY_CS_UNICODE &&
(derivation < dt.derivation ||
(derivation == dt.derivation &&
!(dt.collation->state & MY_CS_UNICODE))))
{
// Do nothing
}
else if ((flags & MY_COLL_ALLOW_SUPERSET_CONV) &&
dt.derivation < derivation &&
dt.collation->state & MY_CS_UNICODE)
dt.collation->state & MY_CS_UNICODE &&
(dt.derivation < derivation ||
(dt.derivation == derivation &&
!(collation->state & MY_CS_UNICODE))))
{
set(dt);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment