Bug #69468 Evaluation of Database-Level Replication diagram error
Submitted: 14 Jun 2013 8:02 Modified: 18 Feb 2014 18:04
Reporter: Max Gao Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Documentation Severity:S3 (Non-critical)
Version:5.6,5.1, 5.5 OS:Any (Centos)
Assigned to: Jon Stephens CPU Architecture:Any
Tags: diagram, error, replication

[14 Jun 2013 8:02] Max Gao
Description:
table level replication options will be evaluated only after the database level replication options pass and make a 'execute' result.

but according to the diagram, The table level replication options checks will proceed if no matching database options were found.

How to repeat:
on slave:
replicate-do-db=test
replicate-wild-ignore-table=test.%

on master:
use test
create table question (qid int auto_increment, title varchar(255), content varchar(255), primary key (qid));
create database tmptest;
use tmptest;
insert test.question set title='test', content='test';

according to the diagram, 
replicate-do-db=test
this statement executed under tmptest, not match
any replicate-ignore-db? no, go to table level options.
replicate-wild-ignore-table=test.%
should execute the update here.

but actually , this insert will not execute on slave, i test it in 5.6.11 and 5.1.70 x64 under centos 5.8.

another try:

replicate-do-db=tmptest
replicate-wild-do-table=test.%

tables test.* under slave will not get replicate with above config.

Suggested fix:
if there is any replicate-*-db options, the table level options only be check if the database level options pass and give a 'execute' result.

i think that should be the right behavior when mix  replicate-*-db  and  replicate-*-table options together.
[14 Jun 2013 8:18] Max Gao
sorry , the first test config should be 

on slave:
replicate-do-db=test
replicate-wild-do-table=test.%
[20 Jun 2013 18:56] Sveta Smirnova
Thank you for the report.

Verified as described. First sentence at http://dev.mysql.com/doc/refman/5.5/en/replication-rules-table-options.html ignores *-wild-* options.
[4 Jul 2013 14:49] Jon Stephens
Please indicate the specific page of the documentation you are referring to by URL or title.The URL in the comment does not appear to belong to the same page.

Thanks!
[4 Jul 2013 19:48] Sveta Smirnova
Posted by developer:
 
Link is correct.

Simply you should start reading from this page: http://dev.mysql.com/doc/refman/5.5/en/replication-rules-db-options.html Then, after you found in diagram last circle with "Proceed to table-level options, if any", open http://dev.mysql.com/doc/refman/5.5/en/replication-rules-table-options.html
[18 Feb 2014 18:04] Jon Stephens
Thank you for your bug report. This issue has been addressed in the documentation. The updated documentation will appear on our website shortly, and will be included in the next release of the relevant products.

Fixed in mysqldoc rev 37758.

Closed.