rpl_error_ignored_table.test
上传用户:romrleung
上传日期:2022-05-23
资源大小:18897k
文件大小:2k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. # Test for 
  2. # Bug #797: If a query is ignored on slave (replicate-ignore-table) the slave
  3. # still checks that it has the same error as on the master.
  4. source include/master-slave.inc;
  5. connection master;
  6. create table t1 (a int primary key);
  7. # generate an error that goes to the binlog
  8. --error 1062
  9. insert into t1 values (1),(1);
  10. save_master_pos;
  11. connection slave;
  12. # as the t1 table is ignored on the slave, the slave should be able to sync
  13. sync_with_master;
  14. # The port number is different when doing the release build with
  15. # Do-compile, hence we have to replace the port number here accordingly
  16. --replace_result $MASTER_MYPORT MASTER_PORT
  17. --replace_column 1 # 33 #
  18. show slave status;
  19. # check that the table has been ignored, because otherwise the test is nonsense
  20. show tables like 't1';
  21. connection master;
  22. drop table t1;
  23. save_master_pos;
  24. connection slave;
  25. sync_with_master;
  26. # Now test that even critical errors (connection killed)
  27. # are ignored if rules allow it.
  28. # The "kill" idea was copied from rpl000001.test.
  29. connection master1;
  30. select get_lock('crash_lock%20C', 10);
  31. connection master;
  32. create table t2 (a int primary key);
  33. insert into t2 values(1);
  34. create table t3 (id int);
  35. insert into t3 values(connection_id());
  36. send update t2 set a = a + 1 + get_lock('crash_lock%20C', 10);
  37. connection master1;
  38. real_sleep 2;
  39. select (@id := id) - id from t3;
  40. kill @id;
  41. drop table t2,t3;
  42. connection master;
  43. --error 0,1053
  44. reap;
  45. connection master1;
  46. show binlog events from 79;
  47. save_master_pos;
  48. connection slave;
  49. # SQL slave thread should not have stopped (because table of the killed
  50. # query is in the ignore list).
  51. sync_with_master;
  52. # End of 4.1 tests