On Wed, 2002-01-30 at 13:17, Matthew T. Kromer wrote:
Well, I'm worried about the MySQL libraries. You can build them either in threaded or nonthreaded mode; and the default setup of ZMySQLDA was to use the nonthreaded libraries. So that's a problem right there.
0.9.2a2 uses threaded by default now.
Secondly, Andy Dustman thought that certain library objects were thread-bound -- so you couldn't allocate a connection object on one thread and then invoke it from another. Zope would try to do that as part of the DA connection pooling. I have a patch for ZMySQLDA which tries to close and reopen the MySQL connection when the DA connection object switches threads, but I haven't ever heard from someone "this fixes it!"
I have a better patch now, which locks the connection object during queries (or transactions, if transactional). If there's more than one connection object being created by Zope, so much the better. The customer you mentioned earlier has been using it for about a week, in multi-threaded mode last I heard... I will commit the changes to CVS sometime today and post an announcement...
I personally haven't got a reproducable test case in house to try to diagnose the MySQL problems. When I do simple queries etc by banging on the Zope SQL Methods with "ab" I don't have MySQL fail.
Me neither. -- Andy Dustman PGP: 0x930B8AB6 @ .net http://dustman.net/andy You can have my keys when you pry them from my dead, cold neurons.