Feature and bug patch
Description:
Added the SKIP feature which skips a test.
The latest code will hang the very last test. Skip that test for now.
Platforms tested:
heping pp.
Bug fix
Description:
The testh5diff.sh script fails on mcr because of random srun messages
thrown into the output
Solution:
Added some code to filter out the srun messages before the output is compared.
Platforms tested:
LLNL mcr
Misc. update:
modified the script test so that when the test files do not exist , they are created
Description:
Solution:
Platforms tested:
linux
solaris
Misc. update:
Improvement
Description:
The actual stderr output was modified by the FILTER and was not
available for display if errors detected later.
Solution:
Copy the actual stderr to a temporary file and do filtering on that.
Platforms tested:
LANL Flash.
Misc. update:
Bug fix
Description:
Various system or software (e.g. MPE) will print some diagnosis
messages to stderr that cannot be suppressed. They messed up
the output matching. Installed the STDERR_FILTER() to remove
all these messages.
Platforms tested:
LANL flash.
Misc. update:
bug fix.
Description:
When MPE library is used, it prints two extra message lines that
interfere with the expected output.
Solution:
Filter out those two lines of text from stderr.
Also added a provision to print the whole generated output when failure
is detected.
Platforms tested:
Tested in copper, serial, parallel and parallel with MPE.
Misc. update:
bug fix/new feature.
Description:
(committing changes made by Leon.)
ph5diff now is a real program by itself. It has its
own main (ph5diff_main.c).
Codes common to h5diff and ph5diff are in h5diff_common.c.
Removed the hack that hide failures from testh5diff.sh.
Platforms tested:
heping(serial, pp), sol (pp), copper(pp).
Misc. update:
Bug fix.
Description:
ph5diff is still being fixed.
Changed this to report all failures but will not flag them as
errors so that daily tests can continue. Will be fixed soon.
Platforms tested:
Tested in sol (pp) where it has most failures.
Misc. update:
bug fix.
Description:
Need eval before the RUNCMD command because some machines like
AIX, has RUNPARALLEL in the style as
MP_PROCS=3 MP_TASKS_PER_NODE=3 poe ./a.out
that throws the shell script off.
Platforms tested:
Tested in copper (pp) where it failed before.
Tested in heping pp too.
Misc. update:
Bug fixed.
Description:
Heping used to have a network limit that if too many rsh connections
occurred in a second, it stopped accepting connections for 30 seconds.
That caused testph5diff to fail when too many mpi jobs are executed
repidly. A sleep 2 was in to go around this problem. Heping's limit
has been raised, thus no more need for this hack. Sleep 2 is removed.
Platforms tested:
Tested in heping (pp).
Misc. update:
Fixed numerous ph5diff bugs.
Description:
Fixed manager output printing
Fixed out of order output printing
Fixed test script execution problem
Temporary fix for large amounts of output overflowing buffer.
Solution:
The manager task buffers its output. However, since the manager task
never gets a print token, this output was lost. Solution: new function called
print_manager_output that prints buffered output is called in places where the
manager buffers its output.
printf was apparently buffering output. This means that a task would sometimes
print even after it had given up its print token. Added fflush() call after
printf() calls, which seems to have fixed the problem.
calling rsh multiple times in succession seems to overwhelm something in Linux,
as it begins to refuse new connections until the old ones reset. Since each
call to mpirun in the test script starts up 4 rsh sessions, the test script
eventually is unable to run any further tests. Solution: Added a short delay in the
testscript between successive calls to mpirun to allow old connections to reset.
The 10k output buffer was of insufficient size to hold the large amounts of
output generated by some of the tests. Since code to buffer to a file has not
been implemented yet, a temporary fix was to increase the size of the output
buffer to 50k.
Platforms tested:
heping
Misc. update:
Bug fix
Description:
h5diff_main.c contained some debug printf statment that produced
unexpected output. Commented them out.
testh5diff.sh: implemented code to test ph5diff tests but
ph5diff has some errors that generated unexpected output.
Temporary hacked to skip tests if run by daily test account.
Platforms tested:
Tested in heping, serial and parallel.
new features
Description:
Added a parallel option to testh5diff.sh to do parallel h5diff tests.
Added testph5diff.sh to invoke testh5diff.sh with parallel mode.
Platforms tested:
Tested in heping (serial and pp).
Temporary daily tests fix.
Description:
The newly added ph5diff is not quite compatible with the h5repack tool.
Disabled the ph5diff build (reverted back to building serial h5diff)
to allow daily tests to work while ph5diff is fixed.
Platforms tested:
Tested in heping both serial and parallel modes.
Misc. update:
New feature.
Description:
Added new tool ph5diff. (Code done by Leon Arber.)
Code is changed but test is not working yet. For now,
it skipped all tests.
Platforms tested:
Tested in heping, serial and parallel modes.
h5diff and h5repack changes
Description:
h5diff
introduced the following four modes of output:
Normal mode: print the number of differences found and where they occured
Report mode: print the above plus the differences
Verbose mode: print the above plus a list of objects and warnings
Quiet mode: do not print output (h5diff always returns an exit code of 1 when differences are found)
h5repack
added an extra parameter for SZIP filter (coding method)
the new syntax is
-f SZIP=<pixels per block,coding>
(pixels per block is a even number in 2-32 and coding method is 'EC' or 'NN')
Example of use:
./h5repack -i file1 -o file2 -f SZIP=8,NN -v
updated usage messages, test scripts and files accordingly
Solution:
Platforms tested:
linux
AIX
solaris
Misc. update:
bug fix continuation
Description:
the atof return value on a hexadecimal input is different
on some systems; before checking for the atof return value
do a character check for the first 2 characters of the string input
Solution:
Platforms tested:
linux
solaris
Misc. update:
bug fix (sort of)
Description:
apparently linux and other systems (solaris) return a different value from atof if the
argument is in hexadecimal .
this return value was used to test if the argument to -p and -d was a valid floating point
number
for now , commented the calls in the script with -p <hexa> until we find a portable solution
Solution:
Platforms tested:
linux
solaris
windows
Misc. update:
h5diff new features
Description:
added comparison for attributes
adeded comparison for all dataset datatypes
added tests for the new features
changed the output format
Solution:
Platforms tested:
linux
solaris 5.7
IRIX 6.5 (64)
Misc. update:
h5repack new features
Description:
added a copy routine for all types
added a copy routine for attributes
commnented some debug messages in h5trav
added the verbose option to some h5diff messages
Platforms tested:
linux
solaris 2.5
IRIX
Misc. update:
h5diff support for long_long
Description:
added h5diff support for long_long;
No automatic test was added because
it seems that the printf format of long_long is slightly different in Linux and IRIX(modi4),
because the diff command complained about a difference in the 2 test files for long_long;
visually, it seems that in IRIX an extra space is added after the print (or maybe it is
just me that is seeing extra spaces :=)
this test is test 5.8, commented in testh5diff.sh
Platforms tested:
Windows 2000 (octopus)
Linux 2.4 (rockaway)
SunOS 5.7 (arabica)
IRIX 6.5 (modi4)
Misc. update:
bug fix
Description:
the signed / unsigned comparison was not properly handled.
the fixtype function sets the sign for the memory type the same sign as found on disk
and the array_diff function only handled signed cases
Solution:
addded for each INTEGER size type an OR condition with the unsigned version
if the datatypes have different signs , comparison is NOT supported
Platforms tested:
Windows 2000 (octopus)
Linux 2.4 (rockaway)
SunOS 5.7 (arabica)
IRIX 6.5 (modi4)
Misc. update:
changes of input/ output format
Description:
on web page /RFC/h5diff
Solution:
Platforms tested:
Windows 2000 (octopus)
Linux 2.4 (rockaway)
SunOS 5.7 (arabica)
IRIX 6.5 (modi4)
Misc. update:
added new test files for h5diff
bug fix
Description:
the criteria for determining the correct switch case cast to void* to type* was the data size read from disk.
this was causing problems on Cray T3E, where all integer except char are 8 bytes long
Solution:
changed the criteria for using the memory size instead, which is determined by the same function
that reads the data into memory
the messages " using memory NATIVE_TYPE_X" were removed, because they might not coincid on different
platforms.
Platforms tested:
Linux 2.4 (rockaway)
SunOS 5.7 (arabica)
IRIX 6.5 (modi4)
Misc. update:
h5diff update
Description:
removed the -l , list, option
this feature will be part of a different tool
Solution:
Platforms tested:
Windows 2000 (octopus)
Linux 2.4 (rockaway)
SunOS 5.7 (arabica)
IRIX 6.5 (modi4)
Misc. update:
added more tests, described in the test matrix
Description:
test -r
test -l
expanded -d, -p and -n tests
test different types to include links and named types
test for non supported classes, e.g bitfield, opaque , etc
Platforms tested:
Linux 2.4 (rockaway)
SunOS 5.7 (arabica)
IRIX 6.5 (modi4)
Misc. update:
added some niceties and utilities, and more tests
Description:
some niceties: more error messages on cases of bad input
utilities: some functions to more human readable output
more tests: described in the test matrix
Platforms tested:
Linux/rockaway(C)
SunOS/arabica (C)
SGI/modi4 (C)
added more tests to automatic testing
Description:
added test for an invalid option letter
added test for -h option
added test for an invalid option -d
added test for an invalid option -d number
Solution:
Platforms tested:
linux, solaris, sgi
Misc. update:
added test script for h5diff
code cleaning for alpha release
makefile now generates the h5difftst.c program that generates 2 .h5 files for testing
Description:
the .sh script runs several runs of h5diff and compares the output
with a predifined output located in /tools/testfiles (.txt files)
righ now it has only one test
Solution:
Platforms tested:
linux (other platforms later , ok !? )
Misc. update:
bug fix
added more verbose help message
added support for all dataset types
added more error checking
added new output format (28 Jan version )
Platforms tested:
windows , linux