1 |
#!/bin/tcsh |
2 |
|
3 |
if ($#argv != 1) then |
4 |
echo must supply a single argument giving the number of days to run in each qsub script |
5 |
exit 1 |
6 |
endif |
7 |
set daychunk=$1 |
8 |
|
9 |
setenv JSOCROOT /home/jsoc/cvs/Development/JSOC |
10 |
|
11 |
set qsubtmp=/tmp27/$USER/qsubtmp |
12 |
mkdir -p $qsubtmp |
13 |
set q=j.q |
14 |
|
15 |
set curdir=$PWD |
16 |
set sourcedir=/surge40/PAS/D136007/mdi_log/lev0/MDI_log_01d |
17 |
set jsocdir=/home/jsoc/cvs/Development/JSOC/proj/dsdsmigr/apps |
18 |
set firstday=1065 |
19 |
set lastday=7013 |
20 |
|
21 |
set day=$firstday |
22 |
while ($day <= $lastday) |
23 |
if (-e $sourcedir/00$day.record.rdb) then |
24 |
mkdir $day |
25 |
ln -s $sourcedir/00$day.record.rdb $sourcedir/00$day.overview.fits $day/ |
26 |
endif |
27 |
@ day++ |
28 |
end |
29 |
|
30 |
echo directories created and populated with symlinks |
31 |
|
32 |
set day1=$firstday |
33 |
while ($day1 <= $lastday) |
34 |
@ day2=$day1 + $daychunk - 1 |
35 |
if ($day2 > $lastday) set day2=$lastday |
36 |
set subfile=subingest.$day1 |
37 |
echo '#\!/bin/csh' > $subfile |
38 |
echo 'setenv PATH' $JSOCROOT'/bin/$JSOC_MACHINE' >> $subfile |
39 |
echo 'cd' $PWD >> $subfile |
40 |
set day=$day1 |
41 |
while ($day <= $day2) |
42 |
if (-e $sourcedir/00$day.record.rdb) then |
43 |
echo ingest_dsds_to_drms in=$curdir/$day map=$jsocdir/nothing.map out=mdi.statusword -sv '>&' log.$day >> $subfile |
44 |
endif |
45 |
@ day++ |
46 |
end |
47 |
qsub -q $q -e $qsubtmp -o $qsubtmp $subfile |
48 |
@ day1 = $day1 + $daychunk |
49 |
end |
50 |
|
51 |
echo jobs submitted, start waiting |
52 |
|
53 |
set njobsrunning = `qstat -r -u $USER | grep "Full jobname:" | grep subingest | wc -l` |
54 |
while($njobsrunning > 0) |
55 |
sleep 60 |
56 |
set njobsrunning = `qstat -r -u $USER | grep "Full jobname:" | grep subingest | wc -l` |
57 |
end |
58 |
|
59 |
echo jobs finished, checking for errors |
60 |
grep -v "input records found" log.* > errlog |
61 |
if (-s errlog) then |
62 |
echo errors found, check file errlog |
63 |
exit 1 |
64 |
else |
65 |
echo successful completion |
66 |
exit 0 |
67 |
endif |