ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitProd/Processing/bin/status.sh
Revision: 1.7
Committed: Sun Jun 3 20:34:59 2012 UTC (12 years, 11 months ago) by paus
Content type: application/x-sh
Branch: MAIN
CVS Tags: Mit_030, Mit_029c, Mit_029b, Mit_030_pre1, Mit_029a, Mit_029, Mit_029_pre1
Changes since 1.6: +6 -7 lines
Log Message:
Beautifications.

File Contents

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