diff --git a/common/source/java/ch/systemsx/cisd/common/Constants.java b/common/source/java/ch/systemsx/cisd/common/Constants.java
index 7b2e82f670e9221c8a095899211612cd01a6469e..5b19c4bd0635f9e88aea8738d60db7e76e0cda38 100644
--- a/common/source/java/ch/systemsx/cisd/common/Constants.java
+++ b/common/source/java/ch/systemsx/cisd/common/Constants.java
@@ -16,6 +16,8 @@
 
 package ch.systemsx.cisd.common;
 
+import org.apache.commons.lang.time.DateUtils;
+
 /**
  * Constants common to more than one CISD project.
  * 
@@ -34,4 +36,9 @@ public class Constants
     public static final String DELETION_IN_PROGRESS_PREFIX =
             MARKER_PREFIX + "deletion_in_progress_";
 
+    /** The number of milliseconds to wait before considering timeout (<i>10s</i>). */
+    public static final long MILLIS_TO_WAIT_BEFORE_TIMEOUT = 10 * DateUtils.MILLIS_PER_SECOND;
+
+    /** The number of milliseconds to sleep before retrying (<i>3s</i>). */
+    public static final long MILLIS_TO_SLEEP_BEFORE_RETRYING = 3 * DateUtils.MILLIS_PER_SECOND;
 }
diff --git a/common/source/java/ch/systemsx/cisd/common/highwatermark/HighwaterMarkWatcher.java b/common/source/java/ch/systemsx/cisd/common/highwatermark/HighwaterMarkWatcher.java
index fa39ab9c5c4fd2d4c03db1b95acfa2ee87f14120..51817bb31a5b87e89a6b71cb15709b35a5272eef 100644
--- a/common/source/java/ch/systemsx/cisd/common/highwatermark/HighwaterMarkWatcher.java
+++ b/common/source/java/ch/systemsx/cisd/common/highwatermark/HighwaterMarkWatcher.java
@@ -23,6 +23,7 @@ import javax.swing.event.ChangeEvent;
 import javax.swing.event.ChangeListener;
 import javax.swing.event.EventListenerList;
 
+import org.apache.commons.io.DestroyableFileSystemUtils;
 import org.apache.commons.io.FileSystemUtils;
 import org.apache.commons.io.FileUtils;
 import org.apache.log4j.Logger;
@@ -224,7 +225,7 @@ public final class HighwaterMarkWatcher implements Runnable
         public final long freeSpaceKb(final File path) throws IOException
         {
             final String canonicalPath = FileUtilities.getCanonicalPath(path);
-            return FileSystemUtils.freeSpaceKb(canonicalPath);
+            return DestroyableFileSystemUtils.freeSpaceKb(canonicalPath);
         }
     }
 
diff --git a/common/source/java/ch/systemsx/cisd/common/highwatermark/RemoteFreeSpaceProvider.java b/common/source/java/ch/systemsx/cisd/common/highwatermark/RemoteFreeSpaceProvider.java
index 7b6a70736bf248cded2e53657adae6db2cfd6bef..9537323af00614d6eda4eab4db015524dbf05b10 100644
--- a/common/source/java/ch/systemsx/cisd/common/highwatermark/RemoteFreeSpaceProvider.java
+++ b/common/source/java/ch/systemsx/cisd/common/highwatermark/RemoteFreeSpaceProvider.java
@@ -22,9 +22,9 @@ import java.util.Arrays;
 import java.util.List;
 
 import org.apache.commons.lang.StringUtils;
-import org.apache.commons.lang.time.DateUtils;
 import org.apache.log4j.Logger;
 
+import ch.systemsx.cisd.common.Constants;
 import ch.systemsx.cisd.common.highwatermark.HighwaterMarkWatcher.IFreeSpaceProvider;
 import ch.systemsx.cisd.common.logging.LogCategory;
 import ch.systemsx.cisd.common.logging.LogFactory;
@@ -49,13 +49,11 @@ public final class RemoteFreeSpaceProvider implements IFreeSpaceProvider
     private static final Logger operationLog =
             LogFactory.getLogger(LogCategory.OPERATION, RemoteFreeSpaceProvider.class);
 
-    private static final long MILLIS_TO_WAIT_FOR_COMPLETION = 2 * DateUtils.MILLIS_PER_SECOND;
-
     private final File sshExecutable;
 
     private final String host;
 
-    private final long millisToWaitForCompletion = MILLIS_TO_WAIT_FOR_COMPLETION;
+    private final long millisToWaitForCompletion = Constants.MILLIS_TO_WAIT_BEFORE_TIMEOUT;
 
     public RemoteFreeSpaceProvider(final String host, final File sshExecutable)
     {
diff --git a/common/source/java/ch/systemsx/cisd/common/process/FileRenamingProcess.java b/common/source/java/ch/systemsx/cisd/common/process/FileRenamingProcess.java
index 2e935720433779a9508ac65f983d1de809c466c4..035f185959de47022ea0978a896dd00f46741fe9 100644
--- a/common/source/java/ch/systemsx/cisd/common/process/FileRenamingProcess.java
+++ b/common/source/java/ch/systemsx/cisd/common/process/FileRenamingProcess.java
@@ -20,6 +20,7 @@ import java.io.File;
 
 import org.apache.log4j.Logger;
 
+import ch.systemsx.cisd.common.Constants;
 import ch.systemsx.cisd.common.logging.LogCategory;
 import ch.systemsx.cisd.common.logging.LogFactory;
 
@@ -33,8 +34,6 @@ public final class FileRenamingProcess implements IProcess
     private static final Logger operationLog =
             LogFactory.getLogger(LogCategory.OPERATION, FileRenamingProcess.class);
 
-    public static final long DEFAULT_MILLIS_TO_SLEEP = 5000L;
-
     public static final int DEFAULT_MAX_RETRIES = 12;
 
     private final File sourceFile;
@@ -51,7 +50,7 @@ public final class FileRenamingProcess implements IProcess
 
     public FileRenamingProcess(final File sourceFile, final File destinationFile)
     {
-        this(DEFAULT_MAX_RETRIES, DEFAULT_MILLIS_TO_SLEEP, sourceFile, destinationFile);
+        this(DEFAULT_MAX_RETRIES, Constants.MILLIS_TO_SLEEP_BEFORE_RETRYING, sourceFile, destinationFile);
     }
 
     public FileRenamingProcess(final int maxRetries, final long millisToSleep,