]>
Commit | Line | Data |
---|---|---|
12e6d563 | 1 | #!/bin/sh |
de3b7b4d | 2 | ############################################################################# |
3 | # rawqa.sh. Front-end script to run reconstruction from the grid chunks | |
4 | # Usage: | |
5 | # ./rawqa.sh <run_number> | |
6 | ############################################################################# | |
7 | # | |
8 | # modification history | |
9 | # version 1.0 July 2008 adapated from rec.C by M. Meoni | |
10 | # author Yves Schutz CERN | |
11 | # | |
12 | ||
de3b7b4d | 13 | # SET THE FOLLOWING PARAMETERS IF NEEDED: |
14 | # --------------------------------------- | |
de3b7b4d | 15 | # --------------------------------------- |
48360675 | 16 | kill -9 `ps | grep aliroot | awk '{print $1}'` |
de3b7b4d | 17 | |
35bb17ae | 18 | export RUNNUM=$1 |
de3b7b4d | 19 | |
20 | [ -z $RUNNUM ] && { echo "Please provide a run number..."; exit 1; } | |
21 | ||
22 | [ ! -e "$HOME/.globus/usercert.pem" ] && { echo "FAILED: There is no certificate in $HOME/.globus"; exit 1; } | |
23 | ||
584cf3a1 | 24 | #[ -e "/tmp/gclient_env_$UID" ] && { source /tmp/gclient_env_$UID; } |
25 | #echo 12========================== $LD_LIBRARY_PATH | |
de3b7b4d | 26 | alien-token-init |
584cf3a1 | 27 | source /tmp/gclient_env_$UID; |
de3b7b4d | 28 | |
29 | [ ! "$?" -eq "0" ] && { echo "FAILED: Token creation failed"; exit 1; } | |
30 | ||
31 | VERSION=1.0 | |
32 | TITLE="Standalone QA checking of Grid rawdata chunks. v$VERSION" | |
33 | ||
34 | # Retrieve the list of chunks from AliEn....... | |
649407ee | 35 | export BASEDIR="/alice/data/20*" |
36 | PATTERN="$RUNNUM/raw/*${RUNNUM}*.root" | |
de3b7b4d | 37 | aliensh -c "gbbox find $BASEDIR $PATTERN" > collection.tmp |
38 | ||
39 | [ `ls -al collection.tmp | awk '{print $5}'` -eq 0 ] && { echo "No chunks found for the given run"; exit 1; } | |
40 | rm -r collection.tmp2 | |
41 | # | |
42 | for ifile in `cat collection.tmp | grep root` ; do printf $ifile" "\|" "0" " >> collection.tmp2 ; done | |
43 | list=`cat collection.tmp2` | |
44 | [ -e collection.tmp2 ] && { rm -f collection.tmp2 ; } | |
45 | totChunks=`cat collection.tmp | wc -l` | |
46 | rm -f collection.tmp | |
47 | ||
48 | tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$ | |
49 | trap "rm -f $tempfile" 0 1 2 5 15 | |
50 | dialog --clear --no-cancel --title "$TITLE" \ | |
51 | --ok-label OK --checklist "$totChunks chunks available for run $RUNNUM (only the first 500 are shown). Select chunks for reconstruction" 18 80 10 \ | |
52 | $list 2> $tempfile | |
53 | ||
54 | CHUNKS=`cat $tempfile` | |
55 | echo "Selected chunks:" | |
56 | echo $CHUNKS | |
57 | echo | |
58 | ||
59 | #dialog --clear --no-cancel \ | |
60 | # --ok-label OK --radiolist "Program to run:" 15 20 5 "aliroot -b" \| on alieve \| off 2> $tempfile | |
61 | PROGRAM=aliroot #`cat $tempfile` | |
12e6d563 | 62 | |
de3b7b4d | 63 | # |
64 | for filename in $CHUNKS; do | |
de3b7b4d | 65 | CHUNK=`basename $filename | cut -d "." -f 1,2` |
b9a4f38c | 66 | BEG=`expr index "$CHUNK" .` |
649407ee | 67 | echo !!!!!!!!!!!!! $BEG |
b9a4f38c | 68 | BEG=`expr $BEG - 4` |
69 | SUBCHUNK=${CHUNK:$BEG} | |
35bb17ae | 70 | echo "Running QA for chunk $filename. Outputs will be stored in "$RUNNUM"/"$CHUNK". $SUBCHUNK" |
12e6d563 | 71 | [ -e $RUNNUM"/"$CHUNK ] && { rm -rf $RUNNUM"/"$CHUNK ; } |
de3b7b4d | 72 | mkdir -p $RUNNUM"/"$CHUNK |
12e6d563 | 73 | rm $RUNNUM"/"*.QA.$RUNNUM.$SUBCHUNK.root |
74 | rm $RUNNUM"/"QA.$SUBCHUNK.root | |
de3b7b4d | 75 | cd $RUNNUM"/"$CHUNK |
48360675 | 76 | $PROGRAM -b<<EOF |
4c39e638 | 77 | .L $ALICE_ROOT/prod/cosmic/rawqa.C+ |
4e056e45 | 78 | rawqa($filename, $RUNNUM) |
5aae1dab | 79 | .q |
4e056e45 | 80 | EOF |
81 | ||
5aae1dab | 82 | $PROGRAM -b <<EOF |
4e056e45 | 83 | AliQAManager * qam = AliQAManager::QAManager(AliQAv1::kRECMODE) ; |
84 | qam.Merge(atoi(gSystem->Getenv("RUNNUM"))) ; | |
5aae1dab | 85 | .q |
4e056e45 | 86 | EOF |
87 | rm *QA.$RUNNUM.root | |
c2df60cc | 88 | cd .. |
de3b7b4d | 89 | done |
4e056e45 | 90 | ls */Merged.QA.Data.root > merged.list |
91 | outfile="Merged.QA.Data."$RUNNUM".root" | |
5aae1dab | 92 | $PROGRAM -b <<EOF |
4e056e45 | 93 | .L $ALICE_ROOT/test/cosmic/MergeQAMerged.C |
94 | MergeQAMerged("$outfile", "merged.list") ; | |
5aae1dab | 95 | .q |
35bb17ae | 96 | EOF |
4e056e45 | 97 | rm -f merged.list |
98 | #$PROGRAM -b -q $ALICE_ROOT/test/cosmic/qasummary.C | |
99 | #$PROGRAM -b $ALICE_ROOT/test/QA/menuQA.C | |
35bb17ae | 100 | cd .. |