diff options
author | unknown <sasha@mysql.sashanet.com> | 2001-01-24 09:15:34 -0700 |
---|---|---|
committer | unknown <sasha@mysql.sashanet.com> | 2001-01-24 09:15:34 -0700 |
commit | 262a9e41e164b1ddbb1763622bf5617d3685f74a (patch) | |
tree | 389b1cade6be60d713c322e9f923adb3578a60d6 /mysql-test | |
parent | 32250dfcedc1aad01da5ba7658fed1398737bedd (diff) | |
download | mariadb-git-262a9e41e164b1ddbb1763622bf5617d3685f74a.tar.gz |
Added last_errno and last_error to show slave status
slave will skip the first SQL_SLAVE_SKIP_COUNTER events on start -
this is needed to recover from broken replication when the next log
event(s) should just be skipped.
Rotate binlogs when max_binlog_size is reached
include/my_sys.h:
added my_snprintf()
include/mysqld_error.h:
more error messages
mysql-test/r/rpl000014.result:
updated results for new SHOW SLAVE STATUS format
mysql-test/r/rpl000015.result:
update for SHOW SLAVE STATUS
mysql-test/r/rpl000016.result:
update for additions to the test
mysql-test/t/rpl000016.test:
test max_binlog_size and slave_skip_counter
mysys/my_vsnprintf.c:
added my_snprintf()
sql/gen_lex_hash.cc:
old values could not do it
sql/lex.h:
updates for SQL_SLAVE_SKIP_COUNTER
sql/log.cc:
rotate binlogs when max_binlog_size is reached
sql/mysqld.cc:
added max_binlog_size
sql/share/czech/errmsg.txt:
new errors
sql/share/danish/errmsg.txt:
new errors
sql/share/dutch/errmsg.txt:
new errors
sql/share/english/errmsg.txt:
new errors
sql/share/estonian/errmsg.txt:
new errors
sql/share/french/errmsg.txt:
new errors
sql/share/german/errmsg.txt:
new errors
sql/share/greek/errmsg.txt:
new errors
sql/share/hungarian/errmsg.txt:
new errors
sql/share/italian/errmsg.txt:
new errors
sql/share/japanese/errmsg.txt:
new errors
sql/share/korean/errmsg.txt:
new errors
sql/share/norwegian-ny/errmsg.txt:
new errors
sql/share/norwegian/errmsg.txt:
new errors
sql/share/polish/errmsg.txt:
new errors
sql/share/portuguese/errmsg.txt:
new errors
sql/share/romanian/errmsg.txt:
new errors
sql/share/russian/errmsg.txt:
new errors, translated untranslated messages
sql/share/slovak/errmsg.txt:
new errors
sql/share/spanish/errmsg.txt:
new errors
sql/share/swedish/errmsg.txt:
new errors
sql/slave.cc:
updates for slave_skip_counter and extension to show slave status
sql/slave.h:
slave_skip_counter
sql/sql_repl.cc:
use error messages from errmsg.txt
sql/sql_yacc.yy:
skip_slave_counter
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/r/rpl000014.result | 16 | ||||
-rw-r--r-- | mysql-test/r/rpl000015.result | 16 | ||||
-rw-r--r-- | mysql-test/r/rpl000016.result | 19 | ||||
-rw-r--r-- | mysql-test/t/rpl000016-master.opt | 1 | ||||
-rw-r--r-- | mysql-test/t/rpl000016.test | 42 |
5 files changed, 70 insertions, 24 deletions
diff --git a/mysql-test/r/rpl000014.result b/mysql-test/r/rpl000014.result index 9e45b9c10a3..d2cb8ee5436 100644 --- a/mysql-test/r/rpl000014.result +++ b/mysql-test/r/rpl000014.result @@ -1,13 +1,13 @@ File Position Binlog_do_db Binlog_ignore_db master-bin.001 73 -Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db -127.0.0.1 root 9306 1 master-bin.001 73 Yes -Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db -127.0.0.1 root 9306 1 master-bin.001 73 No -Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db -127.0.0.1 root 9306 1 master-bin.001 73 Yes -Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db -127.0.0.1 root 9306 1 master-bin.001 173 Yes +Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter +127.0.0.1 root 9306 1 master-bin.001 73 Yes 0 0 +Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter +127.0.0.1 root 9306 1 master-bin.001 73 No 0 0 +Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter +127.0.0.1 root 9306 1 master-bin.001 73 Yes 0 0 +Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter +127.0.0.1 root 9306 1 master-bin.001 173 Yes 0 0 File Position Binlog_do_db Binlog_ignore_db master-bin.001 73 n diff --git a/mysql-test/r/rpl000015.result b/mysql-test/r/rpl000015.result index 59a1a21be17..5899d76c82f 100644 --- a/mysql-test/r/rpl000015.result +++ b/mysql-test/r/rpl000015.result @@ -1,13 +1,13 @@ File Position Binlog_do_db Binlog_ignore_db master-bin.001 73 -Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db - 0 0 0 No -Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db -127.0.0.1 test 3306 60 4 No -Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db -127.0.0.1 root 9306 60 4 No -Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db -127.0.0.1 root 9306 60 master-bin.001 73 Yes +Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter + 0 0 0 No 0 0 +Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter +127.0.0.1 test 3306 60 4 No 0 0 +Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter +127.0.0.1 root 9306 60 4 No 0 0 +Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter +127.0.0.1 root 9306 60 master-bin.001 73 Yes 0 0 n 10 45 diff --git a/mysql-test/r/rpl000016.result b/mysql-test/r/rpl000016.result index ae5b83a4a85..96e36475c92 100644 --- a/mysql-test/r/rpl000016.result +++ b/mysql-test/r/rpl000016.result @@ -1,5 +1,5 @@ -Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db -127.0.0.1 root 9306 60 master-bin.001 216 Yes +Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter +127.0.0.1 root 9306 60 master-bin.001 216 Yes 0 0 s Could not break slave Tried hard @@ -7,12 +7,21 @@ Log_name master-bin.001 master-bin.002 master-bin.003 +Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter +127.0.0.1 root 9306 60 master-bin.003 129 Yes 1062 error 'Duplicate entry '1234' for key 1' on query 'insert into t2 values(1234)' 0 Log_name master-bin.003 -Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db -127.0.0.1 root 9306 60 master-bin.003 128 Yes +Master_Host Master_User Master_Port Connect_retry Log_File Pos Slave_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter +127.0.0.1 root 9306 60 master-bin.003 184 Yes 0 0 m 34 +65 67 123 -65 +1234 +Log_name +master-bin.003 +master-bin.004 +master-bin.005 +count(*) +100 diff --git a/mysql-test/t/rpl000016-master.opt b/mysql-test/t/rpl000016-master.opt new file mode 100644 index 00000000000..f27601e0d7d --- /dev/null +++ b/mysql-test/t/rpl000016-master.opt @@ -0,0 +1 @@ +-O max_binlog_size=2048 diff --git a/mysql-test/t/rpl000016.test b/mysql-test/t/rpl000016.test index 44a011cff27..e0e035a4ae0 100644 --- a/mysql-test/t/rpl000016.test +++ b/mysql-test/t/rpl000016.test @@ -26,14 +26,33 @@ select * from t1; connection master; flush logs; drop table if exists t2; -create table t2(m int); +create table t2(m int not null primary key); insert into t2 values (34),(67),(123); +save_master_pos; flush logs; show master logs; +#now lets make some duplicate key mess and see if we can recover from it +#first insert a value on the slave +connection slave; +sync_with_master; +insert into t2 values(1234); +#same value on the master +connection master; +save_master_pos; +insert into t2 values(1234); +connection slave; +sync_with_master; +#the slave may have already stopped, so we ignore the error +!slave stop; +#restart slave skipping one event +set sql_slave_skip_counter=1; +slave start; +connection master; save_master_pos; #let slave catch up connection slave; sync_with_master; +show slave status; connection master; purge master logs to 'master-bin.003'; show master logs; @@ -43,6 +62,23 @@ connection slave; sync_with_master; show slave status; select * from t2; -drop table if exists t1,t2; connection master; -drop table if exists t1,t2; +let $1=100; +drop table if exists t3; +create table t3 (n int); +while ($1) +{ + insert into t3 values(4); + dec $1; +} +show master logs; +save_master_pos; +connection slave; +sync_with_master; +select count(*) from t3 where n = 4; +#clean up +connection master; +drop table if exists t1,t2,t3; +save_master_pos; +connection slave; +sync_with_master; |