[Erp5-report] r25092 - /erp5/trunk/products/ERP5Type/patches/WorkflowTool.py

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Jan 13 14:07:24 CET 2009


Author: vincent
Date: Tue Jan 13 14:07:22 2009
New Revision: 25092

URL: http://svn.erp5.org?rev=25092&view=rev
Log:
Make OperationalError 1054 a valid condition to recreate cache table.

Modified:
    erp5/trunk/products/ERP5Type/patches/WorkflowTool.py

Modified: erp5/trunk/products/ERP5Type/patches/WorkflowTool.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/patches/WorkflowTool.py?rev=25092&r1=25091&r2=25092&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/patches/WorkflowTool.py [utf8] (original)
+++ erp5/trunk/products/ERP5Type/patches/WorkflowTool.py [utf8] Tue Jan 13 14:07:22 2009
@@ -34,7 +34,7 @@
 from Persistence import Persistent
 from Globals import PersistentMapping
 from itertools import izip
-from MySQLdb import ProgrammingError
+from MySQLdb import ProgrammingError, OperationalError
 
 def DCWorkflowDefinition_notifyWorkflowMethod(self, ob, transition_list, args=None, kw=None):
     '''
@@ -637,7 +637,10 @@
         if len(value_column_dict[COUNT_COLUMN_TITLE]):
           try:
             Base_zInsertIntoWorklistTable(**value_column_dict)
-          except ProgrammingError:
+          except (ProgrammingError, OperationalError), error_value:
+            # OperationalError 1054 = unknown column
+            if isinstance(error_value, OperationalError) and error_value[0] != 1054:
+              raise
             LOG('WorkflowTool', 100, 'Insertion in worklist cache table ' \
                 'failed. Recreating table and retrying.',
                 error=sys.exc_info())




More information about the Erp5-report mailing list