ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitProd/Processing/bin/status.sh
Revision: 1.6
Committed: Tue Feb 28 11:54:36 2012 UTC (13 years, 2 months ago) by paus
Content type: application/x-sh
Branch: MAIN
CVS Tags: Mit_028a, Mit_028, Mit_027a, Mit_027, Mit_026, Mit_025e, Mit_025d
Changes since 1.5: +10 -1 lines
Log Message:
Last updates.

File Contents

# Content
1 #!/bin/bash
2 #---------------------------------------------------------------------------------------------------
3 # Determining the status of a given production sample
4 #---------------------------------------------------------------------------------------------------
5 H=`basename $0`
6
7 CATALOG=$HOME/catalog
8 BOOK=$1
9 DATASET=$2
10 PRINTOPT=$3
11
12 if [ "$PRINTOPT" == "-header" ]
13 then
14 date=`date`
15 printf "\nUpdated: $date\n\n%s\n" \
16 'BOOK SAMPLE All T2(Catalg) ToDo T3(Catalg) ToDoT3'
17 printf "%s\n" \
18 '---------------------------------------------------------------------------------------------'
19 fi
20
21 DIR1=/pnfs/cmsaf.mit.edu/t2bat/cms/store/user/paus/$BOOK
22 DIR2=/mnt/hadoop/cms/store/user/paus/$BOOK
23 T3DIR=/mnt/hadoop/cmsprod/$BOOK
24 if [ "`list $DIR1 $DIR2 2> /dev/null | grep $DATASET`" != "" ]
25 then
26 #echo wc -l $BOOK/$DATASET.lfns '2> /dev/null | cut -d ' ' -f 1'
27 if ! [ -e "$BOOK/$DATASET.lfns" ]
28 then
29 echo " Warning: complete file list not available. Creating it now."
30 echo " -> findSamples.py --cmssw=mc --pattern=$DATASET --remakeLfns=1 --complete --exe"
31 findSamples.py --cmssw=mc --pattern=$DATASET --remakeLfns=1 --complete --exe >& /dev/null
32 fi
33 nAll=`wc -l $BOOK/$DATASET.lfns 2> /dev/null | cut -d ' ' -f 1`
34 # how many are done on the Tier-2
35 #echo list $DIR1/$DATASET $DIR2/$DATASET '2> /dev/null | grep root | wc -l'
36 nDone=`list $DIR1/$DATASET $DIR2/$DATASET 2> /dev/null | grep root | wc -l`
37 # how many are done on the Tier-2
38 #echo cat $CATALOG/t2mit/$BOOK/$DATASET/Files '2> /dev/null | grep -v ^# | wc -l'
39 nCata=`cat $CATALOG/t2mit/$BOOK/$DATASET/Files 2> /dev/null | grep -v ^# | wc -l`
40 # how many are missing on the Tier-2
41 nMissing=$(( ${nAll}-${nDone} ))
42 # how many are available on the Tier-3
43 nDoneT3=`list $T3DIR/$DATASET 2> /dev/null | grep root | wc -l`
44 # how many are done on the Tier-3
45 nCataT3=`cat $CATALOG/local/$BOOK/$DATASET/Files 2> /dev/null | grep -v ^# | wc -l`
46 # how many are missing on the Tier-3
47 nMissingT3=0
48 if [ $nDoneT3 -gt 0 ]
49 then
50 nMissingT3=$(( ${nDone}-${nDoneT3} ))
51 fi
52 # event number, sample and event sizes
53 nEvents=`cat $BOOK/$DATASET.lfns 2> /dev/null | awk '{n=n+$3} END {print n}'`
54 size=0
55 if [ "$nEvents" != "" ] && [ "`list $DIR1/$DATASET DIR2/$DATASET 2> /dev/null`" != "" ]
56 then
57 size=`list $DIR1/$DATASET $DIR2/$DATASET 2> /dev/null | grep root | awk '{s=s+$1} END {print s/1024./1024./1024.}'`
58 fi
59 sizePerEvent=0
60 if [ "$nEvents" != "" ] && [ $nEvents -gt 0 ]
61 then
62 sizePerEvent=`echo $nEvents $size | awk '{print $2*1024*1024/$1}'`
63 fi
64
65 # print the result
66 #echo " ECHO -- " \
67 # $BOOK $DATASET \
68 # $nAll $nDone $nCata $nMissing $nDoneT3 $nCataT3 $nMissingT3 $nEvents $size $sizePerEvent
69 printf "%-11s %-28s %6d %6d(%6d) %6d - %6d(%6d) %6d %12d ev, %8.2f GB, %5.1f kB/ev\n" \
70 $BOOK $DATASET \
71 $nAll $nDone $nCata $nMissing $nDoneT3 $nCataT3 $nMissingT3 $nEvents $size $sizePerEvent
72 fi
73
74 # if [ $nDone -gt $nCata ]
75 # then
76 # echo "catalog.sh -ceg `basename $BOOK` $DATASET --retry"
77 # catalog.sh -ceg `basename $BOOK` $DATASET --retry
78 # fi
79
80 exit 0