summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mysql-test/r/ndb_charset.result20
-rw-r--r--mysql-test/t/ndb_charset.test15
-rw-r--r--sql/sql_acl.cc2
-rw-r--r--sql/sql_parse.cc2
4 files changed, 12 insertions, 27 deletions
diff --git a/mysql-test/r/ndb_charset.result b/mysql-test/r/ndb_charset.result
index b1f8190f0ca..32843fd7731 100644
--- a/mysql-test/r/ndb_charset.result
+++ b/mysql-test/r/ndb_charset.result
@@ -306,21 +306,11 @@ count(*)
drop table t1;
create table t1 (
a char(10) primary key
-) engine=ndbcluster default charset=latin1;
-insert into t1 values ('aaabb');
-select * from t1;
-a
-aaabb
-replace into t1 set a = 'AAABB';
-select * from t1;
-a
-AAABB
-replace into t1 set a = 'aAaBb';
-select * from t1;
-a
-aAaBb
-replace into t1 set a = 'aaabb';
+) engine=ndb;
+insert into t1 values ('jonas % ');
+replace into t1 values ('jonas % ');
+replace into t1 values ('jonas % ');
select * from t1;
a
-aaabb
+jonas %
drop table t1;
diff --git a/mysql-test/t/ndb_charset.test b/mysql-test/t/ndb_charset.test
index 5941e5750db..fb43e1831f3 100644
--- a/mysql-test/t/ndb_charset.test
+++ b/mysql-test/t/ndb_charset.test
@@ -237,18 +237,13 @@ drop table t1;
#select a,b,length(a),length(b) from t1 where a='c' and b='c';
#drop table t1;
-# bug#14007
+# bug
create table t1 (
a char(10) primary key
-) engine=ndbcluster default charset=latin1;
-
-insert into t1 values ('aaabb');
-select * from t1;
-replace into t1 set a = 'AAABB';
-select * from t1;
-replace into t1 set a = 'aAaBb';
-select * from t1;
-replace into t1 set a = 'aaabb';
+) engine=ndb;
+insert into t1 values ('jonas % ');
+replace into t1 values ('jonas % ');
+replace into t1 values ('jonas % ');
select * from t1;
drop table t1;
diff --git a/sql/sql_acl.cc b/sql/sql_acl.cc
index 8fcc28c0588..a84889858db 100644
--- a/sql/sql_acl.cc
+++ b/sql/sql_acl.cc
@@ -1427,7 +1427,7 @@ bool change_password(THD *thd, const char *host, const char *user,
*/
tables.updating= 1;
/* Thanks to bzero, tables.next==0 */
- if (!thd->spcont || rpl_filter->tables_ok(0, &tables))
+ if (!(thd->spcont || rpl_filter->tables_ok(0, &tables)))
DBUG_RETURN(0);
}
#endif
diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc
index 26b9e2d1718..cb2efe43615 100644
--- a/sql/sql_parse.cc
+++ b/sql/sql_parse.cc
@@ -182,7 +182,7 @@ static bool begin_trans(THD *thd)
*/
inline bool all_tables_not_ok(THD *thd, TABLE_LIST *tables)
{
- return rpl_filter->is_on() && tables &&
+ return rpl_filter->is_on() && tables && !thd->spcont &&
!rpl_filter->tables_ok(thd->db, tables);
}
#endif