From f1e4e1cc2ad49a344b84366de48e3b4babe4cc0d Mon Sep 17 00:00:00 2001
From: Brad Sawatzky <brads@jlab.org>
Date: Fri, 24 Nov 2017 13:59:49 -0500
Subject: [PATCH] Add 'raw/../raw.copiedtotape' to coda file search path list

- This closes a few-minute long race window where a file will be on tape
  (and moved out of raw/ to raw.copiedtotape/), but is not yet in
  cache/.  This can be hit by online-replay folks who fire off replay a
  immediately after ending a run.
---
 SCRIPTS/COIN/PRODUCTION/replay_production_coin.C    | 1 +
 SCRIPTS/HMS/PRODUCTION/replay_production_hms.C      | 1 +
 SCRIPTS/HMS/PRODUCTION/replay_production_hms_kpp.C  | 1 +
 SCRIPTS/HMS/RASTER/replay_hms_raster_simple.C       | 1 +
 SCRIPTS/HMS/SCALERS/replay_hms_scalers.C            | 1 +
 SCRIPTS/HMS/STACK/replay_hms.C                      | 1 +
 SCRIPTS/HMS/TEST_STANDS/replay_hcal_test_stand.C    | 1 +
 SCRIPTS/HMS/TEST_STANDS/replay_hcer_test_stand.C    | 1 +
 SCRIPTS/HMS/TEST_STANDS/replay_hdc_test_stand.C     | 1 +
 SCRIPTS/HMS/TEST_STANDS/replay_hhodo_test_stand.C   | 1 +
 SCRIPTS/HMS/TEST_STANDS/replay_htrig_test_stand.C   | 1 +
 SCRIPTS/SHMS/EXAMPLES/replay_workshop_example.C     | 1 +
 SCRIPTS/SHMS/GEM/replay_gem_shms.C                  | 1 +
 SCRIPTS/SHMS/PRODUCTION/replay_production_shms.C    | 1 +
 SCRIPTS/SHMS/RASTER/replay_shms_raster_simple.C     | 1 +
 SCRIPTS/SHMS/SCALERS/replay_shms_scalers.C          | 1 +
 SCRIPTS/SHMS/STACK/replay_shms.C                    | 1 +
 SCRIPTS/SHMS/TEST_STANDS/replay_paero_test_stand.C  | 1 +
 SCRIPTS/SHMS/TEST_STANDS/replay_pcal_test_stand.C   | 1 +
 SCRIPTS/SHMS/TEST_STANDS/replay_pdc_test_stand.C    | 1 +
 SCRIPTS/SHMS/TEST_STANDS/replay_phgcer_test_stand.C | 1 +
 SCRIPTS/SHMS/TEST_STANDS/replay_phodo_test_stand.C  | 1 +
 SCRIPTS/SHMS/TEST_STANDS/replay_pngcer_test_stand.C | 1 +
 SCRIPTS/SHMS/TEST_STANDS/replay_ptrig_test_stand.C  | 1 +
 24 files changed, 24 insertions(+)

