Workflow 2347, Stage 1
| Priority | 50 | 
| Processors | 1 | 
| Wall seconds | 10800 | 
| Image | /cvmfs/singularity.opensciencegrid.org/fermilab/fnal-wn-sl7:latest | 
| RSS bytes | 6291456000 (6000 MiB) | 
| Max distance for inputs | 30.0 | 
| Enabled input RSEs | 
CERN_PDUNE_EOS, DUNE_CA_SFU, DUNE_CERN_EOS, DUNE_ES_PIC, DUNE_FR_CCIN2P3_DISK, DUNE_IN_TIFR, DUNE_IT_INFN_CNAF, DUNE_UK_GLASGOW, DUNE_UK_LANCASTER_CEPH, DUNE_UK_MANCHESTER_CEPH, DUNE_US_BNL_SDCC, DUNE_US_FNAL_DISK_STAGE, FNAL_DCACHE, FNAL_DCACHE_STAGING, FNAL_DCACHE_TEST, MONTECARLO, NIKHEF, PRAGUE, QMUL, RAL-PP, RAL_ECHO, SURFSARA, T3_US_NERSC | 
| Enabled output RSEs | 
CERN_PDUNE_EOS, DUNE_CA_SFU, DUNE_CERN_EOS, DUNE_ES_PIC, DUNE_FR_CCIN2P3_DISK, DUNE_IN_TIFR, DUNE_IT_INFN_CNAF, DUNE_UK_GLASGOW, DUNE_UK_LANCASTER_CEPH, DUNE_UK_MANCHESTER_CEPH, DUNE_US_BNL_SDCC, DUNE_US_FNAL_DISK_STAGE, FNAL_DCACHE, FNAL_DCACHE_STAGING, FNAL_DCACHE_TEST, NIKHEF, PRAGUE, QMUL, RAL-PP, RAL_ECHO, SURFSARA, T3_US_NERSC | 
| Enabled sites | 
BR_CBPF, CA_SFU, CERN, CH_UNIBE-LHEP, CZ_FZU, ES_CIEMAT, ES_PIC, FR_CCIN2P3, IT_CNAF, NL_NIKHEF, NL_SURFsara, UK_Bristol, UK_Brunel, UK_Durham, UK_Edinburgh, UK_Glasgow, UK_Lancaster, UK_Liverpool, UK_Manchester, UK_Oxford, UK_QMUL, UK_RAL-PPD, UK_RAL-Tier1, UK_Sheffield, US_Colorado, US_FNAL-FermiGrid, US_FNAL-T1, US_Michigan, US_PuertoRico, US_SU-ITS, US_Swan, US_UChicago, US_UConn-HPC, US_UCSD, US_Wisconsin | 
| Scope | usertests | 
| Events for this stage | 
Output patterns
|   | Destination | Pattern | Lifetime | For next stage | RSE expression | 
|---|
| 1 | https://fndcadoor.fnal.gov:2880/dune/scratch/users/chappell/pdhd_1gev/fnal/02347/1 | hits_*.root |   |   |   | 
| 2 | https://fndcadoor.fnal.gov:2880/dune/scratch/users/chappell/pdhd_1gev/fnal/02347/1 | mc*.root |   |   |   | 
| 3 | https://fndcadoor.fnal.gov:2880/dune/scratch/users/chappell/pdhd_1gev/fnal/02347/1 | events*.root |   |   |   | 
Environment variables
| Name | Value | 
|---|
| INPUT_TAR_DIR_LOCAL | /cvmfs/fifeuser2.opensciencegrid.org/sw/dune/2d6f59b0bb7e6948eca3a60ebd38900c142acbdf | 
| NUM_EVENTS | 3 | 
| PDHD_BEAM_SKIP | 0 | 
File states
| Total files | Finding | Unallocated | Allocated | Outputting | Processed | Not found | Failed | 
|---|
|
| 190 | 0 | 20 | 0 | 0 | 170 | 0 | 0 | 
Job states
| Total | Submitted | Started | Processing | Outputting | Finished | Notused | Aborted | Stalled | Jobscript error | Outputting failed | None processed | 
|---|
| 288 | 0 | 0 | 0 | 0 | 237 | 27 | 0 | 0 | 8 | 15 | 1 | 
 
 
RSEs used
| Name | Inputs | Outputs | 
|---|
| DUNE_US_FNAL_DISK_STAGE | 193 | 0 | 
| None | 0 | 510 | 
Stats of processed input files as CSV or JSON, and of uploaded output files as CSV or JSON (up to 10000 files included)
File reset events, by site
| Site | Allocated | Outputting | 
|---|
| US_UChicago | 0 | 11 | 
| US_FNAL-FermiGrid | 0 | 3 | 
| US_UCSD | 0 | 1 | 
Jobscript
#!/bin/bash
# fcl file and DUNE software version/qualifier to be used
FCL_FILE=prod_beam_cosmics_1GeV_protodunehd.fcl
DUNE_VERSION=${DUNE_VERSION:-v10_10_00d00}
DUNE_QUALIFIER=${DUNE_QUALIFIER:-e26:prof}
export FW_SEARCH_PATH=.:$INPUT_TAR_DIR_LOCAL:$FW_SEARCH_PATH
export FHICL_FILE_PATH=.:$INPUT_TAR_DIR_LOCAL:$FHICL_FILE_PATH
export WIRECELL_PATH=./wire-cell-cfg:$INPUT_TAR_DIR_LOCAL/wire-cell-cfg:$WIRECELL_PATH
echo $FW_SEARCH_PATH
cp $INPUT_TAR_DIR_LOCAL/*.fcl .
cp $INPUT_TAR_DIR_LOCAL/*.xml .
cp $INPUT_TAR_DIR_LOCAL/setup-grid .
cp -r $INPUT_TAR_DIR_LOCAL/localProducts* .
cp -r $INPUT_TAR_DIR_LOCAL/wire-cell-cfg .
# number of events to process from the input file
if [ "$NUM_EVENTS" != "" ] ; then
 events_option="-n $NUM_EVENTS --nskip $PDHD_BEAM_SKIP"
fi
echo "options: $events_option"
# First get an unprocessed file from this stage
did_pfn_rse=`$JUSTIN_PATH/justin-get-file`
if [ "$did_pfn_rse" = "" ] ; then
  echo "Nothing to process - exit jobscript"
  exit 0
fi
# Keep a record of all input DIDs, for pdjson2meta file -> DID mapping
echo "$did_pfn_rse" | cut -f1 -d' ' >>all-input-dids.txt
# pfn is also needed when creating justin-processed-pfns.txt
pfn=`echo $did_pfn_rse | cut -f2 -d' '`
echo "Input PFN = $pfn"
# Setup DUNE environment
source /cvmfs/dune.opensciencegrid.org/products/dune/setup_dune.sh
# the xroot lib for streaming non-root files is in testproducts, 
# so add it to the start of the path
export PRODUCTS=/cvmfs/dune.opensciencegrid.org/products/dune/testproducts:${PRODUCTS}
setup dunesw "$DUNE_VERSION" -q "$DUNE_QUALIFIER"
export OMP_NUM_THREADS=${JUSTIN_PROCESSORS} 
source setup-grid
mrbslp
# Construct outFile from input $pfn 
now=$(date -u +"%Y-%m-%dT_%H%M%SZ")
Ffname=`echo $pfn | awk -F/ '{print $NF}'`
fname=`echo $Ffname | awk -F. '{print $1}'`
campaign="justIN.r${JUSTIN_WORKFLOW_ID}s${JUSTIN_STAGE_ID}"
(
# Do the scary preload stuff in a subshell!
export LD_PRELOAD=${XROOTD_LIB}/libXrdPosixPreload.so
echo "$LD_PRELOAD"
unique=`uuidgen`
lar -c $FCL_FILE $events_option -o pdhd_gen_${unique}.root "$pfn" > ${fname}_pdhd_${now}.log 2>&1 \
&& lar -c custom_g4.fcl -s pdhd_gen_${unique}.root -o pdhd_g4_${unique}.root > ${fname}_pdhd_g4_${now}.log 2>&1 \
&& lar -c custom_detsim.fcl -s pdhd_g4_${unique}.root -o pdhd_detsim_${unique}.root > ${fname}_pdhd_detsim_${now}.log 2>&1 \
&& lar -c pandora.fcl -s pdhd_detsim_${unique}.root -o pdhd_reco_${unique}.root > ${fname}_pdhd_reco_${now}.log 2>&1
mv hits.root hits_${unique}.root
mv hits3D.root hits3D_${unique}.root
mv mc.root mc_${unique}.root
mv events.root events_${unique}.root
)
# Subshell exits with exit code of last command
larExit=$?
echo "lar exit code $larExit"
echo "$pfn" > justin-processed-pfns.txt
# Create compressed tar file with all log files 
tar zcf `echo "$JUSTIN_JOBSUB_ID.logs.tgz" | sed 's/@/_/g'` *.log
exit $larExit