[CalendarServer-changes] [6692] CalendarServer/trunk/twistedcaldav/storebridge.py

source_changes at macosforge.org source_changes at macosforge.org
Tue Dec 14 14:14:07 PST 2010


Revision: 6692
          http://trac.macosforge.org/projects/calendarserver/changeset/6692
Author:   sagen at apple.com
Date:     2010-12-14 14:14:03 -0800 (Tue, 14 Dec 2010)
Log Message:
-----------
Simultaneous DELETEs can lead to uncaught exceptions.  Turning those into HTTPError(404).

Modified Paths:
--------------
    CalendarServer/trunk/twistedcaldav/storebridge.py

Modified: CalendarServer/trunk/twistedcaldav/storebridge.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/storebridge.py	2010-12-14 21:02:51 UTC (rev 6691)
+++ CalendarServer/trunk/twistedcaldav/storebridge.py	2010-12-14 22:14:03 UTC (rev 6692)
@@ -59,6 +59,7 @@
 from twistedcaldav.vcard import Component as VCard
 
 from txdav.base.propertystore.base import PropertyName
+from txdav.common.icommondatastore import NoSuchObjectResourceError
 
 log = Logger()
 
@@ -1133,9 +1134,12 @@
 
         # Do delete
 
-        yield self._newStoreParent.removeObjectResourceWithName(
-            self._newStoreObject.name()
-        )
+        try:
+            yield self._newStoreParent.removeObjectResourceWithName(
+                self._newStoreObject.name()
+            )
+        except NoSuchObjectResourceError:
+            raise HTTPError(responsecode.NOT_FOUND)
 
         # Re-initialize to get stuff setup again now we have no object
         self._initializeWithObject(None, self._newStoreParent)
@@ -1603,5 +1607,7 @@
 
         except MemcacheLockTimeoutError:
             raise HTTPError(StatusResponse(CONFLICT, "Resource: %s currently in use on the server." % (where,)))
+        except NoSuchObjectResourceError:
+            raise HTTPError(responsecode.NOT_FOUND)
 
         returnValue(NO_CONTENT)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20101214/384649d7/attachment-0001.html>


More information about the calendarserver-changes mailing list