[Erp5-report] r20315 - /erp5/trunk/products/ZMySQLDA/db.py

nobody at svn.erp5.org nobody at svn.erp5.org
Sat Apr 5 19:11:27 CEST 2008


Author: yo
Date: Sat Apr  5 19:11:26 2008
New Revision: 20315

URL: http://svn.erp5.org?rev=20315&view=rev
Log:
Remove MySQL dependency from CMFActivity. Translate a lock error into ConflictError in database adapters instead.

Modified:
    erp5/trunk/products/ZMySQLDA/db.py

Modified: erp5/trunk/products/ZMySQLDA/db.py
URL: http://svn.erp5.org/erp5/trunk/products/ZMySQLDA/db.py?rev=20315&r1=20314&r2=20315&view=diff
==============================================================================
--- erp5/trunk/products/ZMySQLDA/db.py (original)
+++ erp5/trunk/products/ZMySQLDA/db.py Sat Apr  5 19:11:26 2008
@@ -102,6 +102,7 @@
 from Shared.DC.ZRDB.TM import TM
 from DateTime import DateTime
 from zLOG import LOG, ERROR, INFO
+from ZODB.POSException import ConflictError
 
 import string, sys
 from string import strip, split, find, upper, rfind
@@ -115,6 +116,11 @@
 
 query_syntax_error = (
     ER.BAD_FIELD_ERROR,
+    )
+
+lock_error = (
+    ER.LOCK_WAIT_TIMEOUT,
+    ER.LOCK_DEADLOCK,
     )
 
 key_types = {
@@ -388,6 +394,8 @@
         except OperationalError, m:
             if m[0] in query_syntax_error:
               raise OperationalError(m[0], '%s: %s' % (m[1], query))
+            if m[0] in lock_error:
+              raise ConflictError('%s: %s: %s' % (m[0], m[1], query))
             if ((not force_reconnect) and \
                 (self._mysql_lock or self._transactions)) or \
               m[0] not in hosed_connection:




More information about the Erp5-report mailing list