Commit 9b79e4d9 authored by mkindahl@dl145h.mysql.com's avatar mkindahl@dl145h.mysql.com

Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.1

into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
parents 5746d879 43f06a05
...@@ -3870,14 +3870,6 @@ sub mysqld_arguments ($$$$) { ...@@ -3870,14 +3870,6 @@ sub mysqld_arguments ($$$$) {
mtr_add_arg($args, "%s--user=root"); mtr_add_arg($args, "%s--user=root");
} }
# When mysqld is run by a root user(euid is 0), it will fail
# to start unless we specify what user to run as, see BUG#30630
my $euid= $>;
if (!$glob_win32 and $euid == 0 and
(grep(/^--user/, @$extra_opt, @opt_extra_mysqld_opt)) == 0) {
mtr_add_arg($args, "%s--user=root", $prefix);
}
if ( $opt_valgrind_mysqld ) if ( $opt_valgrind_mysqld )
{ {
mtr_add_arg($args, "%s--skip-safemalloc", $prefix); mtr_add_arg($args, "%s--skip-safemalloc", $prefix);
......
...@@ -33,7 +33,10 @@ Relay_log_info::Relay_log_info() ...@@ -33,7 +33,10 @@ Relay_log_info::Relay_log_info()
:Slave_reporting_capability("SQL"), :Slave_reporting_capability("SQL"),
no_storage(FALSE), replicate_same_server_id(::replicate_same_server_id), no_storage(FALSE), replicate_same_server_id(::replicate_same_server_id),
info_fd(-1), cur_log_fd(-1), save_temporary_tables(0), info_fd(-1), cur_log_fd(-1), save_temporary_tables(0),
group_relay_log_pos(0), group_relay_log_pos(0), event_relay_log_pos(0),
#if HAVE_purify
is_fake(FALSE),
#endif
cur_log_old_open_count(0), group_master_log_pos(0), log_space_total(0), cur_log_old_open_count(0), group_master_log_pos(0), log_space_total(0),
ignore_log_space_limit(0), last_master_timestamp(0), slave_skip_counter(0), ignore_log_space_limit(0), last_master_timestamp(0), slave_skip_counter(0),
abort_pos_wait(0), slave_run_id(0), sql_thd(0), abort_pos_wait(0), slave_run_id(0), sql_thd(0),
......
...@@ -154,6 +154,10 @@ class Relay_log_info : public Slave_reporting_capability ...@@ -154,6 +154,10 @@ class Relay_log_info : public Slave_reporting_capability
ulonglong event_relay_log_pos; ulonglong event_relay_log_pos;
ulonglong future_event_relay_log_pos; ulonglong future_event_relay_log_pos;
#ifdef HAVE_purify
bool is_fake; /* Mark that this is a fake relay log info structure */
#endif
/* /*
Original log name and position of the group we're currently executing Original log name and position of the group we're currently executing
(whose coordinates are group_relay_log_name/pos in the relay log) (whose coordinates are group_relay_log_name/pos in the relay log)
......
...@@ -1893,6 +1893,10 @@ int apply_event_and_update_pos(Log_event* ev, THD* thd, Relay_log_info* rli, ...@@ -1893,6 +1893,10 @@ int apply_event_and_update_pos(Log_event* ev, THD* thd, Relay_log_info* rli,
if (exec_res == 0) if (exec_res == 0)
{ {
int error= ev->update_pos(rli); int error= ev->update_pos(rli);
#ifdef HAVE_purify
if (!rli->is_fake)
#endif
{
char buf[22]; char buf[22];
DBUG_PRINT("info", ("update_pos error = %d", error)); DBUG_PRINT("info", ("update_pos error = %d", error));
DBUG_PRINT("info", ("group %s %s", DBUG_PRINT("info", ("group %s %s",
...@@ -1901,6 +1905,7 @@ int apply_event_and_update_pos(Log_event* ev, THD* thd, Relay_log_info* rli, ...@@ -1901,6 +1905,7 @@ int apply_event_and_update_pos(Log_event* ev, THD* thd, Relay_log_info* rli,
DBUG_PRINT("info", ("event %s %s", DBUG_PRINT("info", ("event %s %s",
llstr(rli->event_relay_log_pos, buf), llstr(rli->event_relay_log_pos, buf),
rli->event_relay_log_name)); rli->event_relay_log_name));
}
/* /*
The update should not fail, so print an error message and The update should not fail, so print an error message and
return an error code. return an error code.
...@@ -1910,6 +1915,7 @@ int apply_event_and_update_pos(Log_event* ev, THD* thd, Relay_log_info* rli, ...@@ -1910,6 +1915,7 @@ int apply_event_and_update_pos(Log_event* ev, THD* thd, Relay_log_info* rli,
*/ */
if (error) if (error)
{ {
char buf[22];
rli->report(ERROR_LEVEL, ER_UNKNOWN_ERROR, rli->report(ERROR_LEVEL, ER_UNKNOWN_ERROR,
"It was not possible to update the positions" "It was not possible to update the positions"
" of the relay log information: the slave may" " of the relay log information: the slave may"
......
...@@ -56,6 +56,9 @@ void mysql_client_binlog_statement(THD* thd) ...@@ -56,6 +56,9 @@ void mysql_client_binlog_statement(THD* thd)
if (!thd->rli_fake) if (!thd->rli_fake)
{ {
thd->rli_fake= new Relay_log_info; thd->rli_fake= new Relay_log_info;
#ifdef HAVE_purify
thd->rli_fake->is_fake= TRUE;
#endif
have_fd_event= FALSE; have_fd_event= FALSE;
} }
if (thd->rli_fake && !thd->rli_fake->relay_log.description_event_for_exec) if (thd->rli_fake && !thd->rli_fake->relay_log.description_event_for_exec)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment