summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/ha_innobase.cc24
1 files changed, 10 insertions, 14 deletions
diff --git a/sql/ha_innobase.cc b/sql/ha_innobase.cc
index 0e712f42df7..761d74f49b0 100644
--- a/sql/ha_innobase.cc
+++ b/sql/ha_innobase.cc
@@ -587,6 +587,16 @@ innobase_commit_low(
/*================*/
trx_t* trx) /* in: transaction handle */
{
+ if (current_thd->slave_thread) {
+
+ /* Update the replication position info inside InnoDB */
+
+ trx->mysql_master_log_file_name = glob_mi.log_file_name;
+ trx->mysql_master_log_pos = (ib_longlong)
+ (glob_mi.pos + glob_mi.event_len
+ + glob_mi.pending);
+ }
+
trx_commit_for_mysql(trx);
}
@@ -612,20 +622,6 @@ innobase_commit(
trx = check_trx_exists(thd);
if (trx_handle != (void*)&innodb_dummy_stmt_trx_handle) {
- if (thd->slave_thread) {
-
- /* Update the replication position info inside
- InnoDB. Note that we cannot presently do this for
- CREATE TABLE etc. because MySQL does not tell us the
- thd associated with those operations! */
-
- trx->mysql_master_log_file_name =
- glob_mi.log_file_name;
- trx->mysql_master_log_pos = (ib_longlong)
- (glob_mi.pos + glob_mi.event_len
- + glob_mi.pending);
- }
-
innobase_commit_low(trx);
}