The boiled down reasoning on MySQL is that because of the lack of transaction symantics that are viable, we can not integrate the transaction manager in Zope with that of MySQL (as it doesn't exist). Table locks are great I suppose (I'm not convinced of their viability in actual large applications), but I fear that the symantics dissonance will create a huge problem in reliability. For me, it's better to have a limited functionality DA that is reliable than one that can hose up either your data or Zope. This is my personal opinion, it does not impact other people disagreeing, nor anyone else implementing a free-threading DA. It simply impacts our current stance on Digital Creations implementing and supporting a MySQL DA. The current goal is to get it to Level 2, where it single threads. What do you do when you have 3 applications talking to the same database, and one of them (Zope) might have 100 threads talking to it? If there's a lot of updates, I fear the potential for dead-lock is enormous. -- | Christopher Petrilli Python Powered Digital Creations, Inc. | petrilli@digicool.com http://www.digicool.com