From: MARK CALLAGHAN Date: November 9 2009 5:47pm Subject: Re: how does one know if their storage engine supports replication? List-Archive: http://lists.mysql.com/internals/37471 Message-Id: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 On Mon, Nov 9, 2009 at 2:01 AM, Mats Kindahl wrote: > Hi Zardosht, > > Normally, the storage engine does not have to do anything special to support > replication. The flags you mention are basically only there so that a storage > engine can *prevent* certain kinds of replication that will not work (it is > common that MVCC engines does not support statement-based replication in some > situations). > > Sergei showed an example where InnoDB does not work, and for Falcon it is > generally the case that it does not support statement-based replication (because > it is a "pure" MVCC engine). > > The contract is different in statement-based replication and row-based > replication. For statement-based replication the statement will simply be logged > after the storage engine has successfully finished updating the tables, for > row-based replication, a packed version of the record(s) sent to the storage > engine is written to the binary log on a successful write/delete/update. > Is the infrastructure that keeps InnoDB and the binlog in sync after crash recovery also available to other storage engines? Without that support, I wouldn't consider using anything other than InnoDB on a master. -- Mark Callaghan mdcallag@stripped