diff --git a/SCRIPTS/COIN/PRODUCTION/replay_production_coin.C b/SCRIPTS/COIN/PRODUCTION/replay_production_coin.C
index 212d6197..175e0bdd 100644
--- a/SCRIPTS/COIN/PRODUCTION/replay_production_coin.C
+++ b/SCRIPTS/COIN/PRODUCTION/replay_production_coin.C
@@ -20,6 +20,7 @@ void replay_production_coin (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   //const char* RunFileNamePattern = "raw/coin_all_%05d.dat";
diff --git a/SCRIPTS/HMS/PRODUCTION/replay_production_hms.C b/SCRIPTS/HMS/PRODUCTION/replay_production_hms.C
index 44be4f4d..8e75c5f4 100644
--- a/SCRIPTS/HMS/PRODUCTION/replay_production_hms.C
+++ b/SCRIPTS/HMS/PRODUCTION/replay_production_hms.C
@@ -20,6 +20,7 @@ void replay_production_hms(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/hms_replay_production_%d_%d.root";
diff --git a/SCRIPTS/HMS/PRODUCTION/replay_production_hms_kpp.C b/SCRIPTS/HMS/PRODUCTION/replay_production_hms_kpp.C
index 3887c4ed..a4d8f0a4 100644
--- a/SCRIPTS/HMS/PRODUCTION/replay_production_hms_kpp.C
+++ b/SCRIPTS/HMS/PRODUCTION/replay_production_hms_kpp.C
@@ -20,6 +20,7 @@ void replay_production_hms_kpp(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/hms_replay_production_%d_%d.root";
diff --git a/SCRIPTS/HMS/RASTER/replay_hms_raster_simple.C b/SCRIPTS/HMS/RASTER/replay_hms_raster_simple.C
index cddad69a..360c8b70 100644
--- a/SCRIPTS/HMS/RASTER/replay_hms_raster_simple.C
+++ b/SCRIPTS/HMS/RASTER/replay_hms_raster_simple.C
@@ -20,6 +20,7 @@ void replay_hms_raster_simple(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/hms_raster_simple_%d_%d.root";
diff --git a/SCRIPTS/HMS/SCALERS/replay_hms_scalers.C b/SCRIPTS/HMS/SCALERS/replay_hms_scalers.C
index a0e5f71f..00436895 100644
--- a/SCRIPTS/HMS/SCALERS/replay_hms_scalers.C
+++ b/SCRIPTS/HMS/SCALERS/replay_hms_scalers.C
@@ -20,6 +20,7 @@ void replay_hms_scalers(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/hms_replay_scalers_%d_%d.root";
diff --git a/SCRIPTS/HMS/STACK/replay_hms.C b/SCRIPTS/HMS/STACK/replay_hms.C
index cd4f3ada..0d0d0f2d 100644
--- a/SCRIPTS/HMS/STACK/replay_hms.C
+++ b/SCRIPTS/HMS/STACK/replay_hms.C
@@ -20,6 +20,7 @@ void replay_hms(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/hms_replay_%d_%d.root";
diff --git a/SCRIPTS/HMS/TEST_STANDS/replay_hcal_test_stand.C b/SCRIPTS/HMS/TEST_STANDS/replay_hcal_test_stand.C
index 940b1db5..d873bfaf 100644
--- a/SCRIPTS/HMS/TEST_STANDS/replay_hcal_test_stand.C
+++ b/SCRIPTS/HMS/TEST_STANDS/replay_hcal_test_stand.C
@@ -20,6 +20,7 @@ void replay_hcal_test_stand(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/hcal_replay_%d.root";
diff --git a/SCRIPTS/HMS/TEST_STANDS/replay_hcer_test_stand.C b/SCRIPTS/HMS/TEST_STANDS/replay_hcer_test_stand.C
index fb68058e..71a4f2b5 100644
--- a/SCRIPTS/HMS/TEST_STANDS/replay_hcer_test_stand.C
+++ b/SCRIPTS/HMS/TEST_STANDS/replay_hcer_test_stand.C
@@ -20,6 +20,7 @@ void replay_hcer_test_stand(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/hcer_replay_%d.root";
diff --git a/SCRIPTS/HMS/TEST_STANDS/replay_hdc_test_stand.C b/SCRIPTS/HMS/TEST_STANDS/replay_hdc_test_stand.C
index 6d9c7efa..9d477ef6 100644
--- a/SCRIPTS/HMS/TEST_STANDS/replay_hdc_test_stand.C
+++ b/SCRIPTS/HMS/TEST_STANDS/replay_hdc_test_stand.C
@@ -20,6 +20,7 @@ void replay_hdc_test_stand(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/hdc_replay_%d.root";
diff --git a/SCRIPTS/HMS/TEST_STANDS/replay_hhodo_test_stand.C b/SCRIPTS/HMS/TEST_STANDS/replay_hhodo_test_stand.C
index 6f54f58b..8cac55e0 100644
--- a/SCRIPTS/HMS/TEST_STANDS/replay_hhodo_test_stand.C
+++ b/SCRIPTS/HMS/TEST_STANDS/replay_hhodo_test_stand.C
@@ -20,6 +20,7 @@ void replay_hhodo_test_stand(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/hhodo_replay_%d.root";
diff --git a/SCRIPTS/HMS/TEST_STANDS/replay_htrig_test_stand.C b/SCRIPTS/HMS/TEST_STANDS/replay_htrig_test_stand.C
index b077d599..a2fb37e4 100644
--- a/SCRIPTS/HMS/TEST_STANDS/replay_htrig_test_stand.C
+++ b/SCRIPTS/HMS/TEST_STANDS/replay_htrig_test_stand.C
@@ -20,6 +20,7 @@ void replay_htrig_test_stand(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/htrig_replay_%d.root";
diff --git a/SCRIPTS/SHMS/EXAMPLES/replay_workshop_example.C b/SCRIPTS/SHMS/EXAMPLES/replay_workshop_example.C
index f4ec1dc8..9bf36bed 100644
--- a/SCRIPTS/SHMS/EXAMPLES/replay_workshop_example.C
+++ b/SCRIPTS/SHMS/EXAMPLES/replay_workshop_example.C
@@ -19,6 +19,7 @@ void replay_workshop_example(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/shms_replay_%d_%d.root";
diff --git a/SCRIPTS/SHMS/GEM/replay_gem_shms.C b/SCRIPTS/SHMS/GEM/replay_gem_shms.C
index 4fff3d22..40d8268e 100644
--- a/SCRIPTS/SHMS/GEM/replay_gem_shms.C
+++ b/SCRIPTS/SHMS/GEM/replay_gem_shms.C
@@ -22,6 +22,7 @@ void replay_gem_shms (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/shms_replay_gem_%d_%d.root";
diff --git a/SCRIPTS/SHMS/PRODUCTION/replay_production_shms.C b/SCRIPTS/SHMS/PRODUCTION/replay_production_shms.C
index eb8cdd9f..4460e2b1 100644
--- a/SCRIPTS/SHMS/PRODUCTION/replay_production_shms.C
+++ b/SCRIPTS/SHMS/PRODUCTION/replay_production_shms.C
@@ -20,6 +20,7 @@ void replay_production_shms (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/shms_replay_production_%d_%d.root";
diff --git a/SCRIPTS/SHMS/RASTER/replay_shms_raster_simple.C b/SCRIPTS/SHMS/RASTER/replay_shms_raster_simple.C
index 3aadc1c5..10f0a284 100644
--- a/SCRIPTS/SHMS/RASTER/replay_shms_raster_simple.C
+++ b/SCRIPTS/SHMS/RASTER/replay_shms_raster_simple.C
@@ -20,6 +20,7 @@ void replay_shms_raster_simple (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/shms_replay_raster_simple_%d_%d.root";
diff --git a/SCRIPTS/SHMS/SCALERS/replay_shms_scalers.C b/SCRIPTS/SHMS/SCALERS/replay_shms_scalers.C
index 1d7f88ef..d9d1435b 100644
--- a/SCRIPTS/SHMS/SCALERS/replay_shms_scalers.C
+++ b/SCRIPTS/SHMS/SCALERS/replay_shms_scalers.C
@@ -20,6 +20,7 @@ void replay_shms_scalers (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/shms_replay_scalers_%d_%d.root";
diff --git a/SCRIPTS/SHMS/STACK/replay_shms.C b/SCRIPTS/SHMS/STACK/replay_shms.C
index 82fb8684..44d8e749 100644
--- a/SCRIPTS/SHMS/STACK/replay_shms.C
+++ b/SCRIPTS/SHMS/STACK/replay_shms.C
@@ -20,6 +20,7 @@ void replay_shms (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/shms_replay_%d_%d.root";
diff --git a/SCRIPTS/SHMS/TEST_STANDS/replay_paero_test_stand.C b/SCRIPTS/SHMS/TEST_STANDS/replay_paero_test_stand.C
index 5fda63bd..69a8db21 100644
--- a/SCRIPTS/SHMS/TEST_STANDS/replay_paero_test_stand.C
+++ b/SCRIPTS/SHMS/TEST_STANDS/replay_paero_test_stand.C
@@ -20,6 +20,7 @@ void replay_paero_test_stand(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/paero_replay_%d.root";
diff --git a/SCRIPTS/SHMS/TEST_STANDS/replay_pcal_test_stand.C b/SCRIPTS/SHMS/TEST_STANDS/replay_pcal_test_stand.C
index ccd2012a..cf9d1ef9 100644
--- a/SCRIPTS/SHMS/TEST_STANDS/replay_pcal_test_stand.C
+++ b/SCRIPTS/SHMS/TEST_STANDS/replay_pcal_test_stand.C
@@ -20,6 +20,7 @@ void replay_pcal_test_stand(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/pcal_replay_%d.root";
diff --git a/SCRIPTS/SHMS/TEST_STANDS/replay_pdc_test_stand.C b/SCRIPTS/SHMS/TEST_STANDS/replay_pdc_test_stand.C
index e6db706e..a336c89f 100644
--- a/SCRIPTS/SHMS/TEST_STANDS/replay_pdc_test_stand.C
+++ b/SCRIPTS/SHMS/TEST_STANDS/replay_pdc_test_stand.C
@@ -20,6 +20,7 @@ void replay_pdc_test_stand(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/pdc_replay_%d.root";
diff --git a/SCRIPTS/SHMS/TEST_STANDS/replay_phgcer_test_stand.C b/SCRIPTS/SHMS/TEST_STANDS/replay_phgcer_test_stand.C
index 3d790723..bbe3121b 100644
--- a/SCRIPTS/SHMS/TEST_STANDS/replay_phgcer_test_stand.C
+++ b/SCRIPTS/SHMS/TEST_STANDS/replay_phgcer_test_stand.C
@@ -20,6 +20,7 @@ void replay_phgcer_test_stand(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/phgcer_replay_%d.root";
diff --git a/SCRIPTS/SHMS/TEST_STANDS/replay_phodo_test_stand.C b/SCRIPTS/SHMS/TEST_STANDS/replay_phodo_test_stand.C
index c005cd16..cdf1dfc1 100644
--- a/SCRIPTS/SHMS/TEST_STANDS/replay_phodo_test_stand.C
+++ b/SCRIPTS/SHMS/TEST_STANDS/replay_phodo_test_stand.C
@@ -20,6 +20,7 @@ void replay_phodo_test_stand(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/phodo_replay_%d.root";
diff --git a/SCRIPTS/SHMS/TEST_STANDS/replay_pngcer_test_stand.C b/SCRIPTS/SHMS/TEST_STANDS/replay_pngcer_test_stand.C
index ded2f609..78b2194c 100644
--- a/SCRIPTS/SHMS/TEST_STANDS/replay_pngcer_test_stand.C
+++ b/SCRIPTS/SHMS/TEST_STANDS/replay_pngcer_test_stand.C
@@ -20,6 +20,7 @@ void replay_pngcer_test_stand(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/pngcer_replay_%d.root";
diff --git a/SCRIPTS/SHMS/TEST_STANDS/replay_ptrig_test_stand.C b/SCRIPTS/SHMS/TEST_STANDS/replay_ptrig_test_stand.C
index eaf78bf7..31eb132b 100644
--- a/SCRIPTS/SHMS/TEST_STANDS/replay_ptrig_test_stand.C
+++ b/SCRIPTS/SHMS/TEST_STANDS/replay_ptrig_test_stand.C
@@ -20,6 +20,7 @@ void replay_ptrig_test_stand(Int_t RunNumber=0, Int_t MaxEvent=0) {
   vector<TString> pathList;
     pathList.push_back(".");
     pathList.push_back("./raw");
+    pathList.push_back("./raw/../raw.copiedtotape");
     pathList.push_back("./cache");
 
   const char* ROOTFileNamePattern = "ROOTfiles/ptrig_replay_%d.root";
-- 
GitLab