multi-master replication test failing - duplicate trx message error/ first master rpl failure.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Drizzle |
Fix Released
|
High
|
Patrick Crews | ||
7.1 |
Fix Released
|
High
|
Patrick Crews |
Bug Description
So, I have created the infrastructure to setup multi-master topologies for testing.
The gist of the test is we spin 3 servers = 2 masters, one slave replicating from both.
master1 = we create test.t1 and some records
master2 = we create test.t2 and some records
When we try:
./dbqp --suite=slave --record multi_master_basic, the test fails as follows (slave crashes)
$ cat workdir/
InnoDB: Doublewrite buffer not found: creating new
InnoDB: Doublewrite buffer created
InnoDB: 127 rollback segment(s) active.
InnoDB: Creating foreign key constraint system tables
InnoDB: Foreign key constraint system tables created
(SQLSTATE 00000) Duplicate entry '772-1' for key 'PRIMARY'
Failure while executing:
INSERT INTO `sys_replicatio
server_id: 1
transaction_id: 772
start_timestamp: 1317760732106016
end_timestamp: 1317760732106017
}
event {
type: STARTUP
}
segment_id: 1
end_segment: true
')
Replication slave: Unable to insert into queue.
Replication slave: drizzle_
Lost connection to master. Reconnecting.
Replication slave: drizzle_
111004 16:39:05 InnoDB: Starting shutdown...
Testing the setup with --start-and-exit shows that we only seem to be replicating from master 2, not master 1.
the config file is as follows:
ignore-errors
[master1]
master-
master-port=9306
master-user=root
master-pass=''
[master2]
master-
master-port=9312
master-user=root
master-pass=''
Related branches
- Joe Daly (community): Approve
- Drizzle Merge Team: Pending requested
-
Diff: 12 lines (+1/-1)1 file modifiedplugin/slave/replication_schema.cc (+1/-1)
summary: |
- multi-master replication test failing + multi-master replication test failing - duplicate trx message error/ + first master rpl failure. |
The test + relevant code is in the linked branch:
./dbqp --suite=slave --record multi_master_basic
Slave logs are: tests/workdir/ bot0/s2/ var/log/ s2.err
drizzle/