diff --git a/castor/scheduler/diskmanager/runningtransfersset.py b/castor/scheduler/diskmanager/runningtransfersset.py
index 93be00b44f1f9f14fecec23689cbdaa3b2c1f4af..e6639269179eae6cb9b1eb7b4247dede978f2a5a 100644
--- a/castor/scheduler/diskmanager/runningtransfersset.py
+++ b/castor/scheduler/diskmanager/runningtransfersset.py
@@ -173,8 +173,11 @@ class RunningTransfersSet(object):
     '''set the process object to the existing running transfer'''
     self.lock.acquire()
     try:
-      t = self.get(transferid)
-      t.process = process
+      for t in self.transfers:
+        if t.transfer.transferId == transferid:
+          t.process = process
+          return
+      raise KeyError
     finally:
       self.lock.release()