A client's site had been hanging under high loads. The problem appeared to be that the ZMySQLDA assumed transactions in the database even if the underlying tables were not transactional. I fixed it by changing the tables to be transactional. No more hangs. The abort was failing thus: 2003-05-08T13:32:59 ERROR(200) ZODB A storage error occured during transaction abort. This shouldn't happen. ...Transaction.py, line 392, in _commit_error AttributeError: Surrogate instance has no attribute '_p_oid' Under "normal" circumstances an aborted transaction against a non-transactional table produces a sensible error explaining what is going on. Here, somehow, the 'Surrogate' transaction had ended up with no attributes at all. 1) Where might those attributes have gone? 2) Why might this cause Zope to hang? Note I have only been able to reproduce the problem on the live server so far, and therefore I've not yet had an opportunity to debug in detail. seb -- [] j a m k i t seb bacon T: 020 7549 0520 F: 020 7490 1152 M: 07968 301 336 W: www.jamkit.com