]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/matita/scripts/crontab.sh
ocaml 3.09 transition
[helm.git] / helm / matita / scripts / crontab.sh
index 67edb84e25211a91c760d49a68dd13679c6abba8..ee7c181dbd1e0be73f11f4bbad039b6fdedc7bec 100644 (file)
@@ -1,8 +1,11 @@
 #!/bin/bash
-MARK=`date +%Y%m%d`
-LASTMARK=`date -d yesterday +%Y%m%d`
-TMPDIRNAME=.__${MARK}_crontab
+TODAY=`date +%Y%m%d`
+YESTERDAY=`date -d yesterday +%Y%m%d`
+TMPDIRNAME=.__${TODAY}_crontab
 CVSROOT=":ext:$USER@marcello.cs.unibo.it:/home/faculty/PROJECTS/cvs/helm"
+SHELLTIME2CENTSPHP=helm/matita/scripts/shell_time2cents.php
+SHELLADDERPHP=helm/matita/scripts/shell_adder.php
+COMMONPHP=helm/matita/scripts/public_html/common.php
 
 OLD=$PWD
 rm -rf $TMPDIRNAME 
@@ -11,46 +14,57 @@ cd $TMPDIRNAME
 cvs -d $CVSROOT co helm/matita/scripts 1>/dev/null 2>/dev/null
 helm/matita/scripts/profile_cvs.sh 2> LOG
 
-CUR_TIME=`echo "select mark, SUM(TIME_TO_SEC(time)) from bench where mark = \"$MARK\" group by mark;" | mysql -u helm -h mowgli.cs.unibo.it matita | tail -n 1 | awk '{print $2}'`
-OLD_TIME=`echo "select mark, SUM(TIME_TO_SEC(time)) from bench where mark = \"$LASTMARK\" group by mark;" | mysql -u helm -h mowgli.cs.unibo.it matita | tail -n 1 | awk '{print $2}'`
+MARK=`echo "select distinct mark from bench where mark like '$TODAY%' order by mark" | mysql -u helm matita | tail -n 1`
+LASTMARK=`echo "select distinct mark from bench where mark like '$YESTERDAY%' order by mark" | mysql -u helm matita | tail -n 1`
 
-if [ -z "$CUR_TIME" -o -z "$OLD_TIME" ]; then
-  echo "No benchamks records for $MARK"
+if [ -z "$MARK" ]; then
+  echo "No benchmark records for $TODAY"
   exit 1
 fi
 
-((DELTA=$CUR_TIME - $OLD_TIME))
-if [ $DELTA -lt 0 ]; then
-  ((DELTA=$DELTA * -1))
+if [ -z "$LASTMARK" ]; then
+  echo "No benchmark records for $YESTERDAY"
+  exit 1
 fi
-((PERC=100 * $DELTA))
-((PERC=$PERC / $OLD_TIME))
 
+CUR_TIME=`/usr/bin/php4 -c /etc/php4/apache/php.ini -f $SHELLADDERPHP -- $COMMONPHP "select SEC_TO_TIME(SUM(TIME_TO_SEC(time))) from bench where mark = \"$MARK\" group by mark;"`
+OLD_TIME=`/usr/bin/php4 -c /etc/php4/apache/php.ini -f $SHELLADDERPHP -- $COMMONPHP  "select SEC_TO_TIME(SUM(TIME_TO_SEC(time))) from bench where mark = \"$LASTMARK\" group by mark;"`
+
+CUR_CENTS=`/usr/bin/php4 -c /etc/php4/apache/php.ini -f $SHELLTIME2CENTSPHP -- $COMMONPHP $CUR_TIME`
+OLD_CENTS=`/usr/bin/php4 -c /etc/php4/apache/php.ini -f $SHELLTIME2CENTSPHP -- $COMMONPHP $OLD_TIME`
+
+((DELTA=$CUR_CENTS-$OLD_CENTS))
+if [ $DELTA -lt 0 ]; then
+  PERC=0
+else
+  ((PERC=100 * $DELTA))
+  ((PERC=$PERC / $OLD_CENTS))
+fi
 if [ $PERC -ge 5 ]; then
   cat <<EOT
   REPORT FOR `date`
-  http://mowgli.cs.unibo.it/tassi/bench.php
+  http://mowgli.cs.unibo.it/~tassi/bench.php
 
-  PREFORMANCE LOSS DETECTED
+  PERFORMANCE LOSS DETECTED (MARK $MARK vs MARK $LASTMARK)
   is $CUR_TIME sec 
   was $OLD_TIME sec
 
 EOT
 fi
 
-CUR_FAIL=`echo "select count(distinct test) from bench where mark = \"$MARK\" and result = 'fail';" | mysql -u helm -h mowgli.cs.unibo.it matita | tail -n 1`
-OLD_FAIL=`echo "select count(distinct test) from bench where mark = \"$LASTMARK\" and result = 'fail';" | mysql -u helm -h mowgli.cs.unibo.it matita | tail -n 1`
+CUR_FAIL=`/usr/bin/php4 -c /etc/php4/apache/php.ini -f $SHELLADDERPHP -- $COMMONPHP "select count(distinct test) from bench where mark = \"$MARK\" and result = 'fail';"`
+OLD_FAIL=`/usr/bin/php4 -c /etc/php4/apache/php.ini -f $SHELLADDERPHP -- $COMMONPHP "select count(distinct test) from bench where mark = \"$LASTMARK\" and result = 'fail';"`
 
 if [ $CUR_FAIL -gt $OLD_FAIL ]; then
   cat <<EOT
   REPORT FOR `date`
-  http://mowgli.cs.unibo.it/tassi/bench.php
+  http://mowgli.cs.unibo.it/~tassi/bench.php
 
-  MORE BROKEN TESTS DETECTED
+  MORE BROKEN TESTS DETECTED (MARK $MARK vs MARK $LASTMARK)
   now broken:
   `echo "select distinct test from bench where mark = \"$MARK\" and result = 'fail';" | mysql -u helm -h mowgli.cs.unibo.it matita`
   were broken:
-  `echo "select distinct test from bench where mark = \"$OLDMARK\" and result = 'fail';" | mysql -u helm -h mowgli.cs.unibo.it matita`
+  `echo "select distinct test from bench where mark = \"$LASTMARK\" and result = 'fail';" | mysql -u helm -h mowgli.cs.unibo.it matita`
   
 EOT