Hi, MARK!
On Nov 09, MARK CALLAGHAN wrote:
> On Mon, Nov 9, 2009 at 10:36 AM, Sergei Golubchik <serg@stripped> wrote:
> > On Nov 09, MARK CALLAGHAN wrote:
> >>
> >> 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.
> >
> > Yes. If an engine supports XA it'll be part of two phase commit and
> > will be always in sync with binlog and other XA-capable engines
> > involved in the transaction.
> >
> What about the interface by which MySQL gives InnoDB the list of XIDs
> from the current binlog so InnoDB cannot rollback transactions that
> were prepared before the crash but not committed. Is that available to
> other storage engines?
I don't recognize the interface you're talking about, sorry :(
It works the other way around - during XA crash recovery InnoDB gives
MySQL the list of prepared transactions, MySQL scans binlog for Xid
events (which serve as "committed" marks) and explicitly asks InnoDB to
commit all transactions found in the binlog and rollback the rest.
Yes, it works for any storage engine (for any number of storage
engines), it's not InnoDB-specific.
Regards / Mit vielen Grüßen,
Sergei
--
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Sergei Golubchik <serg@stripped>
/ /|_/ / // /\ \/ /_/ / /__ Principal Software Engineer/Server Architect
/_/ /_/\_, /___/\___\_\___/ Sun Microsystems GmbH, HRB München 161028
<___/ Sonnenallee 1, 85551 Kirchheim-Heimstetten
Geschäftsführer: Thomas Schroeder, Wolfgang Engels, Wolf Frenkel
Vorsitzender des Aufsichtsrates: Martin Häring