You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by ka...@apache.org on 2006/11/24 09:35:06 UTC
svn commit: r478802 [2/3] - in /db/derby/code/trunk/tools/testing/reporting:
./ Failures/ TEMPLATES/ scripts/ scripts/gnuplot/
Added: db/derby/code/trunk/tools/testing/reporting/scripts/doplot_all
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/doplot_all?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/doplot_all (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/doplot_all Fri Nov 24 00:35:04 2006
@@ -0,0 +1,112 @@
+#!/bin/bash
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts"
+. ${TOOLDIR}/env
+
+VAR=$1
+# Only accepts _last20
+
+GNUPLOT=/usr/local/bin/gnuplot
+
+# Get the list of testsuite we are running:
+TESTLISTFILE="${DERBYDIR}/testing/testlist"
+SUITES=`gawk '{ print $1 }' ${TESTLISTFILE} | grep -v "^#"`
+
+# Get the set of platforms
+cd ${DERBYDIR}/testing/Full/plot
+PLATFORMS=`ls ${DERBYDIR}/testing/testlog`
+NPLFS=`echo ${PLATFORMS} | wc -w`
+echo ${PLATFORMS}
+
+GNUPLOTCMD="_GPLCMD_$$"
+
+TITLE=`echo ${DERBYDIR} | gawk -F / '{ print $NF }'`
+echo "<html>" > plot${VAR}.html
+echo "<head>" >> plot${VAR}.html
+echo "<meta content=\"text/html; charset=ISO-8859-1\" http-equiv=\"content-type\">" \
+ >> plot${VAR}.html
+echo "<title>${TITLE} - Duration plot</title>" >> plot${VAR}.html
+echo "</head>" >> plot${VAR}.html
+echo "<body>" >> plot${VAR}.html
+CREDTTM=`date`
+echo "<b>${TITLE} duration vs. baseline - All platforms per testsuite.</b> <i>(${CREDTTM})</i><br>" >> plot${VAR}.html
+for SUITE in ${SUITES}
+do
+ echo ${SUITE}
+ # Create the plot command:
+ PLOTCMD="NOT INITIALIZED"
+ let " PLFN = 1 "
+ let " FIRST = 1 " # true
+ for PLATFORM in ${PLATFORMS}
+ do
+ echo "${PLATFORM}"
+ if [ -s ${PLATFORM}/${SUITE}${VAR}.data ]
+ then
+ if [ ${FIRST} == 1 ]
+ then
+ PLOTCMD="plot \"${PLATFORM}/${SUITE}${VAR}.data\" using 1:3 title \"${PLATFORM}\""
+ FIRST=0
+ else
+ PLOTCMD="${PLOTCMD}, \"${PLATFORM}/${SUITE}${VAR}.data\" using 1:3 title \"${PLATFORM}\""
+ fi
+ # echo "${PLFN} ${NPLFS}"
+ fi
+ let " PLFN = ${PLFN} + 1 "
+ done
+ echo ${PLOTCMD}
+ # sleep 5
+ # Create the gnuplot settings
+
+ echo "${GNUPLOT} <<EOF" > ${GNUPLOTCMD}
+ echo "set ylabel \"${SUITE} run duration in % of baseline.\"" >> ${GNUPLOTCMD}
+
+ echo "set xdata time" >> ${GNUPLOTCMD}
+ echo "set timefmt \"%Y-%m-%d\"" >> ${GNUPLOTCMD}
+ echo "set xrange [*:*]" >> ${GNUPLOTCMD}
+ echo "set yrange [0:*]" >> ${GNUPLOTCMD}
+ echo "set format x \"-%m-%d\"" >> ${GNUPLOTCMD}
+ echo "set data style linespoints" >> ${GNUPLOTCMD}
+ echo "set xtics rotate" >> ${GNUPLOTCMD}
+ echo "set grid xtics" >> ${GNUPLOTCMD}
+ echo "set key top left" >> ${GNUPLOTCMD}
+ echo "set xtics 604800" >> ${GNUPLOTCMD}
+
+ echo "set term png color" >> ${GNUPLOTCMD}
+ echo "set out \"plot_all.png\"" >> ${GNUPLOTCMD}
+
+ echo "${PLOTCMD}" >> ${GNUPLOTCMD}
+ echo "EOF" >> ${GNUPLOTCMD}
+
+ cat ${GNUPLOTCMD}
+ . ./${GNUPLOTCMD}
+ mv plot_all.png ${SUITE}_all${VAR}.png
+ chmod go+r ${SUITE}_all${VAR}.png
+
+ echo -n "<img src=\"" >> plot${VAR}.html
+ echo "${SUITE}_all${VAR}.png\">" >> plot${VAR}.html
+ # sleep 20
+done # SUITES
+
+# Show baseline info for each platform:
+echo "<TABLE>" >> plot${VAR}.html
+
+echo "<TR>" >> plot${VAR}.html
+echo "<TD><i>Platform</i></TD> <TD><i>Baseline<br>Revision</i></TD> <TD><i>Baseline<br>Date time</i></TD>" >> plot${VAR}.html
+echo "</TR>" >> plot${VAR}.html
+
+for PLATFORM in ${PLATFORMS}
+do
+ echo "<TR>" >> plot${VAR}.html
+ BASELINE=`head -1 ${DERBYDIR}/testing/testlog/${PLATFORM}/baseline.csv | gawk '{ print $2 }'`
+ TS=`cat ${UPDATELOGDIR}/${BASELINE}/UpdateTime`
+ PLATF=`echo "${PLATFORM}" | sed -e 's/CYGWIN_/CYGWIN /' | gawk -F_ '{ print $1" "$2 }' | sed -e 's/CYGWIN /CYGWIN_/'`
+ echo "<TD>${PLATF}:</TD> <TD><B>${BASELINE}</B></TD> <TD>${TS}</TD>" >> plot${VAR}.html
+ echo "</TR>" >> plot${VAR}.html
+done # PLATFORMS
+
+echo "</TABLE>" >> plot${VAR}.html
+
+
+echo "</body>" >> plot${VAR}.html
+echo "</html>" >> plot${VAR}.html
+chmod go+r plot${VAR}.html
+rm ${GNUPLOTCMD}
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/doplot_all
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/doplot_all
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/env
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/env?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/env (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/env Fri Nov 24 00:35:04 2006
@@ -0,0 +1,37 @@
+# In all Derby regression test reporting scripts set
+# TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts" # then add
+# . ${TOOLDIR}/env
+
+# DERBYDIR is NOT really fixed: depends on which "sandbox" we're in.
+# DERBYDIR="${HOME}/Apache/TinderBox_Derby"
+# DERBYDIR="${HOME}/Apache/Derby"
+# For cron jobs move its definition to the respective bin/DerbyTools/cron* scripts
+
+TESTLOGDIR="${DERBYDIR}/testing/testlog"
+BUILDLOGDIR="${DERBYDIR}/BuildLog"
+UPDATELOGDIR="${DERBYDIR}/UpdateLog"
+REVISIONLIST="${DERBYDIR}/testing/revisionlist"
+HOSTLISTFILE=${DERBYDIR}/testing/testhostlist
+COLOR0=lightgrey
+COLOR1=lightblue
+
+### CHANGE THESE TO MATCH YOUR...
+WHOWEARE="How we present ourselves externally"
+WHOWEAREINTERN="How we present ourselves internally"
+WHOWEARELONG="How we present ourselves externally - long variant"
+WHOWEARELOGO="OURlogo.gif"
+WHOWEAREALT="Alternative to logo"
+INTERNHREF="http://local.host.our.domain/somewhere/somepage.html"
+EXTERNHREF="http://our.global.visibility.domain/somewhere/somepage.html"
+
+PUBLISHSITE=publish.host.my.domain
+PUBLISHUSER=publishinguser
+# PUBLISHDIR=public_html/public/Apache/Derby
+# Use ~/.ssh/config:
+# SCPUT=/usr/bin/scp
+# SSHUT=/usr/bin/ssh
+SCPUT=${TOOLDIR}/scp_dummy
+SSHUT=${TOOLDIR}/ssh_dummy
+
+MAILTOINT=Who.GetsMail@Internal.domain
+MAILTOEXT=Who.GetsMail@External.domain
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/env
------------------------------------------------------------------------------
svn:eol-style = native
Added: db/derby/code/trunk/tools/testing/reporting/scripts/fromSeconds
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/fromSeconds?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/fromSeconds (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/fromSeconds Fri Nov 24 00:35:04 2006
@@ -0,0 +1,21 @@
+#!/bin/bash
+#
+SecOnlyString=$1
+# echo ${SecOnlyString}
+let " Hours = ${SecOnlyString} / 3600 "
+let " Rest = ${SecOnlyString} - ${Hours}*3600 "
+let " Minutes = ${Rest} / 60 "
+let " Seconds = ${Rest} - ${Minutes}*60 "
+if [ ${Seconds} -le 9 ]
+then
+ Seconds="0${Seconds}"
+fi
+if [ ${Minutes} -le 9 ]
+then
+ Minutes="0${Minutes}"
+fi
+if [ ${Hours} -le 9 ]
+then
+ Hours="0${Hours}"
+fi
+echo "${Hours}:${Minutes}:${Seconds} "
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/fromSeconds
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/fromSeconds
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/getBaselineTime
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/getBaselineTime?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/getBaselineTime (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/getBaselineTime Fri Nov 24 00:35:04 2006
@@ -0,0 +1,17 @@
+#!/bin/bash
+PLATFORM=$1
+SUITE=$2
+
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts" # then add
+. ${TOOLDIR}/env
+
+# We have one catalog per platform
+if [ ! -e ${TESTLOGDIR} ]
+then
+ echo "${TESTLOGDIR} does not exist"
+ exit
+fi
+
+cd ${TESTLOGDIR}
+SECONDS=`grep "^${SUITE} " ${PLATFORM}/baseline.csv | gawk '{ print $3 }'`
+echo ${SECONDS}
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/getBaselineTime
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/getBaselineTime
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/gnuplot/duration.gp
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/gnuplot/duration.gp?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/gnuplot/duration.gp (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/gnuplot/duration.gp Fri Nov 24 00:35:04 2006
@@ -0,0 +1,20 @@
+set ylabel "Test run duration in % of baseline."
+
+set xdata time
+set timefmt "%Y-%m-%d"
+set xrange [*:*]
+set yrange [0:*]
+set format x "-%m-%d"
+# set timefmt "%Y-%m-%d"
+set data style linespoints
+set xtics rotate
+set grid xtics
+set key top left
+set xtics 604800
+# set style histogram clustered
+
+set term png color
+set out "plot.png"
+
+plot "data.dat" using 1:3 title "Duration over revision"
+# plot "data.dat" using 1:3:xticlabels(2) title "Duration over revision"
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/gnuplot/duration.gp
------------------------------------------------------------------------------
svn:eol-style = native
Added: db/derby/code/trunk/tools/testing/reporting/scripts/gnuplot/duration_all.gp
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/gnuplot/duration_all.gp?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/gnuplot/duration_all.gp (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/gnuplot/duration_all.gp Fri Nov 24 00:35:04 2006
@@ -0,0 +1,28 @@
+set ylabel "${SUITE} run duration in % of baseline."
+
+set xdata time
+set timefmt "%Y-%m-%d"
+set xrange [*:*]
+set yrange [0:*]
+set format x "-%m-%d"
+# set timefmt "%Y-%m-%d"
+set data style linespoints
+set xtics rotate
+set grid xtics
+set key top left
+set xtics 604800
+# set style histogram clustered
+
+set term png color
+set out "plot_all.png"
+
+# plot "data.dat" using 1:3 title "Duration over revision"
+
+# CYGWIN_NT-5.2_i686-unknown
+# Linux-2.4.20-31.9_i686-i686
+# Linux-2.4.21-27.ELsmp_i686-athlon
+# SunOS-5.10_i86pc-i386
+# SunOS-5.10_sun4u-sparc
+# SunOS-5.9_sun4u-sparc
+plot "CYGWIN_NT-5.2_i686-unknown/${SUITE}.data" using 1:3 title "CYGWIN_NT-5.2_i686-unknown", "Linux-2.4.20-31.9_i686-i686/${SUITE}.data" using 1:3 title "Linux-2.4.20-31.9_i686-i686", "Linux-2.4.21-27.ELsmp_i686-athlon/${SUITE}.data" using 1:3 title "Linux-2.4.21-27.ELsmp_i686-athlon", "SunOS-5.10_i86pc-i386/${SUITE}.data" using 1:3 title "SunOS-5.10_i86pc-i386", "SunOS-5.10_sun4u-sparc/${SUITE}.data" using 1:3 title "SunOS-5.10_sun4u-sparc", "SunOS-5.9_sun4u-sparc/${SUITE}.data" using 1:3 title "SunOS-5.9_sun4u-sparc"
+
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/gnuplot/duration_all.gp
------------------------------------------------------------------------------
svn:eol-style = native
Added: db/derby/code/trunk/tools/testing/reporting/scripts/initDERBYDIR
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/initDERBYDIR?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/initDERBYDIR (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/initDERBYDIR Fri Nov 24 00:35:04 2006
@@ -0,0 +1,108 @@
+#!/bin/bash
+# Must be positioned in ${DERBYDIR}.
+# env.sh and testenv.sh must exist in current directory.
+# Assumes Derby has been checked out to ${derby_source} (${DERBYDIR}/${BRANCH_DIR},
+# see ${derby_source}/tools/testing/reporting/TEMPLATES/env.sh)
+# Example:
+#-1. TOPDIR=${HOME}/testingReportingScripts/outerWorld # Update the env.sh script in SANDBOX with this
+# TESTSET=testset # Update the env.sh script in SANDBOX with this
+# SANDBOX=trunkJDK16 # Update the env.sh script in SANDBOX with this
+# DERBYDIR=${TOPDIR}/${TESTSET}/${SANDBOX}
+# BRANCH_DIR=trunk # or 10.2, 10.1, .... the branch you want to check out
+# 0. mkdir -p ${TOPDIR}; chmod go+rx ${TOPDIR}
+# 1. mkdir -p ${TOPDIR}/${TESTSET}; chmod go+rx ${TOPDIR}/${TESTSET}
+# 2. mkdir ${DERBYDIR}; chmod go+rx ${DERBYDIR}
+# 3. cd ${DERBYDIR}
+# 4. Now checkout the Derby source (See http://db.apache.org/derby/derby_downloads.html).
+# E.g. 'svn checkout https://svn.apache.org/repos/asf/db/derby/code/${BRANCH_DIR}'
+# 5. TEMPLATEDIR=${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/TEMPLATES
+# 6. cp ${TEMPLATEDIR}/env.sh ./
+# 7. cp ${TEMPLATEDIR}/testenv.sh ./
+# 8. Modify env.sh and testenv.sh as required.
+# 9. TOOLDIR=${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts
+#10. Run this script: ${TOOLDIR}/initDERBYDIR
+
+
+if [ ! -e env.sh ]
+then
+ echo "env.sh not found!"
+ echo "See ${derby_source}/tools/testing/reporting/TEMPLATES for templates."
+ exit
+fi
+
+
+# DEBUG
+echo -n "We're in: "; pwd
+. ./env.sh
+# DEBUG
+echo "DERBYDIR: ${DERBYDIR}"
+# DEBUG
+echo "BRANCH_DIR: ${BRANCH_DIR}"
+# DEBUG
+pwd
+
+# Example top level web page(s):
+if [ ! -e ../index.html ]
+then
+ cp ${TEMPLATEDIR}/index.html ../index.html
+fi
+if [ ! -e ../index.shtml ]
+then
+ cp ${TEMPLATEDIR}/index.shtml ../index.shtml
+fi
+echo ""
+
+##################################
+# Create dirs in ${TOPDIR}/${TESTSET}/${SANDBOX}
+
+rm -rf BuildLog FailReports testing UpdateLog UpdateInfo builds
+mkdir -p BuildLog FailReports testing UpdateLog UpdateInfo builds
+chmod go+rx BuildLog FailReports testing UpdateLog UpdateInfo builds
+rm -f Failures
+ln -s ${BRANCH_DIR}/tools/testing/reporting/Failures Failures
+
+echo ""
+# DEBUG
+ls -al .
+echo ""
+
+# Create dirs in ${TOPDIR}/${TESTSET}/${SANDBOX}/testing
+cd testing
+mkdir -p Full Limited Notes testlog
+chmod go+rx Full Limited Notes testlog
+ln -s ../builds builds # Until all scripts are fixed.
+ln -s ../UpdateInfo UpdateInfo # Until all scripts are fixed.
+# Must exist: edit to exclude if neccessary.
+touch ExcludeFromZip
+
+# Example minimal test suite list:
+echo "derbyall" > testlist
+echo "org.apache.derbyTesting.functionTests.suites.All" >> testlist
+echo ""
+echo "testlist: "
+cat testlist
+echo ""
+echo "Add more suites as desired."
+ln -s testlist showtestlist
+echo "Create separate showtestlist if you want to report only for a subset."
+echo ""
+
+# Get back in ${TOPDIR}/${TESTSET}/${SANDBOX}
+cd ..
+echo "To have a complete build environment you should have"
+echo " osgi.jar"
+echo " junit.jar"
+echo " jdbc2_0-stdext.jar"
+echo " jce1_2_2.jar"
+echo "in ${BRANCH_DIR}/tools/java:"
+ls -l ${BRANCH_DIR}/tools/java
+
+echo ""
+echo "Remember to run buildDerby and updateBuildTestDerby with your correct ant property file:"
+echo " Default: ~/ant.properties"
+echo " E.g. Set jdk16 to build for JDK 6."
+echo " Set jsr169compile.classpath to build for JSR 169."
+
+exit
+
+# CLEANUP:
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/initDERBYDIR
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/initDERBYDIR
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/linux-cpu_mem
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/linux-cpu_mem?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/linux-cpu_mem (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/linux-cpu_mem Fri Nov 24 00:35:04 2006
@@ -0,0 +1,11 @@
+#!/bin/bash
+# NB Assuming all CPUs are identical....
+NUMBER=`cat /proc/cpuinfo | grep "model name" | wc -l | sed -e 's/ //g'`
+MODEL=`cat /proc/cpuinfo | grep "model name" | head -1 | gawk -F: '{ print $2 }'`
+FREQ=`cat /proc/cpuinfo | grep "cpu MHz" | head -1 | gawk -F: '{ print $2 }'`
+CACHE=`cat /proc/cpuinfo | grep "cache size" | head -1 | gawk -F: '{ print $2 }'`
+
+MEMTOTAL=`cat /proc/meminfo | grep "MemTotal" | gawk -F: '{ print $2 }' | sed -e 's/ //g'`
+MEMFREE=`cat /proc/meminfo | grep "MemFree" | gawk -F: '{ print $2 }' | sed -e 's/ //g'`
+
+echo "${NUMBER} X ${MODEL}: ${FREQ} MHz, ${CACHE} cache. ${MEMTOTAL} Total Memory."
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/linux-cpu_mem
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/linux-cpu_mem
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/linux-system
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/linux-system?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/linux-system (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/linux-system Fri Nov 24 00:35:04 2006
@@ -0,0 +1,5 @@
+#!/bin/bash
+BITS=`uname -p | grep -q 64 && echo 64 || echo 32`
+HEAD=`cat /etc/redhat-release`
+echo "${HEAD} ${BITS}bits"
+uname -srvo
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/linux-system
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/linux-system
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/mkAllDerbyTestInfo
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/mkAllDerbyTestInfo?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/mkAllDerbyTestInfo (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/mkAllDerbyTestInfo Fri Nov 24 00:35:04 2006
@@ -0,0 +1,39 @@
+#!/bin/bash
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts" # then add
+. ${TOOLDIR}/env
+
+# Run only when all platforms are ready (test completed).
+# if [ "$1" = "" ]
+# then
+# echo "Usage: $0 [details]"
+# # exit
+# fi
+
+echo "*** Start mkAllDerbyTestInfo"
+
+DETAILS="$1"
+DETAILS="details"
+
+${TOOLDIR}/testSummariesDerby current ${DETAILS} # May be overkill, but .....
+${TOOLDIR}/testSummariesDerby previous ${DETAILS}
+
+# Get the list of revisions, look for the latest update/build:
+LATESTREVISION=`gawk '{ print $1 }' ${REVISIONLIST} | grep -v "^#" | head -1`
+echo "${TOOLDIR}/testSummariesDerby ${LATESTREVISION} ${DETAILS}"
+${TOOLDIR}/testSummariesDerby ${LATESTREVISION} ${DETAILS}
+
+# Next needed when new test is started before latest info has been created (e.g. Tinderbox...)
+PREVIOUSREVISION=`gawk '{ print $1 }' ${REVISIONLIST} | grep -v "^#" | head -2 | tail -1`
+echo "${TOOLDIR}/testSummariesDerby ${PREVIOUSREVISION} ${DETAILS}"
+${TOOLDIR}/testSummariesDerby ${PREVIOUSREVISION} ${DETAILS}
+
+echo "${TOOLDIR}/testHistoriesDerby ${DETAILS}"
+${TOOLDIR}/testHistoriesDerby ${DETAILS}
+
+# echo "${TOOLDIR}/testPlatformsDerby ${DETAILS}"
+# ${TOOLDIR}/testPlatformsDerby ${DETAILS}
+
+echo "${TOOLDIR}/mkDerbyTestIndex ${DETAILS}"
+${TOOLDIR}/mkDerbyTestIndex ${DETAILS}
+
+echo "*** Done mkAllDerbyTestInfo"
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkAllDerbyTestInfo
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkAllDerbyTestInfo
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/mkAllDerbyTestInfo.public
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/mkAllDerbyTestInfo.public?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/mkAllDerbyTestInfo.public (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/mkAllDerbyTestInfo.public Fri Nov 24 00:35:04 2006
@@ -0,0 +1,24 @@
+#!/bin/bash
+# Run only when all platforms are ready (test completed).
+# DO NOT SHOW DETAILS.
+
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts" # then add
+. ${TOOLDIR}/env
+
+# Get the list of revisions, look for the latest update/build:
+REVISIONSFILE="${DERBYDIR}/testing/revisionlist"
+LATESTREVISION=`gawk '{ print $1 }' ${REVISIONSFILE} | grep -v "^#" | head -1`
+${TOOLDIR}/testSummariesDerby ${LATESTREVISION}
+# Next needed when new test is started before latest info has been created (e.g. Tinderbox...)
+PREVIOUSREVISION=`gawk '{ print $1 }' ${REVISIONLIST} | grep -v "^#" | head -2 | tail -1`
+${TOOLDIR}/testSummariesDerby ${PREVIOUSREVISION} ${DETAILS}
+
+${TOOLDIR}/testSummariesDerby current
+${TOOLDIR}/testSummariesDerby previous
+
+${TOOLDIR}/testHistoriesDerby
+
+# ${TOOLDIR}/testPlatformsDerby
+
+${TOOLDIR}/mkDerbyTestIndex
+
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkAllDerbyTestInfo.public
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkAllDerbyTestInfo.public
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/mkAllPlotDataAndPlots
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/mkAllPlotDataAndPlots?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/mkAllPlotDataAndPlots (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/mkAllPlotDataAndPlots Fri Nov 24 00:35:04 2006
@@ -0,0 +1,53 @@
+#!/bin/bash
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts"
+. ${TOOLDIR}/env
+
+# Define DERBYDIR
+. ./env.sh
+
+INIT=$1
+
+echo "***** ${DERBYDIR} *********"
+
+if [ "${INIT}" == "INIT" ]
+then
+
+ # Build plot data
+ # ONLY initially, i.e. after a change of baseline or addition or removal of platform...
+ # NB: createBaselineFilesOnePlatform / createBaselineFiles must have been run to create
+ # baseline files for all platforms to be shown.
+ echo "-- mkGNUplot ----------------------------------------"
+ time ${TOOLDIR}/mkGNUplot
+
+else
+
+ # Update plot data:
+ echo "-- mkGNUplot.recent -----------------------------------"
+ time ${TOOLDIR}/mkGNUplot.recent
+
+fi
+
+# Create plots per platform
+echo "-- doplot ---------------------------------------------"
+time ${TOOLDIR}/doplot
+
+# Create summary plots over all platforms
+echo "-- doplot_all -----------------------------------------"
+time ${TOOLDIR}/doplot_all
+
+
+# Extract data for last 20 builds ( ~1 month)
+echo "-- mkGNUplot_last20 -----------------------------------"
+time ${TOOLDIR}/mkGNUplot_last20 40
+# NB: Now takes a param instead of using fixed 20 latest data sets.
+
+# Create plots per platform for ~last month
+echo "-- doplot _last20 -------------------------------------"
+time ${TOOLDIR}/doplot _last20
+
+# Create summary plots over all platforms for ~last month
+# time ${TOOLDIR}/doplot_all_lastMonth
+echo "-- doplot_all _last20 ---------------------------------"
+time ${TOOLDIR}/doplot_all _last20
+
+echo "***** ${DERBYDIR} *********"
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkAllPlotDataAndPlots
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkAllPlotDataAndPlots
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/mkDerbyTestIndex
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/mkDerbyTestIndex?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/mkDerbyTestIndex (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/mkDerbyTestIndex Fri Nov 24 00:35:04 2006
@@ -0,0 +1,324 @@
+#!/bin/bash
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts"
+. ${TOOLDIR}/env
+
+SHOWDETAILS=""
+PRESENTATION="Limited"
+if [ "$1" = "details" ]
+then
+ # Show details
+ SHOWDETAILS="ShowDetails"
+ PRESENTATION="Full"
+fi
+
+# We have one catalog per platform
+if [ ! -e ${TESTLOGDIR} ]
+then
+ echo "${TESTLOGDIR} does not exist"
+ exit
+fi
+
+# Get the list of testsuite we are running:
+TESTLISTFILE="${DERBYDIR}/testing/showtestlist"
+SUITES=`gawk '{ print $1 }' ${TESTLISTFILE} | grep -v "^#"`
+
+# Get the set of platforms
+cd ${TESTLOGDIR}
+PLATFORMS=`ls`
+
+TESTID=`echo ${DERBYDIR} | gawk -F/ '{ print $NF }'`
+ # Derby | TinderBox_Derby | XDerbyX | myDerbySandbox | jvm1.5 ....
+TINDER=`echo "${TESTID}" | grep TinderBox` # Contains TinderBox
+LARGEDATA=`echo "${TESTID}" | grep LargeData` # Contains LargeData
+
+# Get the list of revisions
+REVISIONSFILE="${DERBYDIR}/testing/revisionlist"
+# head -60 to reduce to approx. last 3 months of daily tests (otherwise last 60 - ..TinderBox)
+# head -16 to reduce to approx. last 2 weeks of daily tests (otherwise last 16 - ..TinderBox)
+NREVS=16
+if [ "${TINDER}" != "" ]
+then
+ NREVS=32
+fi
+
+# Update summary info for top level sandbox page:
+CUR_REV=`gawk '{ print $1 }' ${REVISIONSFILE} | grep -v "^#" | head -1`
+${TOOLDIR}/mkSandBoxSummary ${CUR_REV} "$1"
+#
+
+REVISIONS=`gawk '{ print $1 }' ${REVISIONSFILE} | grep -v "^#" | head -${NREVS}`
+# LASTUPDATEREV=`gawk '{ print $1 }' ${REVISIONSFILE} | grep -v "^#" | head -1 `
+PREVUPDATEREV=`gawk '{ print $1 }' ${REVISIONSFILE} | grep -v "^#" | head -2 | tail -1`
+ # If we use LASTUPDATEREV ~ head -1 svn log may not report the last update.... See below.
+
+# DTI="${DERBYDIR}/testing/testSummary.html"
+DTI="${DERBYDIR}/testing/${PRESENTATION}/index.html"
+DTIPUB="${PUBLISHDIR}/${PRESENTATION}/index.html"
+
+PUBLICREGRESSIONTESTMSG="<P>We provide daily regression test results based on the Apache Derby test suites. The regression tests are executed on several platforms.</P>"
+INTERNALREGRESSIONTESTMSG="<P>We currently run the Derby test suites on a number of platforms available at ${WHOWEAREINTERN}.</P>"
+if [ "${TINDER}" != "" ]
+then
+ PUBLICREGRESSIONTESTMSG="<P>\"<em>Tinderbox</em>\" testing is performed when updates to the Derby source code repository is detected. This is done on one single test platform.</P>"
+ INTERNALREGRESSIONTESTMSG="${PUBLICREGRESSIONTESTMSG}"
+fi
+
+echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">" > ${DTI}
+echo "<html> <head>" >> ${DTI}
+chmod go+r ${DTI}
+if [ "$1" = "details" ]
+then
+ echo "<title>Derby @ ${WHOWEARE} Regression Test Results [${TESTID}]</title>" >> ${DTI}
+else
+ echo "<title>Apache Derby Open Source Database, Regression Test Results [${TESTID}]</title>" >> ${DTI}
+fi
+echo "</head>" >> ${DTI}
+
+echo "<body>" >> ${DTI}
+
+if [ "$1" != "details" ]
+then
+ # echo "<br><font size=\"+1\"><b><a href=\"http://db.apache.org/derby\" target=\"_top\">Apache Derby</a></b></font> is an open source, 100% Java SQL Database." >> ${DTI}
+
+
+ echo "<table style=\"text-align: left; width: 100%;\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">" >> ${DTI}
+ echo " <tbody>" >> ${DTI}
+ echo " <tr>" >> ${DTI}
+ echo " <td style=\"vertical-align: bottom;\"><font size=\"+1\"><b>" >> ${DTI}
+ echo " <a href=\"http://db.apache.org/derby\" target=\"_top\">Apache Derby" >> ${DTI}
+ echo " </a></b></font> is an open source, 100% Java SQL Database." >> ${DTI}
+ echo " </td>" >> ${DTI}
+ echo " </tr>" >> ${DTI}
+ echo " </tbody>" >> ${DTI}
+ echo "</table>" >> ${DTI}
+
+ echo "<HR>" >> ${DTI}
+fi
+if [ "$1" = "details" ]
+then
+ echo "<h2>Derby @ ${WHOWEARE} Regression Test Results [${TESTID}]" >> ${DTI}
+ echo "  " >> ${DTI}
+ echo " <font size=-1>[<a href=\"InternalURL\">All ${WHOWEARE} Derby Tests</a>]</font>" >> ${DTI}
+ echo "</h2>" >> ${DTI}
+ echo "<a href=\"${INTERNHREF}\">" >> ${DTI}
+ ### UNCOMMENT IF YOU HAVE A LOGO. echo "<img style=\"border: 0px solid\" src=\"${WHOWEARELOGO}\" alt=\"${WHOWEAREALT}\"><br>" >> ${DTI}
+ echo "<i>${WHOWEARELONG}</i><p/>" >> ${DTI}
+ echo "</a>" >> ${DTI}
+ echo "${INTERNALREGRESSIONTESTMSG}" >> ${DTI}
+else
+ echo "<h2>Derby Regression Test Results [${TESTID}]" >> ${DTI}
+ echo "  " >> ${DTI}
+ echo " <font size=-1>[<a href=\"externalURL\">All ${WHOWEARE} Derby Tests</a>]</font>" >> ${DTI}
+ echo "</h2>" >> ${DTI}
+ echo "<i>${WHOWEARELONG}</i><p/>" >> ${DTI}
+ echo "${PUBLICREGRESSIONTESTMSG}" >> ${DTI}
+fi
+echo "<P></P>" >> ${DTI}
+
+echo "<P><a href="testSummary-current.html">Results of the latest testrun</a> started. This will show NA for test suites not yet completed.</P>" >> ${DTI}
+
+echo "<P><a href="testSummary-previous.html">Results of the previous testrun.</a></P>" >> ${DTI}
+
+THISPWD=`pwd`
+cd ${derby_source}
+echo "Latest Derby revision: " >> ${DTI}
+
+svn log -r${PREVUPDATEREV}:HEAD | grep "lines$" | grep "|" | tail -1 | sed -e 's/^r//' | gawk -F\| '{ print $1"["$3"]" }' >> ${DTI}
+echo " per " >> ${DTI}
+cd ${THISPWD}
+date +%Y-%m-%d" "%H:%M:%S" "%Z >> ${DTI}
+
+
+echo "<BR>" >> ${DTI}
+echo "<h3>Tested Revisions</h3>" >> ${DTI}
+
+
+TDB="TD style=\"vertical-align: bottom;\""
+TDT="TD style=\"vertical-align: top;\""
+
+DURHD="<$TDB></TD>"
+if [ "${TINDER}" != "" ] || [ "${LARGEDATA}" != "" ]
+then # Show duration %
+ SHOWDURSUITE="Derbyall"
+ if [ "${LARGEDATA}" != "" ]
+ then
+ SHOWDURSUITE="LargeData"
+ fi
+ DURHD="<$TDB><i> ${SHOWDURSUITE}<br> duration<br> vs baseline </i></TD>"
+fi
+
+FOOTPRINTBASEREV=`head -1 ${DERBYDIR}/testing/builds/baseline.size | gawk -F\# '{ print $2 }'`
+# TS=`cat ${UPDATELOGDIR}/${FOOTPRINTBASEREV}/UpdateTime`
+TS=`head -2 ${DERBYDIR}/testing/builds/baseline.size | tail -1| gawk -F\# '{ print $2 }'`
+
+BGCOLOR="bgcolor=\"${COLOR0}\""
+echo "<TABLE border=\"0\" cellspacing=\"0\" cellpadding=\"0\">" >> ${DTI}
+echo "<TR ${BGCOLOR} >" >> ${DTI}
+echo "<$TDB><i> Revision </i></TD>" >> ${DTI}
+echo "<$TDB><i> Date, Time </i></TD>" >> ${DTI}
+echo "<$TDB><i> Changes </i></TD>" >> ${DTI}
+echo "<$TDB><i> Size of derby.jar<br> </i>[Baseline: ${FOOTPRINTBASEREV}<br> ${TS}]</TD>" >> ${DTI}
+echo "<$TDB><i> Derbyall<br> failures </i></TD>" >> ${DTI}
+echo "${DURHD}" >> ${DTI}
+echo "<$TDB><i> Notes </i></TD>" >> ${DTI}
+echo "</TR>" >> ${DTI}
+
+SANDBOX=`basename ${DERBYDIR}`
+no=1
+for REVISION in ${REVISIONS}
+do
+ echo "<TR>" >> ${DTI}
+ TS=`cat ${UPDATELOGDIR}/${REVISION}/UpdateTime`
+ DT=`echo ${TS} | gawk '{ print $1 }'`
+ TT=`echo ${TS} | gawk '{ print $2 }'`
+ TZ=`echo ${TS} | gawk '{ print $3 }'`
+ TS="${DT} ${TT} ${TZ}"
+ CHGLINK=" "
+ if [ -e ${DERBYDIR}/testing/UpdateInfo/${REVISION}.txt ]
+ then
+## if [ "$1" != "details" ] # FIXME
+## then
+## CHGLINK=" <A HREF=\"../../../UpdateInfo/${REVISION}.txt\">Chgs</A> "
+## else
+ CHGLINK=" <A HREF=\"../../UpdateInfo/${REVISION}.txt\">Chgs</A> "
+## fi
+ fi
+ FOOTPRINT=" "
+ if [ -e ${DERBYDIR}/testing/builds/${REVISION}.size ]
+ then
+ SIZE=`grep derby.jar ${DERBYDIR}/testing/builds/${REVISION}.size | gawk '{ print $2" "$3 }'`
+ # FOOTPRINT=" <A href=\"../../../builds/${REVISION}.size\">${SIZE}</A>"
+ FOOTPRINT=" <A href=\"../../builds/${REVISION}.size\">${SIZE}</A>"
+ fi
+
+ DERBALLFAILS=""
+ DERBALLPRCNT=""
+ # TINDERBOX=`echo ${DERBYDIR} | grep TinderBox_`
+ # if [ "${TINDER}" != "" ]
+ # then
+ DERBALLFAILS="["
+ for PLATFORM in ${PLATFORMS} # TinderBox uses ONE platform..
+ do
+ # echo -n "${PLATFORM} "; pwd
+ if [ -e ${PLATFORM}/externallyVisible ] || [ "${SHOWDETAILS}" = "ShowDetails" ]
+ then
+ if [ -e ${PLATFORM}/${REVISION}.csv ]
+ then
+ # 2: Number, 3: OK, 4: Failed, 5: Skipped, 6: time
+ RES=`grep "^derbyall " ${PLATFORM}/${REVISION}.csv`
+ # DEBUG RES=`grep "^demo " ${PLATFORM}/${REVISION}.csv`
+ if [ "${LARGEDATA}" != "" ]
+ then
+ RES=`grep "^largeData " ${PLATFORM}/${REVISION}.csv`
+ fi
+ FAILED=`echo ${RES} | gawk '{ print $4 }'`
+ if [ "${FAILED}" == "" ]
+ then
+ FAILED="?"
+ fi
+ DERBALLFAILS="${DERBALLFAILS} ${FAILED} "
+ if [ "${TINDER}" != "" ] || [ "${LARGEDATA}" != "" ]
+ then
+ TIME=`grep "^derbyall " ${PLATFORM}/${REVISION}.csv | gawk '{ print $6 }'`
+ if [ "${LARGEDATA}" != "" ]
+ then
+ TIME=`grep "^largeData " ${PLATFORM}/${REVISION}.csv | gawk '{ print $6 }'`
+ fi
+ SECONDS=`${TOOLDIR}/toSeconds ${TIME}`
+ BASESECONDS=`grep "^derbyall " ${PLATFORM}/baseline.csv | gawk '{ print $3 }'`
+ if [ "${LARGEDATA}" != "" ]
+ then
+ BASESECONDS=`grep "^largeData " ${PLATFORM}/baseline.csv | gawk '{ print $3 }'`
+ fi
+ PERCENT=`${TOOLDIR}/calcPercent ${SECONDS} ${BASESECONDS}`
+ DERBALLPRCNT=" ${PERCENT}% "
+ fi
+ else
+ DERBALLFAILS="${DERBALLFAILS} - "
+ fi
+ fi # visible, showdetails
+ done # PLATFORMS
+ DERBALLFAILS="${DERBALLFAILS}]"
+ # fi # TINDERBOX
+ ######
+ # Above if ...
+ # fi could be replaced by
+ # DERBALLFAILS=`${TOOLDIR}/platformsFailCount ${REVISION} "${SHOWDETAILS}" ${SUITE}`
+ # DERBALLPRCNT=`${TOOLDIR}/platformsDurPrcnt ${REVISION} "${SHOWDETAILS}" ${SUITE}`
+ ######
+
+ BLDERRLINK=""
+ if [ -e ${DERBYDIR}/testing/UpdateInfo/${REVISION}-buildDetails.txt ]
+ then
+ BLDERRLINK=" <A HREF=\"../../UpdateInfo/${REVISION}-buildDetails.txt\"><font color=\"red\"><b> Build Errors!</b></font></A><br>"
+ fi
+
+ FAILURELINK=""
+ if [ -e ${DERBYDIR}/FailReports/${REVISION}.html ]
+ then
+ FAILURELINK=" <A HREF=\"../../FailReports/${REVISION}.html\">${DERBALLFAILS} </A>"
+ elif [ -e ${DERBYDIR}/FailReports/${REVISION}M.html ]
+ then # When we have Mods. e.g. JDK 1.6 testing with local mods to compatibility script....
+ FAILURELINK=" <A HREF=\"../../FailReports/${REVISION}M.html\">${DERBALLFAILS} </A>"
+ fi
+
+ NOTE=""
+ if [ -e ${DERBYDIR}/testing/Notes/${REVISION}.txt ]
+ then
+ TXT=`cat ${DERBYDIR}/testing/Notes/${REVISION}.txt`
+ NOTE="${TXT}"
+ fi
+
+ echo "<$TDT><a href=\"testSummary-"${REVISION}".html\">"${REVISION}"</a></TD>" >> ${DTI}
+ echo "<$TDT>${TS}</TD>" >> ${DTI}
+ echo "<$TDT>${CHGLINK}</TD>" >> ${DTI}
+ echo "<$TDT>${FOOTPRINT}</TD>" >> ${DTI}
+ echo "<$TDT>${BLDERRLINK}${FAILURELINK}</TD>" >> ${DTI}
+ echo "<$TDT>${DERBALLPRCNT}</TD>" >> ${DTI}
+ echo "<$TDT>${NOTE}</TD>" >> ${DTI}
+ no=`expr $no + 1`
+ echo "<TR>" >> ${DTI}
+done # REVISIONS
+echo "</TABLE>" >> ${DTI}
+
+##########################################
+# BEGIN SKIP if ...._Release or ...._RC tests or ...._Snapshot tests
+IS_RELEASE=`echo ${DERBYDIR} | grep "_Release/"`
+IS_SNAPSHOT=`echo ${DERBYDIR} | grep "_Snapshot/"`
+IS_RC=`echo ${DERBYDIR} | grep "_RC/"`
+if [ "${IS_RELEASE}" == "" ] && [ "${IS_RC}" == "" ] && [ "${IS_SNAPSHOT}" == "" ]
+then
+
+echo "See full history <a href=\"index_all.html\">here!</a><BR>" >> ${DTI}
+
+
+if [ "${SHOWDETAILS}" = "ShowDetails" ]
+then
+ echo "<HR>" >> ${DTI}
+ echo "Experimental duration plots: " >> ${DTI}
+ echo "<a href=\"plot/plot.html\">all builds</a>, " >> ${DTI}
+ echo "<a href=\"plot/plot_last20.html\">last N builds</a>." >> ${DTI}
+fi
+
+fi
+# END SKIP if ....Release or ....Snapshot tests
+##########################################
+
+echo "<HR>" >> ${DTI}
+echo "<div style=\"text-align: right;\">" >> ${DTI}
+echo "<font size=\"-1\"><i>" >> ${DTI}
+date +%Y-%m-%d" "%H:%M:%S" "%Z >> ${DTI}
+echo "</i></font>" >> ${DTI}
+echo "</div>" >> ${DTI}
+
+
+echo "</body>" >> ${DTI}
+echo "</html>" >> ${DTI}
+if [ "${SHOWDETAILS}" != "ShowDetails" ]
+then
+ SRC="${DTI}"
+ DST="${DTIPUB}"
+ echo "**** OBS! ${SCPUT} ${SRC} ${PUBLISHUSER}@${PUBLISHSITE}:${DST}"
+ ### ${SCPUT} ${SRC} ${PUBLISHUSER}@${PUBLISHSITE}:${DST}
+fi
+
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkDerbyTestIndex
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkDerbyTestIndex
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/mkDerbyTestIndex_all
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/mkDerbyTestIndex_all?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/mkDerbyTestIndex_all (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/mkDerbyTestIndex_all Fri Nov 24 00:35:04 2006
@@ -0,0 +1,239 @@
+#!/bin/bash
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts"
+. ${TOOLDIR}/env
+
+SHOWDETAILS=""
+PRESENTATION="Limited"
+if [ "$1" = "details" ]
+then
+ # Show details
+ SHOWDETAILS="ShowDetails"
+ PRESENTATION="Full"
+fi
+
+# We have one catalog per platform
+if [ ! -e ${TESTLOGDIR} ]
+then
+ echo "${TESTLOGDIR} does not exist"
+ exit
+fi
+
+# Get the list of testsuite we are running:
+TESTLISTFILE="${DERBYDIR}/testing/showtestlist"
+SUITES=`gawk '{ print $1 }' ${TESTLISTFILE} | grep -v "^#"`
+
+# Get the set of platforms
+cd ${TESTLOGDIR}
+PLATFORMS=`ls`
+
+TESTID=`echo ${DERBYDIR} | gawk -F/ '{ print $NF }'`
+ # Derby | TinderBox_Derby | XDerbyX | myDerbySandbox | jvm1.5 ....
+TINDER=`echo "${TESTID}" | grep TinderBox` # Contains TinderBox
+LARGEDATA=`echo "${TESTID}" | grep LargeData` # Contains LargeData
+
+# Get the list of revisions
+REVISIONSFILE="${DERBYDIR}/testing/revisionlist"
+# head -60 to reduce to approx. last 3 months of daily tests (otherwise last 60 - ..TinderBox)
+# Here we show all:
+REVISIONS=`gawk '{ print $1 }' ${REVISIONSFILE} | grep -v "^#"`
+PREVUPDATEREV=`gawk '{ print $1 }' ${REVISIONSFILE} | grep -v "^#" | head -2 | tail -1`
+
+# CHANGE HERE TO USE A DIFFERENT FILE:
+DTI="${DERBYDIR}/testing/${PRESENTATION}/index_all.html"
+DTIPUB="${PUBLISHDIR}/${PRESENTATION}/index_all.html"
+
+
+echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">" > ${DTI}
+chmod go+r ${DTI}
+echo "<html> <head>" >> ${DTI}
+echo "</head>" >> ${DTI}
+
+echo "<body>" >> ${DTI}
+
+
+if [ "$1" != "details" ]
+then
+
+ echo "<table style=\"text-align: left; width: 100%;\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">" >> ${DTI}
+ echo " <tbody>" >> ${DTI}
+ echo " <tr>" >> ${DTI}
+ echo " <td style=\"vertical-align: bottom;\"><font size=\"+1\"><b>" >> ${DTI}
+ echo " <a href=\"http://db.apache.org/derby\" target=\"_top\">Apache Derby" >> ${DTI}
+ echo " </a></b></font> is an open source, 100% Java SQL Database." >> ${DTI}
+ echo " </td>" >> ${DTI}
+ # echo " <td style=\"vertical-align: top; text-align: right;\"><i>Web space sponsored by</i>" >> ${DTI}
+ # echo " <a href="http://www.multinet.no/">" >> ${DTI}
+ # echo " <img alt=\"MultiNet AS\" style=\"border: 0px solid ; width: 150px; height: 27px;\"" >> ${DTI}
+ # echo " src=\"http://www.multinet.no/gfx/multilogo.jpg\">" >> ${DTI}
+ # echo " </a>" >> ${DTI}
+ # echo " </td>" >> ${DTI}
+ echo " </tr>" >> ${DTI}
+ echo " </tbody>" >> ${DTI}
+ echo "</table>" >> ${DTI}
+
+ echo "<HR>" >> ${DTI}
+fi
+
+TDB="TD style=\"vertical-align: bottom;\""
+TDT="TD style=\"vertical-align: top;\""
+
+DURHD="<$TDB></TD>"
+if [ "${TINDER}" != "" ] || [ "${LARGEDATA}" != "" ]
+then # Show duration %
+ SHOWDURSUITE="Derbyall"
+ if [ "${LARGEDATA}" != "" ]
+ then
+ SHOWDURSUITE="LargeData"
+ fi
+ DURHD="<$TDB><i> ${SHOWDURSUITE}<br> duration<br> vs baseline </i></TD>"
+fi
+# if [ "${TESTID}" = "TinderBox_Derby" ]
+# then # Show duration %
+# DURHD="<$TDB><i> Derbyall<br> duration<br> vs baseline </i></TD>"
+# fi
+
+FOOTPRINTBASEREV=`head -1 ${DERBYDIR}/testing/builds/baseline.size | gawk -F\# '{ print $2 }'`
+# TS=`cat ${UPDATELOGDIR}/${FOOTPRINTBASEREV}/UpdateTime`
+TS=`head -2 ${DERBYDIR}/testing/builds/baseline.size | tail -1 | gawk -F\# '{ print $2 }'`
+
+BGCOLOR="bgcolor=\"${COLOR0}\""
+echo "<TABLE border=\"0\" cellspacing=\"0\" cellpadding=\"0\">" >> ${DTI}
+echo "<TR ${BGCOLOR} >" >> ${DTI}
+echo "<$TDB><i> Revision </i></TD>" >> ${DTI}
+echo "<$TDB><i> Date, Time </i></TD>" >> ${DTI}
+echo "<$TDB><i> Changes </i></TD>" >> ${DTI}
+echo "<$TDB><i> Size of derby.jar<br> </i>[Baseline: ${FOOTPRINTBASEREV}<br> ${TS}]</TD>" >> ${DTI}
+echo "<$TDB><i> Derbyall<br> failures </i></TD>" >> ${DTI}
+echo "${DURHD}" >> ${DTI}
+echo "<$TDB><i> Notes </i></TD>" >> ${DTI}
+echo "</TR>" >> ${DTI}
+
+SANDBOX=`basename ${DERBYDIR}`
+no=1
+for REVISION in ${REVISIONS}
+do
+ echo -n "${REVISION} "
+ TS=`cat ${UPDATELOGDIR}/${REVISION}/UpdateTime`
+ DT=`echo ${TS} | gawk '{ print $1 }'`
+ TT=`echo ${TS} | gawk '{ print $2 }'`
+ TZ=`echo ${TS} | gawk '{ print $3 }'`
+ TS="${DT} ${TT} ${TZ}"
+ CHGLINK=" "
+ if [ -e ${DERBYDIR}/testing/UpdateInfo/${REVISION}.txt ]
+ then
+ CHGLINK=" <A HREF=\"../../UpdateInfo/${REVISION}.txt\">Chgs</A> "
+ fi
+ FOOTPRINT=" "
+ if [ -e ${DERBYDIR}/testing/builds/${REVISION}.size ]
+ then
+ SIZE=`grep derby.jar ${DERBYDIR}/testing/builds/${REVISION}.size | gawk '{ print $2" "$3 }'`
+ FOOTPRINT=" <A href=\"../../builds/${REVISION}.size\">${SIZE}</A>"
+ fi
+
+ DERBALLFAILS=""
+ DERBALLPRCNT=""
+ # TINDERBOX=`echo ${DERBYDIR} | grep TinderBox_`
+ # if [ "${TESTID}" = "TinderBox_Derby" ]
+ # then
+ DERBALLFAILS="["
+ for PLATFORM in ${PLATFORMS} # TinderBox uses ONE platform..
+ do
+ if [ -e ${PLATFORM}/externallyVisible ] || [ "${SHOWDETAILS}" = "ShowDetails" ]
+ then
+ if [ -e ${PLATFORM}/${REVISION}.csv ]
+ then
+ # 2: Number, 3: OK, 4: Failed, 5: Skipped, 6: time
+ RES=`grep "^derbyall " ${PLATFORM}/${REVISION}.csv`
+ if [ "${LARGEDATA}" != "" ]
+ then
+ RES=`grep "^largeData " ${PLATFORM}/${REVISION}.csv`
+ fi
+ FAILED=`echo ${RES} | gawk '{ print $4 }'`
+ if [ "${FAILED}" == "" ]
+ then
+ FAILED="?"
+ fi
+ DERBALLFAILS="${DERBALLFAILS} ${FAILED} "
+ if [ "${TINDER}" != "" ] || [ "${LARGEDATA}" != "" ]
+ then
+ TIME=`grep "^derbyall " ${PLATFORM}/${REVISION}.csv | gawk '{ print $6 }'`
+ if [ "${LARGEDATA}" != "" ]
+ then
+ TIME=`grep "^largeData " ${PLATFORM}/${REVISION}.csv | gawk '{ print $6 }'`
+ fi
+ SECONDS=`${TOOLDIR}/toSeconds ${TIME}`
+ BASESECONDS=`grep "^derbyall " ${PLATFORM}/baseline.csv | gawk '{ print $3 }'`
+ if [ "${LARGEDATA}" != "" ]
+ then
+ BASESECONDS=`grep "^largeData " ${PLATFORM}/baseline.csv | gawk '{ print $3 }'`
+ fi
+ PERCENT=`${TOOLDIR}/calcPercent ${SECONDS} ${BASESECONDS}`
+ DERBALLPRCNT=" ${PERCENT}% "
+ fi
+ else
+ DERBALLFAILS="${DERBALLFAILS} - "
+ fi
+ fi # visible, showdetails
+ done # PLATFORMS
+ DERBALLFAILS="${DERBALLFAILS}]"
+ # fi # TINDERBOX
+
+ BLDERRLINK=""
+ if [ -e ${DERBYDIR}/testing/UpdateInfo/${REVISION}-buildDetails.txt ]
+ then
+ BLDERRLINK=" <A HREF=\"../../UpdateInfo/${REVISION}-buildDetails.txt\"><font color=\"red\"><b> Build Errors!</b></font></A><br>"
+ fi
+
+ FAILURELINK=""
+ if [ -e ${DERBYDIR}/FailReports/${REVISION}.html ]
+ then
+ FAILURELINK=" <A HREF=\"../../FailReports/${REVISION}.html\">${DERBALLFAILS} </A>"
+ elif [ -e ${DERBYDIR}/FailReports/${REVISION}M.html ]
+ then # When we have Mods. e.g. JDK 1.6 testing with local mods to compatibility script....
+ FAILURELINK=" <A HREF=\"../../FailReports/${REVISION}M.html\">${DERBALLFAILS} </A>"
+ fi
+
+ NOTE=""
+ if [ -e ${DERBYDIR}/testing/Notes/${REVISION}.txt ]
+ then
+ TXT=`cat ${DERBYDIR}/testing/Notes/${REVISION}.txt`
+ NOTE="${TXT}"
+ fi
+
+ echo "<$TDT><a href=\"testSummary-"${REVISION}".html\">"${REVISION}"</a></TD>" >> ${DTI}
+ echo "<$TDT>${TS}</TD>" >> ${DTI}
+ echo "<$TDT>${CHGLINK}</TD>" >> ${DTI}
+ echo "<$TDT>${FOOTPRINT}</TD>" >> ${DTI}
+ echo "<$TDT>${BLDERRLINK}${FAILURELINK}</TD>" >> ${DTI}
+ echo "<$TDT>${DERBALLPRCNT}</TD>" >> ${DTI}
+ echo "<$TDT>${NOTE}</TD>" >> ${DTI}
+ no=`expr $no + 1`
+ echo "<TR>" >> ${DTI}
+done # REVISIONS
+echo "</TABLE>" >> ${DTI}
+echo " [${no}]"
+
+
+echo "<HR>" >> ${DTI}
+echo "<div style=\"text-align: right;\">" >> ${DTI}
+echo "<font size=\"-1\"><i>" >> ${DTI}
+date +%Y-%m-%d" "%H:%M:%S" "%Z >> ${DTI}
+echo "</i></font>" >> ${DTI}
+echo "</div>" >> ${DTI}
+
+# if [ "${SHOWDETAILS}" != "ShowDetails" ]
+# then
+# echo "<i>Web space sponsored by</i> " >> ${DTI}
+# echo "<a href="http://www.multinet.no/">" >> ${DTI}
+# echo "<img align=\"top\" alt=\"MultiNet AS\" style=\"border: 0px solid; width: 200px; height: 36px;\" src=\"http://www.multinet.no/gfx/multilogo.jpg\"></a>" >> ${DTI}
+# fi
+echo "</body>" >> ${DTI}
+echo "</html>" >> ${DTI}
+if [ "${SHOWDETAILS}" != "ShowDetails" ]
+then
+ SRC="${DTI}"
+ DST="${DTIPUB}"
+ echo "**** OBS! ${SCPUT} ${SRC} ${PUBLISHUSER}@${PUBLISHSITE}:${DST}"
+ ### ${SCPUT} ${SRC} ${PUBLISHUSER}@${PUBLISHSITE}:${DST}
+fi
+
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkDerbyTestIndex_all
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkDerbyTestIndex_all
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot Fri Nov 24 00:35:04 2006
@@ -0,0 +1,80 @@
+#!/bin/bash
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts"
+. ${TOOLDIR}/env
+
+# We have one catalog per platform
+if [ ! -e ${TESTLOGDIR} ]
+then
+ echo "${TESTLOGDIR} does not exist"
+ exit
+fi
+
+# Get the list of testsuite we are running:
+TESTLISTFILE="${DERBYDIR}/testing/testlist"
+SUITES=`gawk '{ print $1 }' ${TESTLISTFILE} | grep -v "^#"`
+
+# Get the set of platforms
+cd ${TESTLOGDIR}
+PLATFORMS=`ls`
+NOOFPLFS=`echo ${PLATFORMS} | wc -w`
+PLFNO=1
+
+# Get the list of revisions
+# Here we use all.
+REVISIONSFILE="${REVISIONLIST}"
+REVISIONS=`cat ${REVISIONSFILE} | gawk '{ print $1 }' | grep -v "^#"`
+
+mkdir -p ${DERBYDIR}/testing/Full/plot
+chmod go+rx ${DERBYDIR}/testing/Full/plot
+
+for PLATFORM in ${PLATFORMS}
+do
+ echo "${PLATFORM} [${PLFNO}/${NOOFPLFS}]"
+ mkdir -p ${DERBYDIR}/testing/Full/plot/${PLATFORM}
+ chmod go+rx ${DERBYDIR}/testing/Full/plot/${PLATFORM}
+ for SUITE in ${SUITES}
+ do
+ echo " ${SUITE}"
+ echo -n "" > ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}.data
+ for REVISION in ${REVISIONS}
+ do
+ # echo " ${REVISION}"
+ # x = ${revision}
+ # baseRev = platform.baseline.revision
+ BASELINE=`head -1 ${PLATFORM}/baseline.csv | gawk '{ print $2 }'`
+ # durBase = platform.baseRev(suite).duration
+ BASETIME=`grep "^${SUITE} " ${PLATFORM}/${BASELINE}.csv | gawk '{ print $6 }'`
+ BASESECONDS=`grep "^${SUITE} " ${PLATFORM}/baseline.csv | gawk '{ print $3 }'`
+ # Jeez.... Shouldn't read this EVERY round...
+ REVDATE=`gawk '{ print $1 }' ${DERBYDIR}/UpdateLog/${REVISION}/UpdateTime`
+ if [ -e ${PLATFORM}/${REVISION}.csv ]
+ then
+ # 2: Number, 3: OK, 4: Failed, 5: Skipped
+ RES=`grep "^${SUITE} " ${PLATFORM}/${REVISION}.csv`
+ # yDur = platform.revision(suite).duration
+ TIME=`echo ${RES} | grep "^${SUITE} " | gawk '{ print $6 }'`
+ SECONDS=`${TOOLDIR}/toSeconds ${TIME}`
+ # yPercent= (yDur/durBase)*100
+ PERCENT=`${TOOLDIR}/calcPercent ${SECONDS} ${BASESECONDS}`
+ # echo "$x $yPercent" >> tmp.dur
+ # yNtests = platform.revision(suite).NumberOfTests
+ NTESTS=`echo ${RES} | grep "^${SUITE} " | gawk '{ print $2 }'`
+ # "$x $yNtests" >> tmp.Ntests
+ # yNok = platform.revision(suite).NumberOK
+ NOK=`echo ${RES} | grep "^${SUITE} " | gawk '{ print $3 }'`
+ # "$x $yNok" >> tmp.Nok
+ # yNfail = platform.revision(suite).NumberFail
+ NFAIL=`echo ${RES} | grep "^${SUITE} " | gawk '{ print $4 }'`
+ # "$x $yNfail" >> tmp.Nfail
+ echo "${REVDATE} ${REVISION} ${PERCENT} ${NTESTS} ${NOK} ${NFAIL}" \
+ >> ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}.data
+ echo -n "."
+ else
+ # echo " No ${REVISION} for ${PLATFORM}"
+ echo -n "-"
+ fi
+ done # REVISIONS
+ echo ""
+ done # SUITES
+ let " PLFNO = ${PLFNO} + 1 "
+done # PLATFORMS
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot.recent
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot.recent?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot.recent (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot.recent Fri Nov 24 00:35:04 2006
@@ -0,0 +1,87 @@
+#!/bin/bash
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts"
+. ${TOOLDIR}/env
+
+# We have one catalog per platform
+if [ ! -e ${TESTLOGDIR} ]
+then
+ echo "${TESTLOGDIR} does not exist"
+ exit
+fi
+
+# Get the list of testsuite we are running:
+TESTLISTFILE="${DERBYDIR}/testing/testlist"
+SUITES=`gawk '{ print $1 }' ${TESTLISTFILE} | grep -v "^#"`
+
+# Get the set of platforms
+cd ${TESTLOGDIR}
+PLATFORMS=`ls`
+NOOFPLFS=`echo ${PLATFORMS} | wc -w`
+PLFNO=1
+
+# Get the list of revisions
+# Here we use all.
+REVISIONSFILE="${REVISIONLIST}"
+REVISIONS=`cat ${REVISIONSFILE} | gawk '{ print $1 }' | grep -v "^#"`
+
+for PLATFORM in ${PLATFORMS}
+do
+ echo "${PLATFORM} [${PLFNO}/${NOOFPLFS}]"
+ for SUITE in ${SUITES}
+ do
+ PREVREC=`head -1 ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}.data`
+ PREVREV=`echo ${PREVREC} | gawk '{ print $2 }'`
+ echo " ${SUITE}: ${PREVREV}"
+ cp ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}.data \
+ ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}.data.prev
+ echo -n "" > ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}.data.new
+ for REVISION in ${REVISIONS}
+ do
+ # echo " ${REVISION}"
+ # x = ${revision}
+ # baseRev = platform.baseline.revision
+ # echo "${REVISION} = ${PREVREV}"
+ if [ "${REVISION}" = "${PREVREV}" ]
+ then
+ # echo "${REVISION}/${PREVREV} Done."
+ break
+ fi
+ BASELINE=`head -1 ${PLATFORM}/baseline.csv | gawk '{ print $2 }'`
+ # durBase = platform.baseRev(suite).duration
+ BASETIME=`grep "^${SUITE} " ${PLATFORM}/${BASELINE}.csv | gawk '{ print $6 }'`
+ BASESECONDS=`grep "^${SUITE} " ${PLATFORM}/baseline.csv | gawk '{ print $3 }'`
+ # Jeez.... Shouldn't read this EVERY round...
+ REVDATE=`gawk '{ print $1 }' ${DERBYDIR}/UpdateLog/${REVISION}/UpdateTime`
+ if [ -e ${PLATFORM}/${REVISION}.csv ]
+ then
+ # 2: Number, 3: OK, 4: Failed, 5: Skipped
+ RES=`grep "^${SUITE} " ${PLATFORM}/${REVISION}.csv`
+ # yDur = platform.revision(suite).duration
+ TIME=`echo ${RES} | grep "^${SUITE} " | gawk '{ print $6 }'`
+ SECONDS=`${TOOLDIR}/toSeconds ${TIME}`
+ # yPercent= (yDur/durBase)*100
+ PERCENT=`${TOOLDIR}/calcPercent ${SECONDS} ${BASESECONDS}`
+ # echo "$x $yPercent" >> tmp.dur
+ # yNtests = platform.revision(suite).NumberOfTests
+ NTESTS=`echo ${RES} | grep "^${SUITE} " | gawk '{ print $2 }'`
+ # "$x $yNtests" >> tmp.Ntests
+ # yNok = platform.revision(suite).NumberOK
+ NOK=`echo ${RES} | grep "^${SUITE} " | gawk '{ print $3 }'`
+ # "$x $yNok" >> tmp.Nok
+ # yNfail = platform.revision(suite).NumberFail
+ NFAIL=`echo ${RES} | grep "^${SUITE} " | gawk '{ print $4 }'`
+ # "$x $yNfail" >> tmp.Nfail
+ CURRENT="${REVDATE} ${REVISION} ${PERCENT} ${NTESTS} ${NOK} ${NFAIL}"
+ echo ${CURRENT}
+ echo "${CURRENT}" >> ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}.data.new
+ # echo -n "."
+ else
+ echo " No ${REVISION} for ${PLATFORM}"
+ # echo -n "-"
+ fi
+ done # REVISIONS
+ cat ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}.data.new ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}.data.prev > ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}.data
+ echo ""
+ done # SUITES
+ let " PLFNO = ${PLFNO} + 1 "
+done # PLATFORMS
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot.recent
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot.recent
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot_last20
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot_last20?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot_last20 (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot_last20 Fri Nov 24 00:35:04 2006
@@ -0,0 +1,55 @@
+#!/bin/bash
+COUNT=$1
+# Assumes *full* data exists. This script only does 'head -${COUNT}' on the complete data files.
+# Should rename ${SUITE}_last20.data to something more general..
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts"
+. ${TOOLDIR}/env
+
+# We have one catalog per platform
+if [ ! -e ${TESTLOGDIR} ]
+then
+ echo "${TESTLOGDIR} does not exist"
+ exit
+fi
+
+# Get the list of testsuite we are running:
+TESTLISTFILE="${DERBYDIR}/testing/testlist"
+SUITES=`gawk '{ print $1 }' ${TESTLISTFILE} | grep -v "^#"`
+
+# Get the set of platforms
+cd ${TESTLOGDIR}
+PLATFORMS=`ls`
+NOOFPLFS=`echo ${PLATFORMS} | wc -w`
+PLFNO=1
+
+# Get the list of revisions
+# Here we use all.
+REVISIONSFILE="${REVISIONLIST}"
+# REVISIONS=`cat ${REVISIONSFILE} | head -${COUNT} | gawk '{ print $1 }' | grep -v "^#"`
+# The 'head -${COUNT}' is a bit rough: includes # comment lines...
+STARTREV=`head -${COUNT} ${REVISIONSFILE} | gawk '{ print $1 }' | grep -v "^#" | tail -1`
+
+# DEBUG echo "PLATFORMS: ${PLATFORMS}, SUITES: ${SUITES}"
+for PLATFORM in ${PLATFORMS}
+do
+ echo "${PLATFORM} [${PLFNO}/${NOOFPLFS}]"
+ for SUITE in ${SUITES}
+ do
+ echo " ${SUITE}"
+ # head -${COUNT} ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}.data > ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}_last20.data
+
+ echo -n "" > ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}_last20.data
+ while read LINE
+ do
+ LINEREV=`echo ${LINE} | gawk '{ print $2 }'`
+ if [ ${LINEREV} -lt ${STARTREV} ]
+ then
+ # echo " break on ${LINEREV}"
+ break
+ fi
+ echo ${LINE} >> ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}_last20.data
+ done < ${DERBYDIR}/testing/Full/plot/${PLATFORM}/${SUITE}.data
+
+ done # SUITES
+ let " PLFNO = ${PLFNO} + 1 "
+done # PLATFORMS
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot_last20
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkGNUplot_last20
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/mkJIRArefs
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/mkJIRArefs?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/mkJIRArefs (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/mkJIRArefs Fri Nov 24 00:35:04 2006
@@ -0,0 +1,215 @@
+#!/bin/bash
+SANDBOX=$1
+REVISION=$2
+# DEBUG echo "+++ $0"
+# SHOULD BE DEFINED OUTSIDE. DERBYDIR=${HOME}/Apache/${SANDBOX}
+if [ "${DERBYDIR}" == "" ] || [ "${REVISION}" == "" ]
+then
+ echo "Usage: $0 <DERBYDIR> revision"
+ echo " Example: $0 Derby ..."
+ echo " $0 DerbyJvm1.4 ..."
+ echo " $0 TinderBox_Derby ..."
+ exit
+fi
+
+if [ ! -e ${DERBYDIR} ]
+then
+ echo "${DERBYDIR} does not exist."
+ exit
+fi
+
+cd ${DERBYDIR}
+if [ ! -e env.sh ]
+then
+ echo "${DERBYDIR} does not appear to be a Derby sandbox (No env.sh found)"
+ exit
+fi
+. ./env.sh
+
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts"
+. ${TOOLDIR}/env
+
+JIRA_DESCRIPTIONS="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/Failures/JIRA_description.txt"
+
+# Get the list of testsuite we are running:
+TESTLISTFILE="${DERBYDIR}/testing/showtestlist"
+SUITES=`gawk '{ print $1 }' ${TESTLISTFILE} | grep -v "^#"`
+## SUITES="derbyall"
+
+if [ ! -e ${TESTLOGDIR} ]
+then
+ echo "${TESTLOGDIR} does not exist"
+ exit
+fi
+# Get the set of platforms
+cd ${TESTLOGDIR}
+PLATFORMS=`ls`
+
+cd ${DERBYDIR}/FailReports
+
+SUMMARY="${REVISION}.html"
+# DEBUG echo -n "SUMMARY: ${SUMMARY} in ";pwd
+echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">" > ${SUMMARY}
+echo "<html>" >> ${SUMMARY}
+echo "<head>" >> ${SUMMARY}
+echo "<title>${REVISION} ${DERBYVERSION} Apache Derby Open Source Database</title>" >> ${SUMMARY}
+echo "</head>" >> ${SUMMARY}
+echo "<body>" >> ${SUMMARY}
+echo "<font size=\"+2\"><b><i>${SANDBOX}</i> ${REVISION} </b></font>" >> ${SUMMARY}
+
+# DEBUG echo "${SANDBOX}"
+echo "<TABLE border="1">" >> ${SUMMARY}
+
+echo "<TR>" >> ${SUMMARY}
+for PLATFORM in ${PLATFORMS}
+do
+ if [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/externallyVisible ] && [ ! -e ${DERBYDIR}/testing/testlog/${PLATFORM}/excludeFromMailReport ]
+ then
+ echo "<TD>" >> ${SUMMARY}
+ TEMP=`echo ${PLATFORM} | sed -e 's/_/<br>/g'`
+ # echo "${PLATFORM}" >> ${SUMMARY}
+ echo "${TEMP}" >> ${SUMMARY}
+ echo "</TD>" >> ${SUMMARY}
+ fi
+done
+echo "</TR>" >> ${SUMMARY}
+
+echo "<TR>" >> ${SUMMARY}
+
+REVISION=`echo ${REVISION} | sed -e 's/M//'`
+for PLATFORM in ${PLATFORMS}
+do
+ HADERRORS=""
+ if [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/externallyVisible ] && [ ! -e ${DERBYDIR}/testing/testlog/${PLATFORM}/excludeFromMailReport ]
+ then
+ echo "<TD style=\"vertical-align: top;\">" >> ${SUMMARY}
+ # DEBUG echo "${PLATFORM}"
+ # echo "${PLATFORM}" >> ${SUMMARY}
+ # echo "</TD>" >> ${SUMMARY}
+ FOUNDSUITES="false" # Must handle the case when no suites are reported.
+ for SUITE in ${SUITES} # The SUITES we look for
+ do
+ # DEBUG echo "SUITE: ${SUITE}"
+ FOUNDTHIS=`grep ${SUITE} ${DERBYDIR}/testing/testlog/${PLATFORM}/${REVISION}.csv`
+ if [ "${FOUNDTHIS}" != "" ]
+ then
+ FOUNDSUITES="true"
+ fi
+ if [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/${REVISION}.csv ]
+ then
+ # DEBUG echo " ${SUITE}"
+ # DEBUG echo "${DERBYDIR}/testing/testlog/${PLATFORM}/${REVISION}-${SUITE}_fail.txt"
+ # DEBUG ls -l ${DERBYDIR}/testing/testlog/${PLATFORM}/${REVISION}-${SUITE}_fail.txt
+ if [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/${REVISION}-${SUITE}_fail.txt ]
+ then
+ FAILFILE="${DERBYDIR}/testing/testlog/${PLATFORM}/${REVISION}-${SUITE}_fail.txt"
+ # dos2unix ${FAILFILE} FAILFILE$$
+ gawk '{ sub("\r$", ""); print }' ${FAILFILE} > FAILFILE$$
+ FAILFILE="FAILFILE$$"
+ # DEBUG echo "FAILFILE: ${FAILFILE}"
+ JUNIT=`echo ${SUITE} | grep 'org.apache.derbyTesting.'`
+ if [ "${JUNIT}" == "" ]
+ then
+ LINES=`grep : ${FAILFILE}`
+ else
+ # LINES=`grep "^.*) " ${FAILFILE} | sed -e 's/^[1-9]).//' | sed -e 's/org.apache.derbyTesting/../' | sed -e 's/).*: /) /'`
+ LINES=`grep "^.*) " ${FAILFILE} | sed -e 's/^[1-9]).//' | sed -e 's/org.apache.derbyTesting/../' | sed -e 's/).*: /) /' | gawk '{ print $1 }'`
+ fi
+ # Better go via file to really have LINES be a set of lines which may contain blanks.
+ # The way it stands now each "word" is treated as a LINE.
+ rm ${FAILFILE}
+ # DEBUG echo "LINES: ${LINES}"
+ JIRALIST=""
+ for LINE in ${LINES}
+ do
+ # DEBUG echo "LINE: ${LINE}"
+ if [ "${JUNIT}" == "" ]
+ then
+ FAILEDTEST=`echo ${LINE} | gawk -F: '{ print $2 }'`
+ else
+ FAILEDTEST=`echo ${LINE} | gawk '{ print $1 }'`
+ fi
+ # DEBUG echo "FAILEDTEST: ${FAILEDTEST}"
+ JIRA=`grep -v "^#" ${JIRA_DESCRIPTIONS} | grep "${FAILEDTEST}" | gawk '{ print $1 }'`
+ # DEBUG echo "JIRA: ${JIRA}"
+ if [ "${JIRA}" == "" ]
+ then
+ JIRA="'${FAILEDTEST}':<BR> <i><b>New JIRA?</b></i><BR>"
+ else
+ JIRAS=${JIRA}
+ INNERJIRAS="'${FAILEDTEST}':"
+ ORDELIM=""
+ for JIRA in ${JIRAS}
+ do
+ if [ "${JIRA}" == "NEW?" ]
+ then
+ JIRA=" ${ORDELIM}<i><b>New JIRA?</b></i>"
+ else
+ JIRA=" ${ORDELIM}<A HREF=\"https://issues.apache.org/jira/browse/DERBY-${JIRA}\">DERBY-${JIRA}</A>"
+ fi
+ INNERJIRAS="${INNERJIRAS}<BR>${JIRA}"
+ ORDELIM="or "
+ done
+ JIRA="${INNERJIRAS}<BR>"
+ fi
+ # DEBUG echo " ${REVISION} ${JIRA} ${SANDBOX} ${PLATFORM}"
+ JIRALIST="${JIRALIST}<BR>${JIRA}"
+ done # LINES
+ echo "<b>${SUITE}</b>: ${JIRALIST}<BR><BR>" >> ${SUMMARY}
+ HADERRORS="${HADERRORS}E"
+ else
+ # echo "${DERBYDIR}/testing/testlog/${PLATFORM}/${REVISION}-${SUITE}_fail.txt does not exist"
+ # echo " ${REVISION} NA ${SANDBOX} ${PLATFORM} (Not available)"
+ # echo "<b><i>${SUITE}</i></b>" >> ${SUMMARY}
+ HADERRORS="${HADERRORS}"
+ if [ "${SUITE}" == "derbyall" ]
+ then
+ # DEBUG echo "SUITE == derbyall"
+ DERBYALLRUN=`grep derbyall ${DERBYDIR}/testing/testlog/${PLATFORM}/${REVISION}.csv`
+ if [ "${DERBYALLRUN}" != "" ]
+ then
+ DAERR=`echo ${DERBYALLRUN} | gawk '{ print $2 }'`
+ ERRS="No errors!"
+ if [ "${DAERR}" == "" ]
+ then
+ ERRS="Unknown!"
+ HADERRORS="${HADERRORS}U"
+ fi
+ # DEBUG echo "${SUITE}: ${ERRS}"
+ echo "<b>${SUITE}</b>: <br><b><i>${ERRS}</i></b><br><br>" >> ${SUMMARY}
+ fi
+ fi
+ fi # [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/${REVISION}-${SUITE}_fail.txt ]
+ fi # [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/${REVISION}.csv ]
+ done # SUITES
+ # DEBUG echo "HADERRORS: ${HADERRORS}"
+ if [ ! -e ${DERBYDIR}/testing/testlog/${PLATFORM}/${REVISION}-system ]
+ then
+ echo "<b>${REVISION}: <i>NA</i></b>" >> ${SUMMARY}
+ elif [ ! -e ${DERBYDIR}/testing/testlog/${PLATFORM}/${REVISION}.csv ]
+ then
+ echo "<b>Total: <i>NA</i></b>" >> ${SUMMARY}
+ elif [ "${HADERRORS}" == "" ]
+ then
+ TOTALMSG="No errors!"
+ if [ "${FOUNDSUITES}" == "false" ]
+ then
+ TOTALMSG="No results found!"
+ fi
+ echo "<br><br><b>TOTAL:</b> <br><b><i>${TOTALMSG}</i></b>" >> ${SUMMARY}
+ fi
+ echo "</TD>" >> ${SUMMARY}
+ fi # [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/externallyVisible ] && [ not -e ${PLATFORM}/excludeFromMailReport ]
+done # PLATFORMS
+echo "</TR>" >> ${SUMMARY}
+echo "</TABLE>" >> ${SUMMARY}
+date >> ${SUMMARY}
+echo "</body>" >> ${SUMMARY}
+chmod go+r ${SUMMARY}
+
+# Make SUMARY publicly available:
+SRC="${SUMMARY}"
+DST="${PUBLISHDIR}"
+echo "**** OBS! ${SCPUT} ${SRC} ${PUBLISHUSER}@${PUBLISHSITE}:${DST}/${SANDBOX}/FailReports/"
+### ${SCPUT} ${SRC} ${PUBLISHUSER}@${PUBLISHSITE}:${DST}/${SANDBOX}/FailReports/
+# DEBUG echo "--- $0"
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkJIRArefs
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkJIRArefs
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/mkJIRArefs.current
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/mkJIRArefs.current?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/mkJIRArefs.current (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/mkJIRArefs.current Fri Nov 24 00:35:04 2006
@@ -0,0 +1,221 @@
+#!/bin/bash
+SANDBOX=$1
+WHICH_REVISION=$2
+# DEBUG echo "+++ $0"
+# SHOULD BE DEFINED OUTSIDE. DERBYDIR=${HOME}/Apache/${SANDBOX}
+if [ "${DERBYDIR}" == "" ] || [ "${WHICH_REVISION}" == "" ]
+then
+ echo "Usage: $0 <DERBYDIR> revision"
+ echo " Example: $0 Derby ..."
+ echo " $0 DerbyJvm1.4 ..."
+ echo " $0 TinderBox_Derby ..."
+ exit
+fi
+
+if [ ! -e ${DERBYDIR} ]
+then
+ echo "${DERBYDIR} does not exist."
+ exit
+fi
+
+cd ${DERBYDIR}
+if [ ! -e env.sh ]
+then
+ echo "${DERBYDIR} does not appear to be a Derby sandbox (No env.sh found)"
+ exit
+fi
+. ./env.sh
+
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts"
+. ${TOOLDIR}/env
+
+JIRA_DESCRIPTIONS="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/Failures/JIRA_description.txt"
+
+# Get the list of testsuite we are running:
+TESTLISTFILE="${DERBYDIR}/testing/showtestlist"
+SUITES=`gawk '{ print $1 }' ${TESTLISTFILE} | grep -v "^#"`
+## SUITES="derbyall"
+
+if [ ! -e ${TESTLOGDIR} ]
+then
+ echo "${TESTLOGDIR} does not exist"
+ exit
+fi
+# Get the set of platforms
+cd ${TESTLOGDIR}
+PLATFORMS=`ls`
+
+# cd ${DERBYDIR}/Failures
+cd ${DERBYDIR}/FailReports
+
+# mkdir -p ${SANDBOX}
+# chmod go+rx ${SANDBOX}
+
+if [ "${WHICH_REVISION}" == "current" ]
+then # DOES NOT WORK for DBTGQA tests: FIXME or just drop mkJIRArefs.current.... Not used for DBTGQA tests.
+ REVISION=`grep "/classes] " ${DERBYDIR}/BuildLog/currentSysInfo.txt | gawk -F] '{ print $2 }'` # Problem here
+ REVISION=`echo "${REVISION}" | gawk -F\( '{ print $2 }' | gawk -F\) '{ print $1 }'`
+elif [ "${WHICH_REVISION}" == "previous" ]
+then
+ REVISIONSFILE="${DERBYDIR}/testing/revisionlist"
+ PREVREV=`grep -v "^#" ${REVISIONSFILE} | head -2 | tail -1 | gawk '{ print $1 }'`
+ REVISION=`grep "/classes] " ${DERBYDIR}/BuildLog/${PREVREV}/sysinfo.txt | gawk -F] '{ print $2 }'` # Problem here
+ REVISION=`echo "${REVISION}" | gawk -F\( '{ print $2 }' | gawk -F\) '{ print $1 }'`
+fi
+echo "${WHICH_REVISION} ${REVISION}"
+# Next is added since we now get e.g. 394991:394993M
+REVISION=`echo "${REVISION}" | gawk -F: '{ print $1 }'`
+REVISION=`echo ${REVISION} | sed -e 's/M//'`
+echo "${WHICH_REVISION} ${REVISION}"
+
+# SUMMARY="${SANDBOX}/${REVISION}.html"
+SUMMARY="${REVISION}.html"
+echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">" > ${SUMMARY}
+echo "<html>" >> ${SUMMARY}
+echo "<head>" >> ${SUMMARY}
+echo "<title>${WHICH_REVISION} ${DERBYVERSION} Apache Derby Open Source Database</title>" >> ${SUMMARY}
+echo "</head>" >> ${SUMMARY}
+echo "<body>" >> ${SUMMARY}
+echo "<font size=\"+2\"><b><i>${SANDBOX}</i> ${REVISION}</b></font>" >> ${SUMMARY}
+
+echo "${SANDBOX}"
+echo "<TABLE border="1">" >> ${SUMMARY}
+
+echo "<TR>" >> ${SUMMARY}
+for PLATFORM in ${PLATFORMS}
+do
+ if [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/externallyVisible ] && [ ! -e ${DERBYDIR}/testing/testlog/${PLATFORM}/excludeFromMailReport ]
+ then
+ echo "<TD>" >> ${SUMMARY}
+ TEMP=`echo ${PLATFORM} | sed -e 's/_/<br>/g'`
+ # echo "${PLATFORM}" >> ${SUMMARY}
+ echo "${TEMP}" >> ${SUMMARY}
+ echo "</TD>" >> ${SUMMARY}
+ fi
+done
+echo "</TR>" >> ${SUMMARY}
+
+echo "<TR>" >> ${SUMMARY}
+
+PUREREVISION=`echo ${REVISION} | sed -e 's/M//'`
+
+for PLATFORM in ${PLATFORMS}
+do
+ HADERRORS=""
+ if [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/externallyVisible ] && [ ! -e ${DERBYDIR}/testing/testlog/${PLATFORM}/excludeFromMailReport ]
+ then
+ echo "<TD style=\"vertical-align: top;\">" >> ${SUMMARY}
+ # echo "${PLATFORM}" >> ${SUMMARY}
+ # echo "</TD>" >> ${SUMMARY}
+ for SUITE in ${SUITES}
+ do
+ if [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/${WHICH_REVISION}.csv ]
+ then
+ # echo " ${SUITE}"
+ # echo "${DERBYDIR}/testing/testlog/${PLATFORM}/${PUREREVISION}-${SUITE}_fail.txt"
+ if [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/${PUREREVISION}-${SUITE}_fail.txt ]
+ then
+ FAILFILE="${DERBYDIR}/testing/testlog/${PLATFORM}/${PUREREVISION}-${SUITE}_fail.txt"
+ # dos2unix ${FAILFILE} FAILFILE$$
+ gawk '{ sub("\r$", ""); print }' ${FAILFILE} > FAILFILE$$
+ FAILFILE="FAILFILE$$"
+ # echo "FAILFILE: ${FAILFILE}"
+ JUNIT=`echo ${SUITE} | grep 'org.apache.derbyTesting.'`
+ if [ "${JUNIT}" == "" ]
+ then
+ LINES=`grep : ${FAILFILE}`
+ else
+ # LINES=`grep "^.*) " ${FAILFILE} | sed -e 's/^[1-9]).//' | sed -e 's/org.apache.derbyTesting/../' | sed -e 's/).*: /) /'`
+ LINES=`grep "^.*) " ${FAILFILE} | sed -e 's/^[1-9]).//' | sed -e 's/org.apache.derbyTesting/../' | sed -e 's/).*: /) /' | gawk '{ print $1 }'`
+ fi
+ # Better go via file to really have LINES be a set of lines which may contain blanks.
+ # The way it stands now each "word" is treated as a LINE.
+ rm ${FAILFILE}
+ # echo "LINES: ${LINES}"
+ JIRALIST=""
+ for LINE in ${LINES}
+ do
+ # echo "LINE: ${LINE}"
+ if [ "${JUNIT}" == "" ]
+ then
+ FAILEDTEST=`echo ${LINE} | gawk -F: '{ print $2 }'`
+ else
+ FAILEDTEST=`echo ${LINE} | gawk '{ print $1 }'`
+ fi
+ # echo "FAILEDTEST: ${FAILEDTEST}"
+ JIRA=`grep -v "^#" ${JIRA_DESCRIPTIONS} | grep "${FAILEDTEST}" | gawk '{ print $1 }'`
+ # echo "JIRA: ${JIRA}"
+ if [ "${JIRA}" == "" ]
+ then
+ JIRA="'${FAILEDTEST}':<BR> <i><b>New JIRA?</b></i><BR>"
+ else
+ JIRAS=${JIRA}
+ INNERJIRAS="'${FAILEDTEST}':"
+ ORDELIM=""
+ for JIRA in ${JIRAS}
+ do
+ if [ "${JIRA}" == "NEW?" ]
+ then
+ JIRA=" ${ORDELIM}<i><b>New JIRA?</b></i>"
+ else
+ JIRA=" ${ORDELIM}<A HREF=\"https://issues.apache.org/jira/browse/DERBY-${JIRA}\">DERBY-${JIRA}</A>"
+ fi
+ INNERJIRAS="${INNERJIRAS}<BR>${JIRA}"
+ ORDELIM="or "
+ done
+ JIRA="${INNERJIRAS}<BR>"
+ fi
+ # echo " ${REVISION} ${JIRA} ${SANDBOX} ${PLATFORM}"
+ JIRALIST="${JIRALIST}<BR>${JIRA}"
+ done # LINES
+ echo "<b>${SUITE}</b>: ${JIRALIST}<BR><BR>" >> ${SUMMARY}
+ HADERRORS="${HADERRORS}E"
+ else
+ # echo "${DERBYDIR}/testing/testlog/${PLATFORM}/${REVISION}-${SUITE}_fail.txt does not exist"
+ # echo " ${REVISION} NA ${SANDBOX} ${PLATFORM} (Not available)"
+ # echo "<b><i>${SUITE}</i></b>" >> ${SUMMARY}
+ HADERRORS="${HADERRORS}"
+ if [ "${SUITE}" == "derbyall" ] && [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/${PUREREVISION}.csv ]
+ then
+ DERBYALLRUN=`grep derbyall ${DERBYDIR}/testing/testlog/${PLATFORM}/${PUREREVISION}.csv`
+ if [ "${DERBYALLRUN}" != "" ]
+ then
+ DAERR=`echo ${DERBYALLRUN} | gawk '{ print $2 }'`
+ ERRS="No errors!"
+ if [ "${DAERR}" == "" ]
+ then
+ ERRS="Unknown!"
+ HADERRORS="${HADERRORS}U"
+ fi
+ echo "<b>${SUITE}</b>: <br><b><i>${ERRS}</i></b><br><br>" >> ${SUMMARY}
+ fi
+ fi
+ fi # [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/${PUREREVISION}-${SUITE}_fail.txt ]
+ fi # [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/${WHICH_REVISION}.csv ]
+ done # SUITES
+ echo ${HADERRORS}
+ if [ ! -e ${DERBYDIR}/testing/testlog/${PLATFORM}/${PUREREVISION}-system ]
+ then
+ echo "<b>${REVISION}: <i>NA</i></b>" >> ${SUMMARY}
+ elif [ ! -e ${DERBYDIR}/testing/testlog/${PLATFORM}/${PUREREVISION}.csv ]
+ then
+ echo "<b>TOTAL: <i>NA</i></b>" >> ${SUMMARY}
+ elif [ "${HADERRORS}" == "" ]
+ then
+ echo "<br><br><b>TOTAL:</b>: <br><b><i>No errors!</i></b>" >> ${SUMMARY}
+ fi
+ echo "</TD>" >> ${SUMMARY}
+ fi # [ -e ${DERBYDIR}/testing/testlog/${PLATFORM}/externallyVisible ] && [ no -e ${PLATFORM}/excludeFromMailReport ]
+done # PLATFORMS
+echo "</TR>" >> ${SUMMARY}
+echo "</TABLE>" >> ${SUMMARY}
+date >> ${SUMMARY}
+echo "</body>" >> ${SUMMARY}
+chmod go+r ${SUMMARY}
+
+# Make SUMARY publicly available:
+SRC="${SUMMARY}"
+DST="${PUBLISHDIR}"
+echo "**** OBS! ${SCPUT} ${SRC} ${PUBLISHUSER}@${PUBLISHSITE}:${DST}/${SANDBOX}/FailReports/"
+### ${SCPUT} ${SRC} ${PUBLISHUSER}@${PUBLISHSITE}:${DST}/${SANDBOX}/FailReports/
+# DEBUG echo "--- $0"
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkJIRArefs.current
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkJIRArefs.current
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/mkPercentForTimeListVsBaseline
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/mkPercentForTimeListVsBaseline?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/mkPercentForTimeListVsBaseline (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/mkPercentForTimeListVsBaseline Fri Nov 24 00:35:04 2006
@@ -0,0 +1,9 @@
+#!/bin/bash
+#
+timeList=$1
+baseLine=$2
+baseLine=`toSeconds ${baseLine}`
+for TIME in ${timeList}
+do
+ echo `vsTimeBase ${TIME} ${baseLine}`
+done
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkPercentForTimeListVsBaseline
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkPercentForTimeListVsBaseline
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/mkSandBoxSummary
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/mkSandBoxSummary?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/mkSandBoxSummary (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/mkSandBoxSummary Fri Nov 24 00:35:04 2006
@@ -0,0 +1,43 @@
+#!/bin/bash
+REVISION=$1
+DETAILS=$2
+
+if [ "${DERBYDIR}" == "" ]
+then
+ echo "DERBYDIR is undefined!"
+ exit
+fi
+if [ ! -e ${DERBYDIR} ]
+then
+ echo "${DERBYDIR} does not exist!"
+ exit
+fi
+
+SUMMARY=${DERBYDIR}/summary.txt
+if [ "${DETAILS}" == "details" ]
+then
+ SUMMARY=${DERBYDIR}/summary-full.txt
+fi
+
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts"
+. ${TOOLDIR}/env
+
+echo -n " ${REVISION}: " > ${SUMMARY}
+
+# DEBUG echo "demo: " >> ${SUMMARY}
+# DEBUG ${TOOLDIR}/platformsFailCount ${REVISION} "${DETAILS}" demo >> ${SUMMARY}
+# DEBUG ## echo "/" >> ${SUMMARY}
+# DEBUG ## ${TOOLDIR}/platformsDurPrcnt ${REVISION} "${DETAILS}" demo >> ${SUMMARY}
+
+echo "derbyall: " >> ${SUMMARY}
+${TOOLDIR}/platformsFailCount ${REVISION} "${DETAILS}" derbyall >> ${SUMMARY}
+## echo "/" >> ${SUMMARY}
+## ${TOOLDIR}/platformsDurPrcnt ${REVISION} "${DETAILS}" derbyall >> ${SUMMARY}
+
+echo ", suites.All: " >> ${SUMMARY}
+${TOOLDIR}/platformsFailCount ${REVISION} "${DETAILS}" org.apache.derbyTesting.functionTests.suites.All >> ${SUMMARY}
+## echo "/" >> ${SUMMARY}
+## ${TOOLDIR}/platformsDurPrcnt ${REVISION} "${DETAILS}" org.apache.derbyTesting.functionTests.suites.All >> ${SUMMARY}
+
+chmod go+r ${SUMMARY}
+
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkSandBoxSummary
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkSandBoxSummary
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/mkUpdateInfo
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/mkUpdateInfo?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/mkUpdateInfo (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/mkUpdateInfo Fri Nov 24 00:35:04 2006
@@ -0,0 +1,32 @@
+#!/bin/bash
+if [ "$1" = "" -o "$2" = "" ]
+then
+ echo "Usage: $0 oldrevision/$1 revision/$2"
+ exit
+fi
+OLDREVISION=$1
+REVISION=$2
+#
+
+# You should NOT need to modify anything below.
+# NB: derby_source must be defined.
+#---------------------------------------------
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts"
+. ${TOOLDIR}/env
+
+echo "cd ${DERBYDIR}"
+cd ${DERBYDIR}
+
+ UPDATEINFO="UpdateInfo"
+ mkdir -p ${DERBYDIR}/testing/${UPDATEINFO}
+ echo "Changes from ${OLDREVISION} to ${REVISION}:" > ${DERBYDIR}/testing/${UPDATEINFO}/${REVISION}.txt
+ echo "${TOOLDIR}/svnLogRevs.new ${OLDREVISION} ${REVISION} >> ${DERBYDIR}/testing/${UPDATEINFO}/${REVISION}.txt"
+ ${TOOLDIR}/svnLogRevs.new ${OLDREVISION} ${REVISION} >> ${DERBYDIR}/testing/${UPDATEINFO}/${REVISION}.txt
+ echo "" >> ${DERBYDIR}/testing/${UPDATEINFO}/${REVISION}.txt
+ grep -v "sun.com" ${UPDATELOGDIR}/${REVISION}/update.out >> ${DERBYDIR}/testing/${UPDATEINFO}/${REVISION}.txt
+ chmod go+r ${DERBYDIR}/testing/${UPDATEINFO}/${REVISION}.txt
+
+ SRC="${DERBYDIR}/testing/${UPDATEINFO}/${REVISION}.txt"
+ DST="${PUBLISHDIR}/${UPDATEINFO}/${REVISION}.txt"
+ echo "**** OBS! ${SCPUT} ${SRC} ${PUBLISHUSER}@${PUBLISHSITE}:${DST}"
+ ### ${SCPUT} ${SRC} ${PUBLISHUSER}@${PUBLISHSITE}:${DST}
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkUpdateInfo
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/mkUpdateInfo
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/platformsDurPrcnt
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/platformsDurPrcnt?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/platformsDurPrcnt (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/platformsDurPrcnt Fri Nov 24 00:35:04 2006
@@ -0,0 +1,37 @@
+#!/bin/bash
+REVISION=$1
+SHOWDETAILS=$2
+SUITE=$3
+
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts"
+. ${TOOLDIR}/env
+
+# Get the set of platforms
+cd ${TESTLOGDIR}
+PLATFORMS=`ls`
+
+DERBALLPRCNT="["
+for PLATFORM in ${PLATFORMS} # TinderBox uses ONE platform..
+do
+ # DEBUG echo -n "${PLATFORM} "; pwd
+ if [ -e ${PLATFORM}/externallyVisible ] || [ "${SHOWDETAILS}" = "details" ]
+ then
+ if [ -e ${PLATFORM}/${REVISION}.csv ]
+ then
+ # 2: Number, 3: OK, 4: Failed, 5: Skipped, 6: time
+
+ TIME=`grep "^${SUITE} " ${PLATFORM}/${REVISION}.csv | gawk '{ print $6 }'`
+ SECONDS=`${TOOLDIR}/toSeconds ${TIME}`
+ BASESECONDS=`grep "^${SUITE} " ${PLATFORM}/baseline.csv | gawk '{ print $3 }'`
+ PERCENT=`${TOOLDIR}/calcPercent ${SECONDS} ${BASESECONDS}`
+ DERBALLPRCNT="${DERBALLPRCNT} ${PERCENT}% "
+
+ else
+ # DERBALLPRCNT="${DERBALLPRCNT} - "
+ DERBALLPRCNT="${DERBALLPRCNT} ---.--% "
+ fi
+ fi # visible, showdetails
+done # PLATFORMS
+DERBALLPRCNT="${DERBALLPRCNT}]"
+
+echo ${DERBALLPRCNT}
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/platformsDurPrcnt
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/platformsDurPrcnt
------------------------------------------------------------------------------
svn:executable = *
Added: db/derby/code/trunk/tools/testing/reporting/scripts/platformsFailCount
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/tools/testing/reporting/scripts/platformsFailCount?view=auto&rev=478802
==============================================================================
--- db/derby/code/trunk/tools/testing/reporting/scripts/platformsFailCount (added)
+++ db/derby/code/trunk/tools/testing/reporting/scripts/platformsFailCount Fri Nov 24 00:35:04 2006
@@ -0,0 +1,37 @@
+#!/bin/bash
+REVISION=$1
+SHOWDETAILS=$2
+SUITE=$3
+
+TOOLDIR="${DERBYDIR}/${BRANCH_DIR}/tools/testing/reporting/scripts"
+. ${TOOLDIR}/env
+
+# Get the set of platforms
+cd ${TESTLOGDIR}
+PLATFORMS=`ls`
+
+DERBALLFAILS="["
+for PLATFORM in ${PLATFORMS} # TinderBox uses ONE platform..
+do
+ # DEBUG echo -n "${PLATFORM} "; pwd
+ if [ -e ${PLATFORM}/externallyVisible ] || [ "${SHOWDETAILS}" = "details" ]
+ then
+ if [ -e ${PLATFORM}/${REVISION}.csv ]
+ then
+ # 2: Number, 3: OK, 4: Failed, 5: Skipped, 6: time
+ ## RES=`grep "^derbyall " ${PLATFORM}/${REVISION}.csv`
+ RES=`grep "^${SUITE} " ${PLATFORM}/${REVISION}.csv`
+ FAILED=`echo ${RES} | gawk '{ print $4 }'`
+ if [ "${FAILED}" == "" ]
+ then
+ FAILED="?"
+ fi
+ DERBALLFAILS="${DERBALLFAILS} ${FAILED} "
+ else
+ DERBALLFAILS="${DERBALLFAILS} - "
+ fi
+ fi # visible, showdetails
+done # PLATFORMS
+DERBALLFAILS="${DERBALLFAILS}]"
+
+echo ${DERBALLFAILS}
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/platformsFailCount
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: db/derby/code/trunk/tools/testing/reporting/scripts/platformsFailCount
------------------------------------------------------------------------------
svn:executable = *