From: | Richard Huxton <dev(at)archonet(dot)com> |
---|---|
To: | mario(dot)splivalo(at)mobart(dot)hr |
Cc: | pgsql-sql(at)postgresql(dot)org |
Subject: | Re: why vacuum |
Date: | 2005-10-27 13:21:15 |
Message-ID: | 4360D44B.9020605@archonet.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Mario Splivalo wrote:
> On Wed, 2005-10-26 at 12:09 -0400, Jan Wieck wrote:
>
>>You must have missed the FAQ and other side notes about replication in
>>the MySQL manual. Essentially MySQL replication is nothing but a query
>>duplicating system, with the added sugar of taking care of now() and
>>some other non-deterministic things, but not all of them.
>>
>>Non-deterministic user defined procedures, functions and triggers will
>>simply blow MySQL's sophisticated replication apart.
>
> That is just not true. I haven't tried MySQL 4 and above, but in 3.5.x
> replication wos working as expected, and the load that replication posed
> was insignificant. The only TRUE problem was that replication was
> unidirectional. That SAME problem has Slony, and other 'replication
> systems' available for postgres.
I think you're missing the "non-deterministic" bit. Mysql replication is
based on shipping statements AFAICT
http://dev.mysql.com/doc/refman/5.0/en/binary-log.html
"The binary log contains all statements which updated data or
potentially could have updated it (for example, a DELETE which matched
no rows). Statements are stored in the form of “events” that describe
the modifications."
So - if your statement contains something non-deterministic that isn't
catered for in Mysql's code then it will break.
At it's simplest - if I write a function my_random() and then do:
UPDATE foo SET a=1 WHERE b < my_random();
IF my_random() returns different results on different machines, then the
replication will be broken. See the manual entry below:
http://dev.mysql.com/doc/refman/5.0/en/replication-features.html
That's not to say the system is worthless - it works fine for many
people. But it does have limitations.
--
Richard Huxton
Archonet Ltd
From | Date | Subject | |
---|---|---|---|
Next Message | Jan Wieck | 2005-10-27 13:47:17 | Re: why vacuum |
Previous Message | Mario Splivalo | 2005-10-27 12:34:13 | Re: why vacuum |