[Zope-CVS] CVS: Products/Scheduler - Scheduler.py:1.17 Task.py:1.2

Chris McDonough chrism@zope.com
Tue, 3 Jun 2003 10:51:16 -0400


Update of /cvs-repository/Products/Scheduler
In directory cvs.zope.org:/tmp/cvs-serv1031

Modified Files:
	Scheduler.py Task.py 
Log Message:
Allow conflict errors to permeate up to ZPublisher.


=== Products/Scheduler/Scheduler.py 1.16 => 1.17 ===
--- Products/Scheduler/Scheduler.py:1.16	Mon Jun  2 17:03:33 2003
+++ Products/Scheduler/Scheduler.py	Tue Jun  3 10:50:45 2003
@@ -24,6 +24,7 @@
 from ExtensionClass import Base
 from Acquisition import aq_base
 from AccessControl import ClassSecurityInfo
+from ZODB.POSException import ConflictError
 
 from OFS.SimpleItem import SimpleItem
 from OFS.PropertyManager import PropertyManager
@@ -192,6 +193,9 @@
             try:
                 this_task = this_task.__of__(self)
                 status = this_task() # perform the task
+            except ConflictError:
+                # allow conflict errors to permeate
+                raise
             except:
                 msg = ('The task %s call failed hard!' %
                        this_task.getDescription())
@@ -205,6 +209,9 @@
                     LOG('Scheduler', BLATHER, msg)
                     if not status: # if not, that's ok.
                         continue
+                except ConflictError:
+                    # allow conflict errors to permeate
+                    raise
                 except:
                     msg = ('The task %s next failed hard!' %
                            this_task.getDescription())


=== Products/Scheduler/Task.py 1.1 => 1.2 ===
--- Products/Scheduler/Task.py:1.1	Sat May 17 14:46:07 2003
+++ Products/Scheduler/Task.py	Tue Jun  3 10:50:45 2003
@@ -26,6 +26,7 @@
 from zLOG import LOG, INFO, BLATHER, ERROR, WARNING, PROBLEM
 from ZPublisher.mapply import mapply
 from ZPublisher.Publish import call_object, missing_name, dont_publish_class
+from ZODB.POSException import ConflictError
 
 from Products.Scheduler import IScheduledEvent
 
@@ -69,6 +70,9 @@
             REQUEST = getattr(self, 'REQUEST')
             result = self._runMethod(REQUEST)
 
+        except ConflictError:
+            # allow conflict errors to permeate
+            raise
         except:
 
             exc_name, exc_msg, exc_tb = sys.exc_info()