diff options
author | unknown <monty@mashka.mysql.fi> | 2002-09-11 06:40:08 +0300 |
---|---|---|
committer | unknown <monty@mashka.mysql.fi> | 2002-09-11 06:40:08 +0300 |
commit | 8f232cb75f0dce72142e2b584f2cdac4a1de517d (patch) | |
tree | 6ef035adfec09ec1e444dd169712750e2de1efeb /sql/repl_failsafe.cc | |
parent | d99cab040c90913cc5186702166d3b91f58ef42a (diff) | |
download | mariadb-git-8f232cb75f0dce72142e2b584f2cdac4a1de517d.tar.gz |
Portability fixes.
Improve mysql-test to be more robust.
Fix that GRANT doesn't delete SSL options
Change innobase_flush_log_at_trx_commit to uint.
Don't rotate logs if we read a rotate log entry from the master.
Docs/manual.texi:
Changelog
client/mysqlbinlog.cc:
Handle empty binlogfiles gracefully
client/mysqltest.c:
Do a sleep after 'sync_with_master'
Cleaned up sleep() handling.
Free all memory on exit
configure.in:
Fix for Mac OS 10.2
include/my_sys.h:
Added my_strdup_with_length()
innobase/btr/btr0cur.c:
Fixed wrong printf()
libmysql/libmysql.c:
Added DBUG_PRINT statements.
Assume that mysql_...send() functions has correct query length.
mysql-test/mysql-test-run.sh:
Properly remove log files before starting new tests.
mysql-test/r/grant.result:
Update for new test results
mysql-test/r/innodb.result:
Update for new test results
mysql-test/r/myisam.result:
Update for new test results
mysql-test/r/rpl_log.result:
Update for new test results
mysql-test/r/rpl_rotate_logs.result:
Update for new test results
mysql-test/r/variables.result:
Update for new test results
mysql-test/t/grant.test:
Test that GRANT doesn't delete SSL options
mysql-test/t/myisam.test:
Test long key usage
mysql-test/t/rpl_log.test:
Disable 'show new master'
mysql-test/t/rpl_mystery22.test:
Longer sleep for more safety.
mysql-test/t/rpl_rotate_logs.test:
More comments
mysys/my_malloc.c:
Added my_strdup_with_length()
mysys/safemalloc.c:
Added my_strdup_with_length()
mysys/thr_alarm.c:
Fix of alarms for windows.
sql/ha_innodb.cc:
Change innobase_flush_log_at_trx_commit to uint
mysql-test/r/rpl_redirect.result:
Updated test results
mysql-test/t/rpl_redirect.test:
Added more tests to improve code coverage.
sql/ha_innodb.h:
Change innobase_flush_log_at_trx_commit to uint
sql/item_func.cc:
Return GLOBAL and SESSION as part of column names
sql/log.cc:
Only write STOP events when server goes down.
sql/log_event.cc:
Don't rotate logs if we read a rotate log entry from the master.
sql/log_event.h:
Change ident_len to uint (more efficient)
sql/mysqld.cc:
Change innobase_flush_log_at_trx_commit to uint
sql/net_serv.cc:
More debug output
sql/repl_failsafe.cc:
More DEBUG
Search until we find next position in binary log (and not only =)
sql/slave.cc:
More DBUG & comments
Don't rotate the binary log on master flush logs
sql/slave.h:
indentation change
sql/sql_acl.cc:
Test that GRANT doesn't delete SSL options
sql/sql_parse.cc:
Disable show_new_master.
sql/sql_repl.cc:
Chamger show_binlog_events() to use my_error()
sql/sql_table.cc:
Fixed check for too long keys in MyISAM
sql/sql_udf.cc:
Fix udf handling
Diffstat (limited to 'sql/repl_failsafe.cc')
-rw-r--r-- | sql/repl_failsafe.cc | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/sql/repl_failsafe.cc b/sql/repl_failsafe.cc index 232c3de2570..81627dceb0e 100644 --- a/sql/repl_failsafe.cc +++ b/sql/repl_failsafe.cc @@ -236,7 +236,7 @@ static int find_target_pos(LEX_MASTER_INFO *mi, IO_CACHE *log, char *errmsg) return 1; } - if (ev->log_pos == log_pos && ev->server_id == target_server_id) + if (ev->log_pos >= log_pos && ev->server_id == target_server_id) { delete ev; mi->pos = my_b_tell(log); @@ -261,23 +261,24 @@ int translate_master(THD* thd, LEX_MASTER_INFO* mi, char* errmsg) int error = 1; int cmp_res; LINT_INIT(cmp_res); + DBUG_ENTER("translate_master"); if (!mysql_bin_log.is_open()) { strmov(errmsg,"Binary log is not open"); - return 1; + DBUG_RETURN(1); } if (!server_id_supplied) { strmov(errmsg, "Misconfigured master - server id was not set"); - return 1; + DBUG_RETURN(1); } if (mysql_bin_log.find_log_pos(&linfo, NullS, 1)) { strmov(errmsg,"Could not find first log"); - return 1; + DBUG_RETURN(1); } thd->current_linfo = &linfo; @@ -366,7 +367,7 @@ err: if (last_file >= 0 && last_file != file) (void) my_close(last_file, MYF(MY_WME)); - return error; + DBUG_RETURN(error); } @@ -423,12 +424,9 @@ int show_new_master(THD* thd) if (translate_master(thd, lex_mi, errmsg)) { if (errmsg[0]) - net_printf(&thd->net, ER_ERROR_WHEN_EXECUTING_COMMAND, - "SHOW NEW MASTER", errmsg); - else - send_error(&thd->net, 0); - - DBUG_RETURN(1); + my_error(ER_ERROR_WHEN_EXECUTING_COMMAND, MYF(0), + "SHOW NEW MASTER", errmsg); + DBUG_RETURN(-1); } else { |