summaryrefslogtreecommitdiff
path: root/sql/sql_repl.cc
diff options
context:
space:
mode:
authorAlexander Nozdrin <alik@sun.com>2010-02-05 15:02:03 +0300
committerAlexander Nozdrin <alik@sun.com>2010-02-05 15:02:03 +0300
commit44c3e5fc4562e2f893a1236f51ed84d9dbd8303d (patch)
tree50d92a8ffd84bced55ec7da3984e5c7ab3dc1560 /sql/sql_repl.cc
parentfce7472225ee96e1970d8978f89525bbc6a48624 (diff)
parent1a46ff873e282e7b0e00e5d7ed2d8b082f56d60e (diff)
downloadmariadb-git-44c3e5fc4562e2f893a1236f51ed84d9dbd8303d.tar.gz
Auto-merge from mysql-trunk.
Diffstat (limited to 'sql/sql_repl.cc')
-rw-r--r--sql/sql_repl.cc22
1 files changed, 14 insertions, 8 deletions
diff --git a/sql/sql_repl.cc b/sql/sql_repl.cc
index d28a336e5d2..6d1b93ea9ea 100644
--- a/sql/sql_repl.cc
+++ b/sql/sql_repl.cc
@@ -923,11 +923,14 @@ impossible position";
thd_proc_info(thd, "Finished reading one binlog; switching to next binlog");
switch (mysql_bin_log.find_next_log(&linfo, 1)) {
- case LOG_INFO_EOF:
- loop_breaker = (flags & BINLOG_DUMP_NON_BLOCK);
- break;
case 0:
break;
+ case LOG_INFO_EOF:
+ if (mysql_bin_log.is_active(log_file_name))
+ {
+ loop_breaker = (flags & BINLOG_DUMP_NON_BLOCK);
+ break;
+ }
default:
errmsg = "could not find next log";
my_errno= ER_MASTER_FATAL_ERROR_READING_BINLOG;
@@ -1219,8 +1222,8 @@ int reset_slave(THD *thd, Master_info* mi)
MY_STAT stat_area;
char fname[FN_REFLEN];
int thread_mask= 0, error= 0;
- uint sql_errno=0;
- const char* errmsg=0;
+ uint sql_errno=ER_UNKNOWN_ERROR;
+ const char* errmsg= "Unknown error occured while reseting slave";
DBUG_ENTER("reset_slave");
lock_slave_threads(mi);
@@ -1960,7 +1963,8 @@ err:
replication events along LOAD DATA processing.
@param file pointer to io-cache
- @return 0
+ @retval 0 success
+ @retval 1 failure
*/
int log_loaded_block(IO_CACHE* file)
{
@@ -1987,7 +1991,8 @@ int log_loaded_block(IO_CACHE* file)
Append_block_log_event a(lf_info->thd, lf_info->thd->db, buffer,
min(block_len, max_event_size),
lf_info->log_delayed);
- mysql_bin_log.write(&a);
+ if (mysql_bin_log.write(&a))
+ DBUG_RETURN(1);
}
else
{
@@ -1995,7 +2000,8 @@ int log_loaded_block(IO_CACHE* file)
buffer,
min(block_len, max_event_size),
lf_info->log_delayed);
- mysql_bin_log.write(&b);
+ if (mysql_bin_log.write(&b))
+ DBUG_RETURN(1);
lf_info->wrote_create_file= 1;
DBUG_SYNC_POINT("debug_lock.created_file_event",10);
}