diff options
author | Luis Soares <luis.soares@sun.com> | 2009-11-01 23:13:11 +0000 |
---|---|---|
committer | Luis Soares <luis.soares@sun.com> | 2009-11-01 23:13:11 +0000 |
commit | 34982004402fabf6d4d5fd39df1c7ad207fde74a (patch) | |
tree | bd5dd194e776b9de2507c0b9b21f46cfcb0a6207 /storage/innodb_plugin | |
parent | 612a8ccb2c9667fb57e92a7af5ede7cdf76fb884 (diff) | |
parent | 5e04d4695ba8dfef7945882923b977df554be2e2 (diff) | |
download | mariadb-git-34982004402fabf6d4d5fd39df1c7ad207fde74a.tar.gz |
BUG#42829: manually merged approved bzr bundle from bug report.
Conflicts
=========
Text conflict in sql/sql_class.cc
1 conflicts encountered.
Diffstat (limited to 'storage/innodb_plugin')
-rw-r--r-- | storage/innodb_plugin/handler/ha_innodb.cc | 5 | ||||
-rw-r--r-- | storage/innodb_plugin/handler/ha_innodb.h | 7 |
2 files changed, 10 insertions, 2 deletions
diff --git a/storage/innodb_plugin/handler/ha_innodb.cc b/storage/innodb_plugin/handler/ha_innodb.cc index 8ac804ca9b6..ebf7afd5364 100644 --- a/storage/innodb_plugin/handler/ha_innodb.cc +++ b/storage/innodb_plugin/handler/ha_innodb.cc @@ -7891,8 +7891,9 @@ ha_innobase::external_lock( { ulong const binlog_format= thd_binlog_format(thd); ulong const tx_isolation = thd_tx_isolation(ha_thd()); - if (tx_isolation <= ISO_READ_COMMITTED && - binlog_format == BINLOG_FORMAT_STMT) + if (tx_isolation <= ISO_READ_COMMITTED + && binlog_format == BINLOG_FORMAT_STMT + && thd_binlog_filter_ok(thd)) { char buf[256]; my_snprintf(buf, sizeof(buf), diff --git a/storage/innodb_plugin/handler/ha_innodb.h b/storage/innodb_plugin/handler/ha_innodb.h index cc98003f8ff..9560fbdaa5e 100644 --- a/storage/innodb_plugin/handler/ha_innodb.h +++ b/storage/innodb_plugin/handler/ha_innodb.h @@ -257,6 +257,13 @@ int thd_binlog_format(const MYSQL_THD thd); @param all TRUE <=> rollback main transaction. */ void thd_mark_transaction_to_rollback(MYSQL_THD thd, bool all); + +/** + Check if binary logging is filtered for thread's current db. + @param thd Thread handle + @retval 1 the query is not filtered, 0 otherwise. +*/ +bool thd_binlog_filter_ok(const MYSQL_THD thd); } typedef struct trx_struct trx_t; |