Sorry, I noticed in another email you said that you're using 2.0.9 (which appears to be in beta) and I confirmed that the traceback matches that source. The note in the product's CHANGES.txt about this is:


    Wrap queries with a lock to prevent multiple threads from using
    the connection simultaneously (this may or may not be happening).
    If transactional, then there is an additional transaction lock,
    acquired at the beginning of the transaction and released when
    either finished or aborted.

The last sentence is the meaningful one in your case. I'm not sure if this is a bug fix but you may want to try 2.0.8 if you haven't already because it doesn't use a transaction lock (or any other lock). It seems as if the logic in 2.0.9b to obtain the transaction lock fails to take some corner case into account, although it's not obvious from the code what that is.

On Nov 20, 2005, at 1:55 PM, Chris McDonough wrote:

Hi Dennis,

I notice that line 389 of db.py of the most recent ZMySQLDA (2.0.8) doesn't match the traceback you show. No mutex locking at all is done in the 2.0.8 version of that module (or any other module in that product). Are you using an older version?

- C


On Nov 20, 2005, at 9:57 AM, Dennis Allison wrote:


Florent,
There were, of course, tracebacks. Any assist you can provide would be
appreciated.   -D

------
2005-11-18T12:50:16 ERROR txn.3075 Error in tpc_abort() on manager <MultiObjectResourceAdapter for <Products.ZMySQLDA.db.DB instance at 0x450431cc> at 1190763820>
Traceback (most recent call last):
File "/usr/local/src/zope/Zope2.8/lib/python/transaction/ _transaction.py", line 462, in _cleanup
    rm.tpc_abort(self)
File "/usr/local/src/zope/Zope2.8/lib/python/transaction/ _transaction.py", line 548, in tpc_abort
    self.manager.tpc_abort(txn)
File "/usr/local/src/zope/Zope2.8/lib/python/Shared/DC/ZRDB/ TM.py", line 64, in abort
    try: self._abort()
File "/opt/zope/zproducts/standard/ZMySQLDA/db.py", line 389, in _abort
    self._tlock.release()
error: release unlocked lock
------
2005-11-18T12:50:16 ERROR txn.3075 Error in tpc_abort() on manager <MultiObjectResourceAdapter for <Products.ZMySQLDA.db.DB instance at 0x41487acc> at 1190774252>
Traceback (most recent call last):
File "/usr/local/src/zope/Zope2.8/lib/python/transaction/ _transaction.py", line 462, in _cleanup
    rm.tpc_abort(self)
File "/usr/local/src/zope/Zope2.8/lib/python/transaction/ _transaction.py", line 548, in tpc_abort
    self.manager.tpc_abort(txn)
File "/usr/local/src/zope/Zope2.8/lib/python/Shared/DC/ZRDB/ TM.py", line 64, in abort
    try: self._abort()
File "/opt/zope/zproducts/standard/ZMySQLDA/db.py", line 389, in _abort
    self._tlock.release()
error: release unlocked lock
------
2005-11-18T12:50:16 INFO ZODB conflict error at /courses/topics/ navigation_box (55 conflicts since startup at 2005-11-18T12:13:38)
------
2005-11-18T12:50:16 ERROR txn.3075 Failed to abort object: Surrogate oid=<object object at 0x4009d470>
Traceback (most recent call last):
File "/usr/local/src/zope/Zope2.8/lib/python/transaction/ _transaction.py", line 562, in abort
    self.manager.abort(o, txn)
File "/usr/local/src/zope/Zope2.8/lib/python/Shared/DC/ZRDB/ TM.py", line 64, in abort
    try: self._abort()
File "/opt/zope/zproducts/standard/ZMySQLDA/db.py", line 389, in _abort
    self._tlock.release()
error: release unlocked lock
------
2005-11-18T12:50:16 ERROR txn.3075 Failed to abort resource manager: <MultiObjectResourceAdapter for <Products.ZMySQLDA.db.DB instance at 0x450431cc> at 1190763820>
Traceback (most recent call last):
File "/usr/local/src/zope/Zope2.8/lib/python/transaction/ _transaction.py", line 489, in abort
    rm.abort(self)
File "/usr/local/src/zope/Zope2.8/lib/python/transaction/ _transaction.py", line 562, in abort
    self.manager.abort(o, txn)
File "/usr/local/src/zope/Zope2.8/lib/python/Shared/DC/ZRDB/ TM.py", line 64, in abort
    try: self._abort()
File "/opt/zope/zproducts/standard/ZMySQLDA/db.py", line 389, in _abort
    self._tlock.release()
error: release unlocked lock
------
2005-11-18T12:50:16 ERROR txn.3075 Failed to abort object: Surrogate oid=<object object at 0x4009d470>
Traceback (most recent call last):
File "/usr/local/src/zope/Zope2.8/lib/python/transaction/ _transaction.py", line 562, in abort
    self.manager.abort(o, txn)
File "/usr/local/src/zope/Zope2.8/lib/python/Shared/DC/ZRDB/ TM.py", line 64, in abort
    try: self._abort()
File "/opt/zope/zproducts/standard/ZMySQLDA/db.py", line 389, in _abort
    self._tlock.release()
error: release unlocked lock
------
2005-11-18T12:50:16 ERROR txn.3075 Failed to abort resource manager: <MultiObjectResourceAdapter for <Products.ZMySQLDA.db.DB instance at 0x41487acc> at 1190774252>
Traceback (most recent call last):
File "/usr/local/src/zope/Zope2.8/lib/python/transaction/ _transaction.py", line 489, in abort
    rm.abort(self)
File "/usr/local/src/zope/Zope2.8/lib/python/transaction/ _transaction.py", line 562, in abort
    self.manager.abort(o, txn)
File "/usr/local/src/zope/Zope2.8/lib/python/Shared/DC/ZRDB/ TM.py", line 64, in abort
    try: self._abort()
File "/opt/zope/zproducts/standard/ZMySQLDA/db.py", line 389, in _abort
    self._tlock.release()
error: release unlocked lock
------


On Sat, 19 Nov 2005, Florent Guillaume wrote:

Dennis Allison wrote:
We are using MySQL but are fully transactional using innodb.

The sort of problems we are seeing are (cruft removed) are things like:

2005-11-18T12:50:16 ERROR txn.3075 Error in tpc_abort() on manager
<MultiObjectResourceAdapter for <Products.ZMySQLDA.db.DB instance at
0x450431cc> at 1190763820>

There should be a traceback here, or if there's none you should patch _transaction.py to make it produced. Seeing that traceback is important
and would point to an error somewhere in MySQLDA's code I expect.

2005-11-18T12:50:16 ERROR txn.3075 Failed to abort resource manager: <MultiObjectResourceAdapter for <Products.ZMySQLDA.db.DB instance at
0x450431cc> at 1190763820>
2005-11-18T12:50:16 ERROR txn.3075 Failed to abort object: Surrogate
oid=<object object at 0x4009d470>
2005-11-18T12:50:16 ERROR txn.3075 Failed to abort resource manager: <MultiObjectResourceAdapter for <Products.ZMySQLDA.db.DB instance at
0x41487acc> at 1190774252>

Same here, the traceback is important.

Florent



--

_______________________________________________
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists -
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )



_______________________________________________
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope-dev )

Reply via email to