diff --git a/talon.wdl b/talon.wdl
index e2395cb782158fe4398d1e7b5ca5011cda27b9b5..d63cada7b4f16365c9bb1cb38236956507c960b3 100644
--- a/talon.wdl
+++ b/talon.wdl
@@ -463,7 +463,10 @@ task Talon {
     command <<<
         set -e
         mkdir -p "$(dirname ~{outputPrefix})"
-        export TMPDIR=/tmp
+        mkdir -p $PWD/tmp #Standard /tmp fills up which makes the SQLite process crash.
+        ln -s $PWD/tmp /tmp/sqltmp #Multiprocessing will crash if the absolute path is too long.
+        export TMPDIR=/tmp/sqltmp
+        printf "" > ~{outputPrefix}/talonConfigFile.csv #File needs to be emptied when task is rerun.
         for file in ~{sep=" " SAMfiles}
         do
             configFileLine="$(basename ${file%.*}),~{organism},~{sequencingPlatform},${file}"