Description:
Tomas,
Simular to the replication_sample.txt
I have two clusters. One is a replication master, the other a replication slave. On the master I have two mysqld processes. (A & A1) and on the slave I have one mysqld process (B). I have the slave B set to pull from Master A (A->B).
All table creates, drops, and data inserts done on A is seen on A1 once show tables is done. and all is replicated to B.
If you create a table on A, and insert data from A1, B gets all inserted or updated data.
Problem:
1) If you do a create table on A1, and a show tables on A, A sees it, but B never gets it.
2) If you create a table on A and drop it with A1, A drops it, but B does not get the drop and so the table still exists on B.
3) If you create a table on A1 and drop it on A, The Slave process errors out because it can not drop a table it knows nothing about.
A1 Information:
mysql> Show master Status\G;
*************************** 1. row ***************************
File: master1.000001
Position: 9612
Binlog_Do_DB:
Binlog_Ignore_DB:
1 row in set (0.00 sec)
mysql> show binlog events\G;
*************************** 1. row ***************************
Log_name: master1.000001
Pos: 4
Event_type: Format_desc
Server_id: 1
End_log_pos: 102
Info: Server ver: 5.1.0-rowrepl_drop1-log, Binlog ver: 4
*************************** 2. row ***************************
Log_name: master1.000001
Pos: 102
Event_type: Table_map
Server_id: 1
End_log_pos: 178
Info:
*************************** 3. row ***************************
Log_name: master1.000001
Pos: 178
Event_type: Write_rows
Server_id: 1
End_log_pos: 320
Info:
*************************** 4. row ***************************
Log_name: master1.000001
Pos: 320
Event_type: Query
Server_id: 1
End_log_pos: 413
Info: create database GOTOSLAVE
*************************** 5. row ***************************
Log_name: master1.000001
Pos: 413
Event_type: Query
Server_id: 1
End_log_pos: 533
Info: use `GOTOSLAVE`; create table t2 (c1 int, PRIMARY KEY (c1))engine=ndb
*************************** 6. row ***************************
Log_name: master1.000001
Pos: 533
Event_type: Query
Server_id: 1
End_log_pos: 597
Info: BEGIN
*************************** 7. row ***************************
Log_name: master1.000001
Pos: 597
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 8. row ***************************
Log_name: master1.000001
Pos: 660
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 9. row ***************************
Log_name: master1.000001
Pos: 700
Event_type: Table_map
Server_id: 1
End_log_pos: 145
Info:
*************************** 10. row ***************************
Log_name: master1.000001
Pos: 742
Event_type: Write_rows
Server_id: 1
End_log_pos: 177
Info:
*************************** 11. row ***************************
Log_name: master1.000001
Pos: 774
Event_type: Query
Server_id: 1
End_log_pos: 839
Info: COMMIT
*************************** 12. row ***************************
Log_name: master1.000001
Pos: 839
Event_type: Query
Server_id: 1
End_log_pos: 903
Info: BEGIN
*************************** 13. row ***************************
Log_name: master1.000001
Pos: 903
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 14. row ***************************
Log_name: master1.000001
Pos: 966
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 15. row ***************************
Log_name: master1.000001
Pos: 1006
Event_type: Table_map
Server_id: 1
End_log_pos: 145
Info:
*************************** 16. row ***************************
Log_name: master1.000001
Pos: 1048
Event_type: Write_rows
Server_id: 1
End_log_pos: 177
Info:
*************************** 17. row ***************************
Log_name: master1.000001
Pos: 1080
Event_type: Query
Server_id: 1
End_log_pos: 1145
Info: COMMIT
*************************** 18. row ***************************
Log_name: master1.000001
Pos: 1145
Event_type: Query
Server_id: 1
End_log_pos: 1209
Info: BEGIN
*************************** 19. row ***************************
Log_name: master1.000001
Pos: 1209
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 20. row ***************************
Log_name: master1.000001
Pos: 1272
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 21. row ***************************
Log_name: master1.000001
Pos: 1312
Event_type: Table_map
Server_id: 1
End_log_pos: 145
Info:
*************************** 22. row ***************************
Log_name: master1.000001
Pos: 1354
Event_type: Write_rows
Server_id: 1
End_log_pos: 177
Info:
*************************** 23. row ***************************
Log_name: master1.000001
Pos: 1386
Event_type: Query
Server_id: 1
End_log_pos: 1451
Info: COMMIT
*************************** 24. row ***************************
Log_name: master1.000001
Pos: 1451
Event_type: Query
Server_id: 1
End_log_pos: 1532
Info: use `GOTOSLAVE`; DROP TABLE t1
*************************** 25. row ***************************
Log_name: master1.000001
Pos: 1532
Event_type: Query
Server_id: 1
End_log_pos: 1615
Info: CREATE DATABAsE BANK
*************************** 26. row ***************************
Log_name: master1.000001
Pos: 1615
Event_type: Query
Server_id: 1
End_log_pos: 1700
Info: CREATE DATABAsE BANK2
*************************** 27. row ***************************
Log_name: master1.000001
Pos: 1700
Event_type: Query
Server_id: 1
End_log_pos: 2262
Info: use `BANK`; CREATE TABLE GL ( TIME BIGINT UNSIGNED NOT NULL,
ACCOUNT_TYPE INT UNSIGNED NOT NULL,
BALANCE INT UNSIGNED NOT NULL,
DEPOSIT_COUNT INT UNSIGNED NOT NULL,
DEPOSIT_SUM INT UNSIGNED NOT NULL,
WITHDRAWAL_COUNT INT UNSIGNED NOT NULL,
WITHDRAWAL_SUM INT UNSIGNED NOT NULL,
PURGED INT UNSIGNED NOT NULL,
PRIMARY KEY USING HASH (TIME,ACCOUNT_TYPE))
ENGINE = NDB
*************************** 28. row ***************************
Log_name: master1.000001
Pos: 2262
Event_type: Query
Server_id: 1
End_log_pos: 2622
Info: use `BANK`; CREATE TABLE ACCOUNT ( ACCOUNT_ID INT UNSIGNED NOT NULL,
OWNER INT UNSIGNED NOT NULL,
BALANCE INT UNSIGNED NOT NULL,
ACCOUNT_TYPE INT UNSIGNED NOT NULL,
PRIMARY KEY USING HASH (ACCOUNT_ID))
ENGINE = NDB
*************************** 29. row ***************************
Log_name: master1.000001
Pos: 2622
Event_type: Query
Server_id: 1
End_log_pos: 3211
Info: use `BANK`; CREATE TABLE TRANSACTION ( TRANSACTION_ID BIGINT UNSIGNED NOT NULL,
ACCOUNT INT UNSIGNED NOT NULL,
ACCOUNT_TYPE INT UNSIGNED NOT NULL,
OTHER_ACCOUNT INT UNSIGNED NOT NULL,
TRANSACTION_TYPE INT UNSIGNED NOT NULL,
TIME BIGINT UNSIGNED NOT NULL,
AMOUNT INT UNSIGNED NOT NULL,
PRIMARY KEY USING HASH (TRANSACTION_ID,ACCOUNT))
ENGINE = NDB
*************************** 30. row ***************************
Log_name: master1.000001
Pos: 3211
Event_type: Query
Server_id: 1
End_log_pos: 3491
Info: use `BANK`; CREATE TABLE SYSTEM_VALUES ( SYSTEM_VALUES_ID INT UNSIGNED NOT NULL,
VALUE BIGINT UNSIGNED NOT NULL,
PRIMARY KEY USING HASH (SYSTEM_VALUES_ID))
ENGINE = NDB
*************************** 31. row ***************************
Log_name: master1.000001
Pos: 3491
Event_type: Query
Server_id: 1
End_log_pos: 3768
Info: use `BANK`; CREATE TABLE ACCOUNT_TYPES ( ACCOUNT_TYPE_ID INT UNSIGNED NOT NULL,
DESCRIPTION CHAR(64) NOT NULL,
PRIMARY KEY USING HASH (ACCOUNT_TYPE_ID))
ENGINE = NDB
*************************** 32. row ***************************
Log_name: master1.000001
Pos: 3768
Event_type: Query
Server_id: 1
End_log_pos: 4358
Info: use `BANK2`; CREATE TABLE TRANSACTION ( TRANSACTION_ID BIGINT UNSIGNED NOT NULL,
ACCOUNT INT UNSIGNED NOT NULL,
ACCOUNT_TYPE INT UNSIGNED NOT NULL,
OTHER_ACCOUNT INT UNSIGNED NOT NULL,
TRANSACTION_TYPE INT UNSIGNED NOT NULL,
TIME BIGINT UNSIGNED NOT NULL,
AMOUNT INT UNSIGNED NOT NULL,
PRIMARY KEY USING HASH (TRANSACTION_ID,ACCOUNT))
ENGINE = NDB
*************************** 33. row ***************************
Log_name: master1.000001
Pos: 4358
Event_type: Query
Server_id: 1
End_log_pos: 4639
Info: use `BANK2`; CREATE TABLE SYSTEM_VALUES ( SYSTEM_VALUES_ID INT UNSIGNED NOT NULL,
VALUE BIGINT UNSIGNED NOT NULL,
PRIMARY KEY USING HASH (SYSTEM_VALUES_ID))
ENGINE = NDB
*************************** 34. row ***************************
Log_name: master1.000001
Pos: 4639
Event_type: Query
Server_id: 1
End_log_pos: 4917
Info: use `BANK2`; CREATE TABLE ACCOUNT_TYPES ( ACCOUNT_TYPE_ID INT UNSIGNED NOT NULL,
DESCRIPTION CHAR(64) NOT NULL,
PRIMARY KEY USING HASH (ACCOUNT_TYPE_ID))
ENGINE = NDB
*************************** 35. row ***************************
Log_name: master1.000001
Pos: 4917
Event_type: Query
Server_id: 1
End_log_pos: 5480
Info: use `BANK2`; CREATE TABLE GL ( TIME BIGINT UNSIGNED NOT NULL,
ACCOUNT_TYPE INT UNSIGNED NOT NULL,
BALANCE INT UNSIGNED NOT NULL,
DEPOSIT_COUNT INT UNSIGNED NOT NULL,
DEPOSIT_SUM INT UNSIGNED NOT NULL,
WITHDRAWAL_COUNT INT UNSIGNED NOT NULL,
WITHDRAWAL_SUM INT UNSIGNED NOT NULL,
PURGED INT UNSIGNED NOT NULL,
PRIMARY KEY USING HASH (TIME,ACCOUNT_TYPE))
ENGINE = NDB
*************************** 36. row ***************************
Log_name: master1.000001
Pos: 5480
Event_type: Query
Server_id: 1
End_log_pos: 5841
Info: use `BANK2`; CREATE TABLE ACCOUNT ( ACCOUNT_ID INT UNSIGNED NOT NULL,
OWNER INT UNSIGNED NOT NULL,
BALANCE INT UNSIGNED NOT NULL,
ACCOUNT_TYPE INT UNSIGNED NOT NULL,
PRIMARY KEY USING HASH (ACCOUNT_ID))
ENGINE = NDB
*************************** 37. row ***************************
Log_name: master1.000001
Pos: 5841
Event_type: Query
Server_id: 1
End_log_pos: 5905
Info: BEGIN
*************************** 38. row ***************************
Log_name: master1.000001
Pos: 5905
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 39. row ***************************
Log_name: master1.000001
Pos: 5968
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 40. row ***************************
Log_name: master1.000001
Pos: 6008
Event_type: Query
Server_id: 1
End_log_pos: 6073
Info: COMMIT
*************************** 41. row ***************************
Log_name: master1.000001
Pos: 6073
Event_type: Query
Server_id: 1
End_log_pos: 6193
Info: use `GOTOSLAVE`; CREATE TABLE t2 (c1 int, PRIMARY KEY (c1))ENGINE=NDB
*************************** 42. row ***************************
Log_name: master1.000001
Pos: 6193
Event_type: Query
Server_id: 1
End_log_pos: 6257
Info: BEGIN
*************************** 43. row ***************************
Log_name: master1.000001
Pos: 6257
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 44. row ***************************
Log_name: master1.000001
Pos: 6320
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 45. row ***************************
Log_name: master1.000001
Pos: 6360
Event_type: Table_map
Server_id: 1
End_log_pos: 145
Info:
*************************** 46. row ***************************
Log_name: master1.000001
Pos: 6402
Event_type: Write_rows
Server_id: 1
End_log_pos: 177
Info:
*************************** 47. row ***************************
Log_name: master1.000001
Pos: 6434
Event_type: Query
Server_id: 1
End_log_pos: 6499
Info: COMMIT
*************************** 48. row ***************************
Log_name: master1.000001
Pos: 6499
Event_type: Query
Server_id: 1
End_log_pos: 6563
Info: BEGIN
*************************** 49. row ***************************
Log_name: master1.000001
Pos: 6563
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 50. row ***************************
Log_name: master1.000001
Pos: 6626
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 51. row ***************************
Log_name: master1.000001
Pos: 6666
Event_type: Table_map
Server_id: 1
End_log_pos: 145
Info:
*************************** 52. row ***************************
Log_name: master1.000001
Pos: 6708
Event_type: Write_rows
Server_id: 1
End_log_pos: 177
Info:
*************************** 53. row ***************************
Log_name: master1.000001
Pos: 6740
Event_type: Query
Server_id: 1
End_log_pos: 6805
Info: COMMIT
*************************** 54. row ***************************
Log_name: master1.000001
Pos: 6805
Event_type: Query
Server_id: 1
End_log_pos: 6869
Info: BEGIN
*************************** 55. row ***************************
Log_name: master1.000001
Pos: 6869
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 56. row ***************************
Log_name: master1.000001
Pos: 6932
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 57. row ***************************
Log_name: master1.000001
Pos: 6972
Event_type: Query
Server_id: 1
End_log_pos: 7037
Info: COMMIT
*************************** 58. row ***************************
Log_name: master1.000001
Pos: 7037
Event_type: Query
Server_id: 1
End_log_pos: 7157
Info: use `GOTOSLAVE`; CREATE TABLE t3 (c1 int, PRIMARY KEY (c1))ENGINE=NDB
*************************** 59. row ***************************
Log_name: master1.000001
Pos: 7157
Event_type: Query
Server_id: 1
End_log_pos: 7221
Info: BEGIN
*************************** 60. row ***************************
Log_name: master1.000001
Pos: 7221
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 61. row ***************************
Log_name: master1.000001
Pos: 7284
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 62. row ***************************
Log_name: master1.000001
Pos: 7324
Event_type: Table_map
Server_id: 1
End_log_pos: 145
Info:
*************************** 63. row ***************************
Log_name: master1.000001
Pos: 7366
Event_type: Write_rows
Server_id: 1
End_log_pos: 177
Info:
*************************** 64. row ***************************
Log_name: master1.000001
Pos: 7398
Event_type: Query
Server_id: 1
End_log_pos: 7463
Info: COMMIT
*************************** 65. row ***************************
Log_name: master1.000001
Pos: 7463
Event_type: Query
Server_id: 1
End_log_pos: 7527
Info: BEGIN
*************************** 66. row ***************************
Log_name: master1.000001
Pos: 7527
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 67. row ***************************
Log_name: master1.000001
Pos: 7590
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 68. row ***************************
Log_name: master1.000001
Pos: 7630
Event_type: Table_map
Server_id: 1
End_log_pos: 145
Info:
*************************** 69. row ***************************
Log_name: master1.000001
Pos: 7672
Event_type: Write_rows
Server_id: 1
End_log_pos: 177
Info:
*************************** 70. row ***************************
Log_name: master1.000001
Pos: 7704
Event_type: Query
Server_id: 1
End_log_pos: 7769
Info: COMMIT
*************************** 71. row ***************************
Log_name: master1.000001
Pos: 7769
Event_type: Query
Server_id: 1
End_log_pos: 7833
Info: BEGIN
*************************** 72. row ***************************
Log_name: master1.000001
Pos: 7833
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 73. row ***************************
Log_name: master1.000001
Pos: 7896
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 74. row ***************************
Log_name: master1.000001
Pos: 7936
Event_type: Table_map
Server_id: 1
End_log_pos: 145
Info:
*************************** 75. row ***************************
Log_name: master1.000001
Pos: 7978
Event_type: Write_rows
Server_id: 1
End_log_pos: 177
Info:
*************************** 76. row ***************************
Log_name: master1.000001
Pos: 8010
Event_type: Query
Server_id: 1
End_log_pos: 8075
Info: COMMIT
*************************** 77. row ***************************
Log_name: master1.000001
Pos: 8075
Event_type: Query
Server_id: 1
End_log_pos: 8139
Info: BEGIN
*************************** 78. row ***************************
Log_name: master1.000001
Pos: 8139
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 79. row ***************************
Log_name: master1.000001
Pos: 8202
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 80. row ***************************
Log_name: master1.000001
Pos: 8242
Event_type: Table_map
Server_id: 1
End_log_pos: 145
Info:
*************************** 81. row ***************************
Log_name: master1.000001
Pos: 8284
Event_type: Write_rows
Server_id: 1
End_log_pos: 177
Info:
*************************** 82. row ***************************
Log_name: master1.000001
Pos: 8316
Event_type: Query
Server_id: 1
End_log_pos: 8381
Info: COMMIT
*************************** 83. row ***************************
Log_name: master1.000001
Pos: 8381
Event_type: Query
Server_id: 1
End_log_pos: 8445
Info: BEGIN
*************************** 84. row ***************************
Log_name: master1.000001
Pos: 8445
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 85. row ***************************
Log_name: master1.000001
Pos: 8508
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 86. row ***************************
Log_name: master1.000001
Pos: 8548
Event_type: Table_map
Server_id: 1
End_log_pos: 145
Info:
*************************** 87. row ***************************
Log_name: master1.000001
Pos: 8590
Event_type: Write_rows
Server_id: 1
End_log_pos: 177
Info:
*************************** 88. row ***************************
Log_name: master1.000001
Pos: 8622
Event_type: Query
Server_id: 1
End_log_pos: 8687
Info: COMMIT
*************************** 89. row ***************************
Log_name: master1.000001
Pos: 8687
Event_type: Query
Server_id: 1
End_log_pos: 8751
Info: BEGIN
*************************** 90. row ***************************
Log_name: master1.000001
Pos: 8751
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 91. row ***************************
Log_name: master1.000001
Pos: 8814
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 92. row ***************************
Log_name: master1.000001
Pos: 8854
Event_type: Table_map
Server_id: 1
End_log_pos: 145
Info:
*************************** 93. row ***************************
Log_name: master1.000001
Pos: 8896
Event_type: Write_rows
Server_id: 1
End_log_pos: 177
Info:
*************************** 94. row ***************************
Log_name: master1.000001
Pos: 8928
Event_type: Query
Server_id: 1
End_log_pos: 8993
Info: COMMIT
*************************** 95. row ***************************
Log_name: master1.000001
Pos: 8993
Event_type: Query
Server_id: 1
End_log_pos: 9057
Info: BEGIN
*************************** 96. row ***************************
Log_name: master1.000001
Pos: 9057
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 97. row ***************************
Log_name: master1.000001
Pos: 9120
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 98. row ***************************
Log_name: master1.000001
Pos: 9160
Event_type: Table_map
Server_id: 1
End_log_pos: 145
Info:
*************************** 99. row ***************************
Log_name: master1.000001
Pos: 9202
Event_type: Write_rows
Server_id: 1
End_log_pos: 177
Info:
*************************** 100. row ***************************
Log_name: master1.000001
Pos: 9234
Event_type: Query
Server_id: 1
End_log_pos: 9299
Info: COMMIT
*************************** 101. row ***************************
Log_name: master1.000001
Pos: 9299
Event_type: Query
Server_id: 1
End_log_pos: 9380
Info: use `GOTOSLAVE`; drop table t4
*************************** 102. row ***************************
Log_name: master1.000001
Pos: 9380
Event_type: Query
Server_id: 1
End_log_pos: 9444
Info: BEGIN
*************************** 103. row ***************************
Log_name: master1.000001
Pos: 9444
Event_type: Table_map
Server_id: 1
End_log_pos: 63
Info:
*************************** 104. row ***************************
Log_name: master1.000001
Pos: 9507
Event_type: Write_rows
Server_id: 1
End_log_pos: 103
Info:
*************************** 105. row ***************************
Log_name: master1.000001
Pos: 9547
Event_type: Query
Server_id: 1
End_log_pos: 9612
Info: COMMIT
105 rows in set (0.00 sec)
mysql> show engine ndb status\G;
*************************** 1. row ***************************
cluster_node_id: 13
connected_host: ndb08
connected_port: 14000
number_of_storage_nodes: 4
latest_epoch: 5788
latest_trans_epoch: 4953
latest_received_binlog_epoch: 5788
latest_handled_binlog_epoch: 5788
latest_applied_binlog_epoch: 4953
mysql> select * from cluster_replication.binlog_index\G;
*************************** 1. row ***************************
Position: 533
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4217
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 2. row ***************************
Position: 839
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4218
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 3. row ***************************
Position: 1145
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4220
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 4. row ***************************
Position: 5841
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4566
inserts: 0
updates: 0
deletes: 0
schemaops: 1
*************************** 5. row ***************************
Position: 6193
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4645
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 6. row ***************************
Position: 6499
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4646
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 7. row ***************************
Position: 6805
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4671
inserts: 0
updates: 0
deletes: 0
schemaops: 1
*************************** 8. row ***************************
Position: 7157
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4744
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 9. row ***************************
Position: 7463
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4745
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 10. row ***************************
Position: 7769
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4763
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 11. row ***************************
Position: 8075
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4764
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 12. row ***************************
Position: 8381
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4877
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 13. row ***************************
Position: 8687
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4911
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 14. row ***************************
Position: 8993
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4930
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 15. row ***************************
Position: 9299
File: /home/ndbdev/jmiller/builds/var/c1/master1.000001
epoch: 4953
inserts: 0
updates: 0
deletes: 0
schemaops: 1
15 rows in set (0.00 sec)
Master A1:
mysql> show master status\G;
*************************** 1. row ***************************
File: master2.000001
Position: 4037
Binlog_Do_DB:
Binlog_Ignore_DB:
1 row in set (0.00 sec)
mysql> show binlog events\G;
*************************** 1. row ***************************
Log_name: master2.000001
Pos: 4
Event_type: Format_desc
Server_id: 2
End_log_pos: 102
Info: Server ver: 5.1.0-rowrepl_drop1-log, Binlog ver: 4
*************************** 2. row ***************************
Log_name: master2.000001
Pos: 102
Event_type: Query
Server_id: 2
End_log_pos: 336
Info: CREATE TABLE IF NOT EXISTS cluster_replication.apply_status ( server_id INT UNSIGNED NOT NULL, epoch BIGINT UNSIGNED NOT NULL, PRIMARY KEY USING HASH (server_id) ) ENGINE=NDB
*************************** 3. row ***************************
Log_name: master2.000001
Pos: 336
Event_type: Table_map
Server_id: 2
End_log_pos: 412
Info:
*************************** 4. row ***************************
Log_name: master2.000001
Pos: 412
Event_type: Write_rows
Server_id: 2
End_log_pos: 554
Info:
*************************** 5. row ***************************
Log_name: master2.000001
Pos: 554
Event_type: Query
Server_id: 2
End_log_pos: 647
Info: create database GOTOSLAVE
*************************** 6. row ***************************
Log_name: master2.000001
Pos: 647
Event_type: Query
Server_id: 2
End_log_pos: 749
Info: use `GOTOSLAVE`; create table t1 (c1 int)ENGINE=NDB
*************************** 7. row ***************************
Log_name: master2.000001
Pos: 749
Event_type: Query
Server_id: 2
End_log_pos: 832
Info: CREATE DATABASE BANK
*************************** 8. row ***************************
Log_name: master2.000001
Pos: 832
Event_type: Query
Server_id: 2
End_log_pos: 917
Info: CREATE DATABASE BANK2
*************************** 9. row ***************************
Log_name: master2.000001
Pos: 917
Event_type: Query
Server_id: 2
End_log_pos: 998
Info: use `GOTOSLAVE`; drop table t2
*************************** 10. row ***************************
Log_name: master2.000001
Pos: 998
Event_type: Query
Server_id: 2
End_log_pos: 1062
Info: BEGIN
*************************** 11. row ***************************
Log_name: master2.000001
Pos: 1062
Event_type: Table_map
Server_id: 2
End_log_pos: 63
Info:
*************************** 12. row ***************************
Log_name: master2.000001
Pos: 1125
Event_type: Write_rows
Server_id: 2
End_log_pos: 103
Info:
*************************** 13. row ***************************
Log_name: master2.000001
Pos: 1165
Event_type: Query
Server_id: 2
End_log_pos: 1230
Info: COMMIT
*************************** 14. row ***************************
Log_name: master2.000001
Pos: 1230
Event_type: Query
Server_id: 2
End_log_pos: 1312
Info: use `GOTOSLAVE`; DROP TABLES t2
*************************** 15. row ***************************
Log_name: master2.000001
Pos: 1312
Event_type: Query
Server_id: 2
End_log_pos: 1376
Info: BEGIN
*************************** 16. row ***************************
Log_name: master2.000001
Pos: 1376
Event_type: Table_map
Server_id: 2
End_log_pos: 63
Info:
*************************** 17. row ***************************
Log_name: master2.000001
Pos: 1439
Event_type: Write_rows
Server_id: 2
End_log_pos: 103
Info:
*************************** 18. row ***************************
Log_name: master2.000001
Pos: 1479
Event_type: Query
Server_id: 2
End_log_pos: 1544
Info: COMMIT
*************************** 19. row ***************************
Log_name: master2.000001
Pos: 1544
Event_type: Query
Server_id: 2
End_log_pos: 1608
Info: BEGIN
*************************** 20. row ***************************
Log_name: master2.000001
Pos: 1608
Event_type: Table_map
Server_id: 2
End_log_pos: 63
Info:
*************************** 21. row ***************************
Log_name: master2.000001
Pos: 1671
Event_type: Write_rows
Server_id: 2
End_log_pos: 103
Info:
*************************** 22. row ***************************
Log_name: master2.000001
Pos: 1711
Event_type: Table_map
Server_id: 2
End_log_pos: 145
Info:
*************************** 23. row ***************************
Log_name: master2.000001
Pos: 1753
Event_type: Write_rows
Server_id: 2
End_log_pos: 177
Info:
*************************** 24. row ***************************
Log_name: master2.000001
Pos: 1785
Event_type: Query
Server_id: 2
End_log_pos: 1850
Info: COMMIT
*************************** 25. row ***************************
Log_name: master2.000001
Pos: 1850
Event_type: Query
Server_id: 2
End_log_pos: 1914
Info: BEGIN
*************************** 26. row ***************************
Log_name: master2.000001
Pos: 1914
Event_type: Table_map
Server_id: 2
End_log_pos: 63
Info:
*************************** 27. row ***************************
Log_name: master2.000001
Pos: 1977
Event_type: Write_rows
Server_id: 2
End_log_pos: 103
Info:
*************************** 28. row ***************************
Log_name: master2.000001
Pos: 2017
Event_type: Table_map
Server_id: 2
End_log_pos: 145
Info:
*************************** 29. row ***************************
Log_name: master2.000001
Pos: 2059
Event_type: Write_rows
Server_id: 2
End_log_pos: 177
Info:
*************************** 30. row ***************************
Log_name: master2.000001
Pos: 2091
Event_type: Query
Server_id: 2
End_log_pos: 2156
Info: COMMIT
*************************** 31. row ***************************
Log_name: master2.000001
Pos: 2156
Event_type: Query
Server_id: 2
End_log_pos: 2275
Info: use `GOTOSLAVE`; create table t4 (c1 int, PRIMARY KEY(c1))Engine=NDB
*************************** 32. row ***************************
Log_name: master2.000001
Pos: 2275
Event_type: Query
Server_id: 2
End_log_pos: 2339
Info: BEGIN
*************************** 33. row ***************************
Log_name: master2.000001
Pos: 2339
Event_type: Table_map
Server_id: 2
End_log_pos: 63
Info:
*************************** 34. row ***************************
Log_name: master2.000001
Pos: 2402
Event_type: Write_rows
Server_id: 2
End_log_pos: 103
Info:
*************************** 35. row ***************************
Log_name: master2.000001
Pos: 2442
Event_type: Table_map
Server_id: 2
End_log_pos: 145
Info:
*************************** 36. row ***************************
Log_name: master2.000001
Pos: 2484
Event_type: Write_rows
Server_id: 2
End_log_pos: 177
Info:
*************************** 37. row ***************************
Log_name: master2.000001
Pos: 2516
Event_type: Query
Server_id: 2
End_log_pos: 2581
Info: COMMIT
*************************** 38. row ***************************
Log_name: master2.000001
Pos: 2581
Event_type: Query
Server_id: 2
End_log_pos: 2645
Info: BEGIN
*************************** 39. row ***************************
Log_name: master2.000001
Pos: 2645
Event_type: Table_map
Server_id: 2
End_log_pos: 63
Info:
*************************** 40. row ***************************
Log_name: master2.000001
Pos: 2708
Event_type: Write_rows
Server_id: 2
End_log_pos: 103
Info:
*************************** 41. row ***************************
Log_name: master2.000001
Pos: 2748
Event_type: Table_map
Server_id: 2
End_log_pos: 145
Info:
*************************** 42. row ***************************
Log_name: master2.000001
Pos: 2790
Event_type: Write_rows
Server_id: 2
End_log_pos: 177
Info:
*************************** 43. row ***************************
Log_name: master2.000001
Pos: 2822
Event_type: Query
Server_id: 2
End_log_pos: 2887
Info: COMMIT
*************************** 44. row ***************************
Log_name: master2.000001
Pos: 2887
Event_type: Query
Server_id: 2
End_log_pos: 2951
Info: BEGIN
*************************** 45. row ***************************
Log_name: master2.000001
Pos: 2951
Event_type: Table_map
Server_id: 2
End_log_pos: 63
Info:
*************************** 46. row ***************************
Log_name: master2.000001
Pos: 3014
Event_type: Write_rows
Server_id: 2
End_log_pos: 103
Info:
*************************** 47. row ***************************
Log_name: master2.000001
Pos: 3054
Event_type: Table_map
Server_id: 2
End_log_pos: 145
Info:
*************************** 48. row ***************************
Log_name: master2.000001
Pos: 3096
Event_type: Write_rows
Server_id: 2
End_log_pos: 177
Info:
*************************** 49. row ***************************
Log_name: master2.000001
Pos: 3128
Event_type: Query
Server_id: 2
End_log_pos: 3193
Info: COMMIT
*************************** 50. row ***************************
Log_name: master2.000001
Pos: 3193
Event_type: Query
Server_id: 2
End_log_pos: 3257
Info: BEGIN
*************************** 51. row ***************************
Log_name: master2.000001
Pos: 3257
Event_type: Table_map
Server_id: 2
End_log_pos: 63
Info:
*************************** 52. row ***************************
Log_name: master2.000001
Pos: 3320
Event_type: Write_rows
Server_id: 2
End_log_pos: 103
Info:
*************************** 53. row ***************************
Log_name: master2.000001
Pos: 3360
Event_type: Table_map
Server_id: 2
End_log_pos: 145
Info:
*************************** 54. row ***************************
Log_name: master2.000001
Pos: 3402
Event_type: Write_rows
Server_id: 2
End_log_pos: 177
Info:
*************************** 55. row ***************************
Log_name: master2.000001
Pos: 3434
Event_type: Query
Server_id: 2
End_log_pos: 3499
Info: COMMIT
*************************** 56. row ***************************
Log_name: master2.000001
Pos: 3499
Event_type: Query
Server_id: 2
End_log_pos: 3563
Info: BEGIN
*************************** 57. row ***************************
Log_name: master2.000001
Pos: 3563
Event_type: Table_map
Server_id: 2
End_log_pos: 63
Info:
*************************** 58. row ***************************
Log_name: master2.000001
Pos: 3626
Event_type: Write_rows
Server_id: 2
End_log_pos: 103
Info:
*************************** 59. row ***************************
Log_name: master2.000001
Pos: 3666
Event_type: Table_map
Server_id: 2
End_log_pos: 145
Info:
*************************** 60. row ***************************
Log_name: master2.000001
Pos: 3708
Event_type: Write_rows
Server_id: 2
End_log_pos: 177
Info:
*************************** 61. row ***************************
Log_name: master2.000001
Pos: 3740
Event_type: Query
Server_id: 2
End_log_pos: 3805
Info: COMMIT
*************************** 62. row ***************************
Log_name: master2.000001
Pos: 3805
Event_type: Query
Server_id: 2
End_log_pos: 3869
Info: BEGIN
*************************** 63. row ***************************
Log_name: master2.000001
Pos: 3869
Event_type: Table_map
Server_id: 2
End_log_pos: 63
Info:
*************************** 64. row ***************************
Log_name: master2.000001
Pos: 3932
Event_type: Write_rows
Server_id: 2
End_log_pos: 103
Info:
*************************** 65. row ***************************
Log_name: master2.000001
Pos: 3972
Event_type: Query
Server_id: 2
End_log_pos: 4037
Info: COMMIT
65 rows in set (0.00 sec)
mysql> show engine ndb status\G;
*************************** 1. row ***************************
cluster_node_id: 12
connected_host: ndb08
connected_port: 14000
number_of_storage_nodes: 4
latest_epoch: 5893
latest_trans_epoch: 4812
latest_received_binlog_epoch: 5893
latest_handled_binlog_epoch: 5893
latest_applied_binlog_epoch: 4953
1 row in set (0.00 sec)
mysql> select * from cluster_replication.binlog_index\G;
*************************** 1. row ***************************
Position: 917
File: /home/ndbdev/jmiller/builds/var/c2/master2.000001
epoch: 4566
inserts: 0
updates: 0
deletes: 0
schemaops: 1
*************************** 2. row ***************************
Position: 1230
File: /home/ndbdev/jmiller/builds/var/c2/master2.000001
epoch: 4671
inserts: 0
updates: 0
deletes: 0
schemaops: 1
*************************** 3. row ***************************
Position: 1544
File: /home/ndbdev/jmiller/builds/var/c2/master2.000001
epoch: 4763
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 4. row ***************************
Position: 1850
File: /home/ndbdev/jmiller/builds/var/c2/master2.000001
epoch: 4764
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 5. row ***************************
Position: 2275
File: /home/ndbdev/jmiller/builds/var/c2/master2.000001
epoch: 4811
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 6. row ***************************
Position: 2581
File: /home/ndbdev/jmiller/builds/var/c2/master2.000001
epoch: 4812
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 7. row ***************************
Position: 2887
File: /home/ndbdev/jmiller/builds/var/c2/master2.000001
epoch: 4877
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 8. row ***************************
Position: 3193
File: /home/ndbdev/jmiller/builds/var/c2/master2.000001
epoch: 4911
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 9. row ***************************
Position: 3499
File: /home/ndbdev/jmiller/builds/var/c2/master2.000001
epoch: 4930
inserts: 1
updates: 0
deletes: 0
schemaops: 0
*************************** 10. row ***************************
Position: 3805
File: /home/ndbdev/jmiller/builds/var/c2/master2.000001
epoch: 4953
inserts: 0
updates: 0
deletes: 0
schemaops: 1
10 rows in set (0.00 sec)
Slave B:
mysql> show slave status\G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: ndb10
Master_User: rep
Master_Port: 3308
Connect_Retry: 1
Master_Log_File: master1.000001
Read_Master_Log_Pos: 9612
Relay_Log_File: ndb11-relay-bin.000003
Relay_Log_Pos: 3699
Relay_Master_Log_File: master1.000001
Slave_IO_Running: Yes
Slave_SQL_Running: No
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 1051
Last_Error: Error 'Unknown table 't4'' on query. Default database: 'GOTOSLAVE'. Query: 'drop table t4'
Skip_Counter: 0
Exec_Master_Log_Pos: 9299
Relay_Log_Space: 4012
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: NULL
1 row in set (0.00 sec)
mysql> show engine ndb status\G;
*************************** 1. row ***************************
cluster_node_id: 6
connected_host: ndb11
connected_port: 14000
number_of_storage_nodes: 4
latest_epoch: 0
latest_trans_epoch: 1320
latest_received_binlog_epoch: 0
latest_handled_binlog_epoch: 0
latest_applied_binlog_epoch: 0
1 row in set (0.00 sec)
mysql> select * from cluster_replication.binlog_index\G;
Empty set (0.00 sec)
mysql> select * from cluster_replication.apply_status\G;
*************************** 1. row ***************************
server_id: 1
epoch: 4930
1 row in set (0.11 sec)
How to repeat:
All files will be copied off to NDB08: /tmp/bug####
Setup a master cluster with 2 mysqld processes. Setup a slave cluster pulling from one of the master processes.
Create and drop database from the second master process:
i.e.
1)create table on A1, and a show tables on A, A sees it, but B never gets it.
2) create a table on A and drop it with A1, A drops it, but B does not get the drop and so the table still exists on B.
3) create a table on A1 and drop it on A, The Slave process errors out because it can not drop a table it knows nothing about.
Suggested fix:
All tables discovered added or drop in a cluster should become a binlog event.
Current workaround. All tables to be created or dropped in a configuration like this one will needed to be done on the "A" mysqld process.