summaryrefslogtreecommitdiff
path: root/sql/log_event.cc
diff options
context:
space:
mode:
authorHe Zhenxing <zhenxing.he@sun.com>2010-01-24 15:03:23 +0800
committerHe Zhenxing <zhenxing.he@sun.com>2010-01-24 15:03:23 +0800
commit2b16517522afad76bc94b07bdaa8af64091e713b (patch)
tree30ea0d6bf62fef90f4f1499d15e388cb43241707 /sql/log_event.cc
parent16471fecc7084f2eb56c459ff209bf2491ff327d (diff)
downloadmariadb-git-2b16517522afad76bc94b07bdaa8af64091e713b.tar.gz
Backport Bug#37148 to 5.1
Diffstat (limited to 'sql/log_event.cc')
-rw-r--r--sql/log_event.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/sql/log_event.cc b/sql/log_event.cc
index 6b21087b6aa..5219eae6600 100644
--- a/sql/log_event.cc
+++ b/sql/log_event.cc
@@ -5864,7 +5864,7 @@ Slave_log_event::Slave_log_event(const char* buf, uint event_len)
int Slave_log_event::do_apply_event(Relay_log_info const *rli)
{
if (mysql_bin_log.is_open())
- mysql_bin_log.write(this);
+ return mysql_bin_log.write(this);
return 0;
}
#endif /* !MYSQL_CLIENT */
@@ -7611,7 +7611,7 @@ static int rows_event_stmt_cleanup(Relay_log_info const *rli, THD * thd)
(assume the last master's transaction is ignored by the slave because of
replicate-ignore rules).
*/
- thd->binlog_flush_pending_rows_event(true);
+ error= thd->binlog_flush_pending_rows_event(true);
/*
If this event is not in a transaction, the call below will, if some
@@ -7622,7 +7622,7 @@ static int rows_event_stmt_cleanup(Relay_log_info const *rli, THD * thd)
are involved, commit the transaction and flush the pending event to the
binlog.
*/
- error= ha_autocommit_or_rollback(thd, 0);
+ error|= ha_autocommit_or_rollback(thd, error);
/*
Now what if this is not a transactional engine? we still need to