summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorAlbert Cheng <acheng@hdfgroup.org>2001-07-14 20:31:03 (GMT)
committerAlbert Cheng <acheng@hdfgroup.org>2001-07-14 20:31:03 (GMT)
commitc76ee0d68b6602c00984117077f91d359b97b613 (patch)
tree14a86dac824919cec9886867e0e84f55bbb8883f /tools
parent031fdc2f0af20690039e75c475cb4f9b31ac182b (diff)
downloadhdf5-c76ee0d68b6602c00984117077f91d359b97b613.zip
hdf5-c76ee0d68b6602c00984117077f91d359b97b613.tar.gz
hdf5-c76ee0d68b6602c00984117077f91d359b97b613.tar.bz2
[svn-r4209] Purpose:
Improvement Description: The stdout and stderr were both redirected to an output file. This works fine in tradition sequential Unix machines. But in some parallel systems (like mpi-jobs in IBM SP), the stderr is merged with stdout alright but not in the exact order as expected. This is not deterministic in parallel jobs. So, the test output are all there but the ordering maynot be as expected. Solution: Redirect stderr to separated file and append it to the stdout file after test-command is executed. Then compare it with the expected output. This eliminate the assumption that stdout and stderr must merged in "chronical orders". Platforms tested: eirene (serial, mpich), modi4 parallel, tflops parallel, Blue parallel.
Diffstat (limited to 'tools')
-rwxr-xr-xtools/h5dump/testh5dump.sh7
1 files changed, 4 insertions, 3 deletions
diff --git a/tools/h5dump/testh5dump.sh b/tools/h5dump/testh5dump.sh
index 05dfb09..55d86fc 100755
--- a/tools/h5dump/testh5dump.sh
+++ b/tools/h5dump/testh5dump.sh
@@ -40,18 +40,19 @@ TESTING() {
TOOLTEST() {
expect="$srcdir/../testfiles/$1"
actual="../testfiles/`basename $1 .ddl`.out"
+ actual_err="../testfiles/`basename $1 .ddl`.err"
shift
# Run test.
TESTING $DUMPER $@
-
(
echo "#############################"
echo "Expected output for '$DUMPER $@'"
echo "#############################"
cd $srcdir/../testfiles
$RUNSERIAL $DUMPER_BIN "$@"
- ) >$actual 2>&1
+ ) >$actual 2>$actual_err
+ cat $actual_err >> $actual
if $CMP $expect $actual; then
echo " PASSED"
@@ -64,7 +65,7 @@ TOOLTEST() {
# Clean up output file
if test -z "$HDF5_NOCLEANUP"; then
- rm -f $actual
+ rm -f $actual $actual_err
fi
}