Thanks for the reply, Henrik.  Unfortunately, we now have larger problems:

https://bugs.launchpad.net/drizzle/+bug/990863
https://bugs.launchpad.net/drizzle/+bug/990866

The filtered_replicator tests use the now defunct transaction_log.  That's kind 
of odd because transaction_log != replication, so filtered_replicator was never 
actually tested with replication.  I hope setting up a simple master-slave test 
with kewpie is easy (Patrick)?  The slave plugin has a master-slave test which 
serves as an example.

-Daniel

Le 28 avr. 2012 à 14:10, Henrik Ingo a écrit :

> On Sat, Apr 28, 2012 at 7:31 AM, Daniel Nichter <dan...@percona.com> wrote:
>> I was reviewing the filtered_replicator code and I found that the plugin 
>> removes filtered queries from the transaction event.  I haven't tested it, 
>> but it seems that if table foo is being filtered, then this transaction,
>> 
> 
> I didn't look at code and generally don't know anything about this
> beyond what you write...
> 
> 
> [Executed on master]
>> update foo set ...
>> insert into bar ...
>> 
>> becomes simply,
> 
> [executed on slave]
>> 
>> insert into bar ...
>> 
>> That seems odd to me because 1) the same transaction has two contents (on 
>> the master it has 2 statements, on the slave it will have 1)
> 
> Isn't this what is supposed to happen? I mean, the point of filtering
> is that operations that match some rule are not replicated, and others
> are.
> 
>> and 2) if statement 2 uses data created/modified by statement 1 but 
>> statement 1 is filtered then statement 2 will fail or worse.
>> 
> 
> Not for row-based-replication, which I've understood that Drizzle
> replication is. Row based replication will just insert the same thing
> into bar, regardless whether foo exists or not.
> 
>> I would not expect a _filter_ to modify things, especially not the contents 
>> of transactions.  Is it just too late for me to be coding, or does anyone 
>> else agree that filtered_replicator is doing something very bad?
>> 
> 
> I would expect a filtered replicator to modify the contents of a
> replication stream. I wouldn't expect it to modify the transaction as
> it executes on the master, but I read your mail as if that is not
> happening.
> 
> henrik
> 
> -- 
> henrik.i...@avoinelama.fi
> +358-40-8211286 skype: henrik.ingo irc: hingo
> www.openlife.cc
> 
> My LinkedIn profile: http://www.linkedin.com/profile/view?id=9522559


_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : drizzle-discuss@lists.launchpad.net
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to