diff --git a/Trigger/TrigValidation/TrigUpgradeTest/test/exec_TrigUpgradeTest_art_athenaMT.sh b/Trigger/TrigValidation/TrigUpgradeTest/test/exec_TrigUpgradeTest_art_athenaMT.sh
index 188a5c16ae267d45bc0bebdbc33768ff01f706ae..446b18be6bfd19a2a7a8e6eccffbdb14460c973c 100755
--- a/Trigger/TrigValidation/TrigUpgradeTest/test/exec_TrigUpgradeTest_art_athenaMT.sh
+++ b/Trigger/TrigValidation/TrigUpgradeTest/test/exec_TrigUpgradeTest_art_athenaMT.sh
@@ -84,6 +84,11 @@ fi
 
 ######################################
 
+# Generate empty PoolFileCatalog.xml - this prevents incorrect handling of crashes on the grid
+art.py createpoolfile
+
+######################################
+
 if [[ ${FROMPICKLE} == "1" ]]; then
   echo "Running athena from pickle file ${JOBOPTION} with the command:"
   (set -x
diff --git a/Trigger/TrigValidation/TrigUpgradeTest/test/exec_TrigUpgradeTest_art_post.sh b/Trigger/TrigValidation/TrigUpgradeTest/test/exec_TrigUpgradeTest_art_post.sh
index d082757eca00db4326b37a27e0776014db32349b..470f1d7b0d61c890ebc0a97b81ea1db6bd67341c 100755
--- a/Trigger/TrigValidation/TrigUpgradeTest/test/exec_TrigUpgradeTest_art_post.sh
+++ b/Trigger/TrigValidation/TrigUpgradeTest/test/exec_TrigUpgradeTest_art_post.sh
@@ -78,7 +78,7 @@ timeout 5m check_log.pl --config checklogTrigUpgradeTest.conf --showexcludestats
 echo "art-result: ${PIPESTATUS[0]} CheckLog"
 
 echo $(date "+%FT%H:%M %Z")"     Running checklog for warnings"
-timeout 5m check_log.pl --config checklogTrigUpgradeTest.conf --noerrors --warnings --showexcludestats ${JOB_LOG} 2>&1 | tee warnings.log
+timeout 5m check_log.pl --config checklogTrigUpgradeTest.conf --noerrors --warnings --showexcludestats ${JOB_LOG} >warnings.log 2>&1
 
 ### PERFMON
 
@@ -91,7 +91,7 @@ fi
 
 if [ -f expert-monitoring.root ]; then
   echo $(date "+%FT%H:%M %Z")"     Running histSizes"
-  timeout 5m histSizes.py -t expert-monitoring.root 2>&1 | tee histSizes.log
+  timeout 5m histSizes.py -t expert-monitoring.root >histSizes.log 2>&1
 fi
 
 ### MAKE LOG TAIL FILE
@@ -119,7 +119,7 @@ mv ${REGTESTREF_BASENAME} ${REGTESTREF_BASENAME}.new
 
 if [ -f ${REF_FOLDER}/expert-monitoring.root ]; then
   echo $(date "+%FT%H:%M %Z")"     Running rootcomp"
-  timeout 10m rootcomp.py --skip="TIME_" ${REF_FOLDER}/expert-monitoring.root expert-monitoring.root 2>&1 | tee rootcompout.log
+  timeout 10m rootcomp.py --skip="TIME_" ${REF_FOLDER}/expert-monitoring.root expert-monitoring.root >rootcompout.log 2>&1
   echo "art-result: ${PIPESTATUS[0]} RootComp"
 else
   echo $(date "+%FT%H:%M %Z")"     No reference expert-monitoring.root found in ${REF_FOLDER}"
diff --git a/Trigger/TrigValidation/TrigValTools/bin/chainDumpWorkaround.sh b/Trigger/TrigValidation/TrigValTools/bin/chainDumpWorkaround.sh
index 58400bd4e88430fb3e611e350d665a229fc33185..08132c9beed8ced000ce24911c5aa9e2ff5df478 100755
--- a/Trigger/TrigValidation/TrigValTools/bin/chainDumpWorkaround.sh
+++ b/Trigger/TrigValidation/TrigValTools/bin/chainDumpWorkaround.sh
@@ -20,20 +20,28 @@ fi
 #
 rootScript="TFile f(\"$histFile\"); \
 TH2* h2d=(TH2*)f.Get(\"TrigSteer_HLT/SignatureAcceptance\"); \
+if (!h2d) exit(1); \
 int biny=h2d->GetYaxis()->FindBin(\"Output\"); \
 TH1* h1d=(TH1*)h2d->ProjectionX(\"\",biny,biny); \
 for (int i=0; i<=h1d->GetNbinsX(); ++i) {int num=h1d->GetBinContent(i); printf(\"%s %d\\n\",h1d->GetXaxis()->GetBinLabel(i),num);}"
 
 root -b -l -q -e "${rootScript}" | grep 'HLT_' | sort > HLTChain.txt
+if [[ ${PIPESTATUS[0]} -ne 0 ]]; then
+  echo "WARNING Failed to extract HLTChain counts from ${histFile}"
+fi
 
 #
 # Total number of events
 #
 rootScript="TFile f(\"$histFile\"); \
 TH2* h2d=(TH2*)f.Get(\"TrigSteer_HLT/SignatureAcceptance\"); \
+if (!h2d) exit(1); \
 int binx=h2d->GetXaxis()->FindBin(\"All\"); \
 int biny=h2d->GetYaxis()->FindBin(\"L1\"); \
 printf(\"%d\\n\",(int)h2d->GetBinContent(binx,biny));"
 
 root -b -l -q -e "${rootScript}" | grep -v '^$' > TotalEventsProcessed.txt
+if [[ ${PIPESTATUS[0]} -ne 0 ]]; then
+  echo "WARNING Failed to extract TotalEventsProcessed from ${histFile}"
+fi
 
diff --git a/Trigger/TrigValidation/TriggerTest/test/exec_art_triggertest_post.sh b/Trigger/TrigValidation/TriggerTest/test/exec_art_triggertest_post.sh
index de2f79ad92b3b81baa35cd41da7f97dfa9f0de3b..b78ca98d689623ee00294fbd50677f83c9af4f63 100755
--- a/Trigger/TrigValidation/TriggerTest/test/exec_art_triggertest_post.sh
+++ b/Trigger/TrigValidation/TriggerTest/test/exec_art_triggertest_post.sh
@@ -43,7 +43,7 @@ timeout 5m check_log.pl --config checklogTriggerTest.conf --showexcludestats ${J
 echo "art-result: ${PIPESTATUS[0]} CheckLog"
 
 echo $(date "+%FT%H:%M %Z")"     Running checklog for warnings"
-timeout 5m check_log.pl --config checklogTriggerTest.conf --noerrors --warnings --showexcludestats ${JOB_LOG} 2>&1 | tee warnings.log
+timeout 5m check_log.pl --config checklogTriggerTest.conf --noerrors --warnings --showexcludestats ${JOB_LOG} >warnings.log 2>&1
 
 ### PERFMON
 
@@ -53,7 +53,7 @@ timeout 5m perfmon.py -f 0.90 ntuple.pmon.gz
 ### HISTOGRAM COUNT
 
 echo $(date "+%FT%H:%M %Z")"     Running histSizes"
-timeout 5m histSizes.py -t expert-monitoring.root 2>&1 | tee histSizes.log
+timeout 5m histSizes.py -t expert-monitoring.root >histSizes.log 2>&1
 
 ### CHAINDUMP
 
@@ -82,7 +82,7 @@ mv athena.regtest athena.regtest.new
 
 if [ -f ${REF_FOLDER}/expert-monitoring.root ]; then
   echo $(date "+%FT%H:%M %Z")"     Running rootcomp"
-  timeout 10m rootcomp.py ${REF_FOLDER}/expert-monitoring.root expert-monitoring.root 2>&1 | tee rootcompout.log
+  timeout 10m rootcomp.py ${REF_FOLDER}/expert-monitoring.root expert-monitoring.root >rootcompout.log 2>&1
   echo "art-result: ${PIPESTATUS[0]} RootComp"
   echo $(date "+%FT%H:%M %Z")"     Running checkcounts"
   timeout 10m trigtest_checkcounts.sh 0 expert-monitoring.root ${REF_FOLDER}/expert-monitoring.root HLT 2>&1 | tee checkcountout.log
diff --git a/Trigger/TrigValidation/TriggerTest/test/exec_athena_art_trigger_validation.sh b/Trigger/TrigValidation/TriggerTest/test/exec_athena_art_trigger_validation.sh
index 562ca5aaf4813f92e6ccee83bf8daac64062290b..13c772a88d864dbdb81c68eaa4921fdce2ce1934 100755
--- a/Trigger/TrigValidation/TriggerTest/test/exec_athena_art_trigger_validation.sh
+++ b/Trigger/TrigValidation/TriggerTest/test/exec_athena_art_trigger_validation.sh
@@ -59,6 +59,11 @@ fi
 
 ######################################
 
+# Generate empty PoolFileCatalog.xml - this prevents incorrect handling of crashes on the grid
+art.py createpoolfile
+
+######################################
+
 echo "Running athena command:"
 if [[ $INPUT == 'data' ]]; then
   (set -x