[Zope-dev] Re: MySQL Transaction Support

Andy Dustman adustman@comstar.net
Tue, 1 Aug 2000 11:12:32 -0400 (EDT)


On Tue, 1 Aug 2000, Monty Taylor wrote:

> A question would be, what should the commit/rollback mechanism decide to
> do when the transaction deals with tables of both types.

It should raise ProgrammingError, "You're screwed".

If you need transactional capabilities, then you just can't mix
transactional and non-transactional tables in MySQL. This is also why I
think there need to be two Zope DAs for MySQL: Non-transactional and
transactional, the latter being a simple subclass of the former with TM
support mixed-in. The choice of whether or not to be transactional should
be made by the application designer; it's too complicated to make at
run-time (i.e. for each query). Even if you can use the API to find the
table type, you stil have to figure out what tables are used by the query,
and that requires parsing SQL.

-- 
andy dustman       |     programmer/analyst     |      comstar.net, inc.
telephone: 770.485.6025 / 706.549.7689 | icq: 32922760 | pgp: 0xc72f3f1d
"Therefore, sweet knights, if you may doubt your strength or courage, 
come no further, for death awaits you all, with nasty, big, pointy teeth!"