Configure feature
Description:
Changed bin/reconfigure.sh script to use autotools in AFS.
Solution:
Previously, the only machine with the correct versions of autoconf and
automake was heping. Now both tools are installed in AFS, so
in theory any hdf machine can be used to run the reconfigure script.
Platforms tested:
heping, eirene, verbena.
On sleipnir and arabica the autotools were unable to find a version
of m4 that was new enough for them.
Misc. update:
Description: At line 3564, the command H5T_bit_set(s, src.u.f.mpos, 1, FALSE)
has unclear intention to me. Before I figure it out, move it to line 3590,
where I think it should be. This did fix some data conversion.
Platforms tested: fuss - already test it for v1.6.
bug fix
Description:
in 1 case when there was not a requested layout, the original chunk was not preserved
Solution:
Platforms tested:
linux (small change)
Misc. update:
Purpose:
Bug fix
Description:
Fixed the error on copper where output would match, except the worker tasks are forcefuly terminated at the end.
Solution:
If an exit code other than 0 was returned, the
parallel environment would assume that there
was an error and would terminate all other
tasks. Because h5repack relies on the return
value of h5diff, it was necessary to return
values other than 0. Fixed by having parallel
runs of h5diff always return 0, whereas the
return value of serial runs is unchanged.
Platforms tested:
copper
Misc. update:
New feature & bug fix
Description:
Allow root node to split, forming a level 2 B-tree
Fix error where wrong record was being copied up to parent node for a 2
node redistribution on the "right" side of the B-tree.
Platforms tested:
FreeBSD 4.11 (sleipnir) w/parallel
Solaris 2.9 (shanti)
Bug fix
Description:
Arabica exhibited strange errors when linker found wrong versions of
header files. This happened because include directories were
given to linker in the wrong order.
Solution:
Move include directories from AM_CFLAGS variable to INCLUDES
variable to put them before CPPFLAGS variable. Trust me, it works.
This bug may also have contributed to strange errors on other platforms
(kelgia?).
Platforms tested:
copper, sleipnir, arabica.
(h5dump broke while building on arabica, but this happened in
a clean checkout, too).
Bug fix
Description:
pmake (on modi4, for instance) complains about undefined variables
if it is run without the -V flag, which turns those errors to warnings.
Solution:
Added test to configure.in to see if $MAKE will allow Makefiles
with undefined variables. If not, sets -V flag in AM_MAKEFLAGS.
Ensured that all custom make targets use AM_MAKEFLAGS.
Also defined all variables that caused errors in top-level Makefile.am.
This means that pmake can be used to build hdf5 *from the top level
only*. To run make from a subdirectory, still need to use -V flag
(or use make or gmake).
Platforms tested:
modi4, heping, copper, sleipnir
Description: For hardware conversion from integers to "long double" on AMD machine, the test
failed because the size of "long double"(can be 16 bytes) is bigger than the precision(80 bits).
There can be some garbage in the unused bytes in "long double". That caused failure during
byte comparison.
Solution: Clean these unused bytes before comparison.
Platforms tested: mir and fuss; simple change
New feature & code cleanup
Description:
Change some references from 'keys' to 'records', which is more correct for
this implementation.
Added feature to allow preemptive 3 node record redistributions (for leaves
only currently)
Added feature to perform preemptive 3->4 node splits (for leaves only
currently)
Platforms tested:
FreeBSD 4.11 (sleipnir) w/parallel
Solaris 2.9 (shanti) w/purify
Too minor to require h5committest
New feature & bug fixes
Description:
Checkpoint v2 B-tree code after getting preemptive 2->3 node splitting
working (for leaf nodes only at the moment, however).
Also, correct a problem with redistributing records that was probably
causing the failures on mir in yesterday's daily tests.
Ran code through purify on shanti and cleared up some warnings.
Platforms tested:
FreeBSD 4.11 (sleipnir) w/parallel
Solaris 2.9 (shanti) w/purify
Description: Added support of hardware conversion between "long double" and integers(mainly
in H5Tconv.c) and some test cases(mainly in test/dtypes.c).
Platforms tested: h5committest and fuss.
Misc. update: RELEASE.txt
Description: Support of hardware conversion between "long double" and integers(mainly in
H5Tconv.c) and test cases for it(mainly in dtypes.c)
Platforms tested: h5committest and fuss
Misc. update: RELEASE.txt
bug fix plus minor modifications
Description:
The nbit filter makes a wrong assumption that function H5Z_set_local_nbit
and H5Z_filter_nbit will be called together. It uses 2 local variables
outside these functions to pass information from H5Z_set_local_nbit to
H5Z_filter_nbit.
Solution:
Store the two variables in cd_values[], which can be retrieved when
H5Z_filter_nbit is called independently.
Platforms tested:
heping, copper
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:
Bug fix.
Description:
Quincey changed "entern H5_DLL" to "H5_DLLVAR" in hdf5/src/H5FLprivate.h which caused some symbols can not be exported correctly by HDF5 DLL.
Solution:
Change "H5_DLLVAR" back to "extern H5_DLL".
Platforms tested:
Visual C++ 6.0 on Windows XP.
.NET 2003 on Windows XP.
Heping (Linux 2.4).
(Note: I talked with Elena and Quincey about this failure. Quincey asked me to check in this fix.)
Misc. update:
Update port
Description:
Allow FreeBSD builds to use Intel C & F90 compilers (C++ is not working
yet on FreeBSD, so that'll come along later)
Platforms tested:
FreeBSD 4.11 (sleipnir) w/Intel C & F90 compilers
Does not affect other platforms...
Misc. update:
New feature and update.
Description:
1. New feature: link HDF5 with Zlib 1.2.2 and Szip 2.0 DLL libraries.
2. Update: catch up HDF5 update during past weeks.
Solution:
1. New feature:
As now HDF5 only links with Zlib and Szip DLL libraries, only 2 environment variables are needed:
Environment Variables for HDF5 on Windows
Previously Now
HDF5_EXT_ZLIB zlib.lib zdll.lib
HDF5_EXT_SZIP szlib.lib szlibdll.lib
HDF5_EXT_ZLIB_DLL c:\zlib114\dll\zlib.lib N/A
HDF5_EXT_SZIP_DLL szlibdll.lib N/A
Due to the above change, the following changes are made:
a. hdf_dll and dsets_dll were linked with HDF5_EXT_ZLIB_DLL and HDF5_EXT_SZIP_DLL
before this update. Now they are linked with HDF5_EXT_ZLIB and HDF5_EXT_SZIP.
b. In hdf5/tools/dumptest.bat and repacktest.bat, HDF5_EXT_ZLIB was compared with zlib.lib
and HDF5_EXT_SZIP was compared with szlib.lib to find out whether ZLIB or SZIP libraries
were presented. Now HDF5_EXT_ZLIB is compared with zdll.lib and HDF5_EXT_SZIP
with szlibdll.lib.
2. Update (due to change in source codes)
a. Add hdf5/src/H5B2.c, H5B2cache.c, H5B2dbg.c, H5B2test.c, H5b2pkg.h, H5B2private.h, and H5B2public.h
to projects hdf5 and hdf5dll.
b. Replace H5TA.c and H5TA.h with H5TB.c and H5TB.h in hdf5_hl project.
Platforms tested:
Visual C++ 6.0/DEC Fortran 6.6c on Windows XP.
.NET on Windows XP.
Misc. update:
installation file was updated also.
Update.
Description:
Update installation file on how to link HDF5 with Zlib 1.2.2 and Szip 2.0 DLL libraries.
Solution:
Platforms tested:
Misc. update:
New feature
Description:
Checkpoint v2 B-tree code after getting 2 leaf record redistribution
working and tested.
Platforms tested:
FreeBSD 4.11 (sleipnir) w/parallel
Too minor to require h5committest
Bug fix
Description:
Correct formatting error which would run some macros together if the
length of the error got too large.
Solution:
Throw in some extra whitespace
Platforms tested:
FreeBSD 4.11 (sleipnir) w/parallel
Too minor to require h5committest
Correction to previous print_manager_output bugfix
Description:
Although the previous bugfix did fix all the errors, it was not the correct way
to fix the problem. Since the manager will only buffer output when run in
parallel mode, in serial mode this function should not even be called.
Solution:
Wrapped print_manager_output in #define's to prevent it from being included in
serial builds.
Platforms tested:
heping (serial + parallel)
Misc. update:
Purpose:
bug fix
Description:
a string with 2 characters was declared as having size 2. changed to size 3 (+ null character)
this was causing compiler warnings with g++
Solution:
Platforms tested:
linux
free bsd (g++)
Misc. update:
Description: H5Tget_member_value didn't return correct value if called after
H5Tenum_valueof. It's because there's a sorting on the members of enum type in
H5Tenum_valueof which changed the order of members.
Solution: Made a copy of original type and do sorting on it to protect the
original order.
Platforms tested: fuss; tested v1.6 with h5committest
Misc. update: RELEASE.txt
bug fix
Description:
g++ was not happy with missing protocols of external functions.
Added print_manager_output(void) and phdiff_dismiss_workers(void)
to the public declarations.
Platforms tested:
Tested in sleipnir (g++) and heping (serial, pp)
Misc. update:
Bug fix & code update
Description:
Fix error in new free-list factory routines that was causing errors on
tungsten, et al.
Also, checkpoint v2 B-tree code.
Platforms tested:
FreeBSD 4.11 (sleipnir) w/parallel
Linux 2.4 (tungsten)
Otherwise too minor to require h5committest
Purpose:
bug fix, new test file
Description:
h5dump was not properly displaying array indices > 3D
Solution:
added the same algorythm and data structure that h5diff uses to calculate the array index
from a element number position
Platforms tested:
linux
solaris
Misc. update:
Description: For variable-length string, H5Tget_class returned H5T_STRING as
its class. But H5Tdetect_class and H5Tget_member_class considered it as
H5T_VLEN. This is fixed to let all these 3 functions treat it as H5T_STRING.
Some test cases have been added to dtypes.c
Platforms tested: heping - already tested for v1.6 with h5committest
Misc. update: RELEASE.txt
Bug fix.
Description:
print_manager_output was missing because it was compiled in
only parallel mode.
Solution:
Made it available all the times.
Platforms tested:
h5committested. (testph5diff.sh failed in copper but that
is a different error.)
Also tested in heping, serial and 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:
Typo in /hl/fortran/src Makefile.am caused obtuse compiler complaints from
some compilers (but not others).
Errors were of the form:
gcc: cannot specify -o with -c or -S and multiple compilations
Solution:
In AM_CLFAGS, missed -I before ../../hl/src. This made gcc think that we
also wanted to compile /hl/src directory. Fixed error by adding -I.
Platforms tested:
verbena, eirene.
Description: The byte order for all 1-byte integer types was fixed as little-endian
even on a big-endian machine. This's corrected in h5detect.c. When types are only
1 byte long, a native int is used substitute the type to detect byte order. Some tools
like h5dump and h5repack are also corrected in this case.
Platforms tested: fuss, copper, sol.(There're some failures from the recent configure
change).
Misc. update: Information in the RELEASE.txt.
Purpose:
Bug fix
Description:
Make uninstall in /fortran/testpar was trying to remove install/bin directory.
Solution:
Remove the extra line that was copy-pasted into Makefile.am by mistake. Oops.
Platforms tested:
Copper.
Bug fix
Description:
h5diff sometimes will 'exit(status)' but if it is in parallel mode,
it needs to close up the workers and the MPI environment before exit(..).
Solution:
Created h5diff_exit() that will just exit in serial mode but does all
the shutdown properly if in parallel mode.
Platforms tested:
tested in heping, serial and parallel.
Misc. update:
Feature
Description:
Added a new function, phdiff_dismiss_workers, which tells the phdiff
worker processes to end.
Platforms tested:
Tested in heping, serial and parallel.
Misc. update:
Bug fix
Description:
Parallel make was having trouble in fortran/testpar directory
on sol.
Solution:
Added a dependency to ensure that things are built in the correct order.
Platforms tested:
sol
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.
Bug fix (sorta)
Description:
Disable btree2 testing until Monday, when I can look into the failures
without a toddler on my lap. :-)
Platforms tested:
FreeBSD 4.11 (sleipnir)
Bug fix
Description:
/fortran/testpar build breaks when making in parallel
Solution:
Massage depdendencies slightly to ensure that object files are
built after module file.
Also made sure that module file gets cleaned properly.
Platforms tested:
eirene
Bug fix
Description:
Correct the record count for the newly split root node
Platforms tested:
FreeBSD 4.11 (sleipnir) w/parallel
Too minor to require h5committest