diff --git a/agkyra/agkyra/syncer/pithos_client.py b/agkyra/agkyra/syncer/pithos_client.py
index effc9390ab98e4dfd834391be6f40ff0159d9961..ec2173f13db09d1d57f210dbad58e8a6fca93558 100644
--- a/agkyra/agkyra/syncer/pithos_client.py
+++ b/agkyra/agkyra/syncer/pithos_client.py
@@ -3,7 +3,6 @@ import time
 import os
 import datetime
 import threading
-import random
 import logging
 import re
 
@@ -163,24 +162,26 @@ class PithosTargetHandle(object):
         self.path = target_state.path
         self.heartbeat = settings.heartbeat
 
-    def mk_del_name(self, name):
-        tstamp = datetime.datetime.now().strftime("%s")
-        rand = str(random.getrandbits(64))
-        return "%s.%s.%s%s" % (name, tstamp, rand, STAGED_FOR_DELETION_SUFFIX)
+    def mk_del_name(self, name, etag):
+        return "%s.%s%s" % (name, etag, STAGED_FOR_DELETION_SUFFIX)
 
     def safe_object_del(self, path, etag):
         container = self.endpoint.container
-        del_name = self.mk_del_name(path)
+        del_name = self.mk_del_name(path, etag)
+        logger.info("Moving temporarily to '%s'" % del_name)
         try:
             self.endpoint.object_move(
                 path,
                 destination='/%s/%s' % (container, del_name),
                 if_etag_match=etag)
         except ClientError as e:
-            logger.warning("'%s' not found; already deleted?" % path)
             if e.status == 404:
-                return
-        self.endpoint.del_object(del_name)
+                logger.warning("'%s' not found; already moved?" % path)
+            else:
+                raise
+        finally:
+            self.endpoint.del_object(del_name)
+            logger.info("Deleted tmp '%s'" % del_name)
 
     def directory_put(self, path, etag):
         r = self.endpoint.object_put(