NOTICE: UserAbortTransactionBlock and not in in-progress state Exception ThreadLock.error: 'release unlocked lock' in <method Transaction.__del__ of Transaction instance at 84db300> ignored NOTICE: UserAbortTransactionBlock and not in in-progress state Exception ThreadLock.error: 'release unlocked lock' in <method Transaction.__del__ of Transaction instance at 84fc168> ignored NOTICE: UserAbortTransactionBlock and not in in-progress state Exception ThreadLock.error: 'release unlocked lock' in <method Transaction.__del__ of Transaction instance at 8530350> ignored
The customer also reports that an extra thread appears.. (? He says there is an extra z2.py, but as he runs Linux, that's probably an extra thread).
Although apparently not harmful, I do suspect that eventually the process will run out of threads.
Hmm.. The error occurs within the THUNKed database adapter, it's a problem with the ThreadLock. I think something goes wrong with the _register method of the THUNK class (either register or self._begin fails), causing the freshly acquired lock to be released again. Then, when the transaction is finished, tpc_finish is called, which releases a unlocked lock, which throws the exception. But because the transaction was already finished, we get the aforementioned log message. Zope just continues to run. The question is, what, if any, side effects does this cause, and how does this problem occur, so we can put an end to it? -- Martijn Pieters, Web Developer | Antraciet http://www.antraciet.nl | Tel: +31-35-7502100 Fax: +31-35-7502111 | mailto:mj@antraciet.nl http://www.antraciet.nl/~mj | PGP: http://wwwkeys.nl.pgp.net:11371/pks/lookup?op=get&search=0xA8A32149 ------------------------------------------