Bug fix
Description:
Compiler on Cray T3E has a weird problem with operations on size_t
variables.
Solution:
Change comparison to make Cray T3E happy.
Platforms tested:
Cray T3E (mcurie)
Buglet
Description:
If we compiled with -all-static, then the compiler could complain
about not being able to find dlopen and friends.
Solution:
Used the ``-dlopen self'' libtool command.
Platforms tested:
Linux
Bug-ish fix
Description:
Spurious warnings would show up if libtool was trying to pass the
-LANG:std flag to the compile line.
Also, if the library is compiled with -all-static, then it would
complain about not finding dlopen and friends.
Solution:
Used the libtool -Wc,<flag> option to pass the -LANG:std flag to
the compile line.
Used ``-dlopen self'' when compiling.
Platforms tested:
Linux
Purpose:
Bug fix
Description:
hdf5 1.4.0_beta1 build failed for Fortran test tH5T.f90 because
third argument of the h5tarray_create_f subroutine had INTEGER(SIZE_T)
type instead of INTEGER(HSIZE_T) type.
Solution:
Fixed the datatype.
Platforms tested:
Linux (eirene)
Major Hack (tm)
NOTE! When upgrading ltconfig in the future, this may have to be
re-fixed!!!
Description:
Pacific Blue didn't like the ``-b nolibpath -b libpath:...''
flags libtool was handing it. It looks as if those flags would
make mpicc forget where some of the libraries it needed were.
Solution:
Test the hostname to determine if we're at pacific.llnl.gov. If
so, then we don't want those flags.
Platforms tested:
Pacific Blue...
Purpose:
Bug fix.
Description:
H5f90global.f90:
One of the common block arrays (floating_types) had a typo in the name.
DEC compiler was the only compiler to warn about the problem.
H5Ff.f90
Compiler gave warnings about a variable that was used before its value was defined.
Fixed. Turned to be a typo in a variable name.
Platforms tested:
DEC UNIX (gondolin)
Purpose:
Bug fix
Description:
Test program was using h5init_types_f and h5close_type_f
instead of h5open_f and h5close_f. Would not compile on modi4.
Solution:
Fixed the code to use new functions.
Platforms tested:
O2K (modi4)
Purpose:
Bug fix
Description:
h5gget_linkval_f function had an argument with the type INTEGER instead
on INTEGER(SIZE_T). Test would not compile on O2K.
Solution:
Fixed argument datatype.
Platforms tested:
O2K (modi4)
Purpose:
Bug fix
Description:
Functions were using flags that were not defined anymore.
Somehow I forgot to check this file in when I modified code
to use run-time generated flags.
Platforms tested:
O2K (modi4)
Bug Fix
Description:
Some platforms don't have support for dlopen and friends when the
library is static.
Solution:
This is part of the attempt to correct this "feature". libtool
wants AC_LIBTOOL_DLOPEN in the configure.in file and -dlopen on
this line...
Platforms tested:
(untested)
Bug Fix
Description:
Some platforms, when building static libraries, complain that
libc doesn't have dlopen and friends.
Solution:
libtool supports workarounds for this. The one used here may not
work, but it's an attempt to correct it. If it doesn't work, then
there's something going on which I'm not privvy to...
Platforms tested:
(untested as of yet)
Bug Fix
Description:
T3E and J90 were complaining about not being able to make for
ADD_PARALLEL_FILES.
Solution:
Somehow the make on these machines must have been weirded out by
the funky pattern matching/replacement that's being done and
couldn't handle a null macro. I now assign "no" to the macro
explicitly
Platforms tested:
T3E
Bug fix
Description:
"UNUSED" macro was in wrong place for older versions of gcc
Solution:
Moved the "UNUSED" macro to the right of the H5FD_t type declaration and
the compiler was happy...
Platforms tested:
Solaris X86 2.5 (hatteras)
Purpose:
update proper settings for windows
Description:
update toolslibD setting from single-thread to Multithread
update dumptest.bat to include array data type and variable length type.
Solution:
Platforms tested:
windows NT 4.0,5.0
Purpose:
fix a bug
Description:
add <windows.h> for WIN32
Solution:
Add the following lines at the beginning of the file
#ifdef WIN32
#include <windows.h>
#endif
Platforms tested:
NT4.0,5.0, and LINUX
Purpose:
bug fix (zeroing memory for memory allocating for the name of dimensional list)
Description:
At modi4, test failed due to garbage read for name of dimensional list.
Solution:
zeroing out memory before writing the name.
Platforms tested:
modi4, eirene(Linux)
Code addition
Description:
The dumper needs to know when a datatype needs to be reclaimed, so I
added a small helper function to detect if a particular datatype is or
contains a particular class of datatypes.
Platforms tested:
Linux 2.2.16-3smp (eirene)
Patch on the patch of my code cleanup... :-)
Description:
Fix compiler problems with previous code patching...
Platforms tested:
Linux 2.2.16-3smp (eirene)
Bug fix
Description:
Had incorrect logic in testing for file families when v1.2 compatibility
was enabled..
Solution:
Corrected to match non-compatibility code.
Platforms tested:
Linux 2.2.16-3smp (eirene)
Code cleanup/bug fix
Description:
Variable length datatypes were leaking memory when being dumped.
Solution:
Reclaim the VL data after each element has been dumped out.
Platforms tested:
FreeBSD 4.2 (hawkwind) & Solaris 2.6 (baldric)
Re-enabling features.
Description:
Re-add the tests which had been core-dumping on a couple of platforms, now
that the underlying bug is fixed.
Platforms tested:
FreeBSD 4.2 (hawkwind) & Solaris 2.6 (baldric)
Bug fixes
Description:
Patch things back up from incompletely changing some variables in
yesterday's code cleanup, this should fix the compiler errors that Kent
and Bill have found in the CVS version of the code.
Also, fix a bug buried in the datatype conversions when compound datasets
were nested inside an array or variable-length datatype. Internally
require that any datatype which contains a compound datatype sets the
"need_bkg" conversion flag so a background buffer to pass to the compound
datatype conversion is allocated.
Platforms tested:
FreeBSD 4.2 (hawkwind) & Solaris 2.6 (baldric)
Bug fix.
Description:
Data dumping routines weren't correctly handling scalar dataspaces when
dumping them. Under some circumstances, it would get into infinite loops.
Solution:
Small patches to avoid problems when the number of dimensions is zero.
Platforms tested:
FreeBSD 4.2 (hawkwind)
New doc and update
Description:
The original openmp-hdf5.html contains a bunch of C source code.
HTML does not like source code, especially C-code that contained
<...>. It gobbled it badly.
Solution:
Moved the source code to a new file, openmp-hdf5.c and make a
reference to it from openmp-hdf5.html.
Platforms tested:
Viewed via IE on an NT box.
Bug fix
Description:
When the v1.2 compatibility code was turned on, internal functions in the
library were getting confused.
Solution:
Separated guts of H5Pget_driver call into an API function (the definition
of which depends on the compatibility switch) and an internal function
which always behaves like the v1.3/4 function. Replaced API function calls
in the library code with the internal function.
Platforms tested:
FreeBSD 4.2 (hawkwind)
New parallel test features
Description:
Added test cases:
INDEPENDENT write with some processes do not participate at all.
The library should not hang for this case.
COLLECTIVE read/write with some processes asking for zero elements.
The library should work properly and not hanging.
Some house cleaning: get rid of a conditional directive that was
fixed already.
Platforms tested:
IRIX64,-64,parallel
Code cleanup
Description:
Several places in the code were using -2 as a default value for various
features. However, when a default value is returned from a function that
is supposed to return negative on failure, it was causing confusion and
extra work for users to check for the special value.
Solution:
Replaced hard-coded -2 values in the code with symbolic names, then changed
symbolic names to 0 instead of -2.
Platforms tested:
FreeBSD 4.2 (hawkwind)
Feature, kind of
Description:
Moved the multiple dataset test out of the write-test
part so that it can be skipped or tested independent of
the other tests.
Platforms tested:
IRIX64,-64,parallel.
Bug fix
Description:
Fixed some typo that cause compiling errors in parallel mode.
Also added a default case in the H5Pget_xfer code to catch
potential future added data transfer mode.
Platforms tested:
IRIX64-64, parallel.
Backward compatibility code
Description:
Add in code to allow the library to emulate the v1.2 API and behavior.
Platforms tested:
FreeBSD 4.2 (hawkwind)
Bug fix
Description:
The optimized MPI-IO calls, H5S_mpio_spaces_write/H5S_mpio_spaces_read,
are changed for collective data transfer only since they
call H5FD_mpio_setup to do setup to eveually call MPI_File_set_view
in H5FD_mpio_read or H5FD_mpio_write. MPI_File_set_view is a
collective call. Letting independent data transfer use this
route would result in hanging.
Solution:
For now, the checking is being done in
H5D_write and H5D_read before H5S_mpio_spaces_write/H5S_mpio_spaces_read
is called because the checking code in H5S_mpio_spaces_xfer, though with
the right idea, is not correct yet.
Platforms tested:
IRIX64-64 parallel.
Purpose:
Bug fix
Description:
H5S_mpio_spaces_xfer() did not do clean up all the times especially
the MPI_type freeing.
Solution:
Include the MPI_type freeing as part of cleanup code. Replaced
most HRETURN_ERROR(...) with HGOTO_ERROR so that cleanup code
will be executed.
Platforms tested:
IRIX64-64.
Purpose:
Fix a bug caught by debug version of windows 2000 at test_compound_5(struct optimization converter).
Description:
free memory of a variable before checking the result by using that variable.
Solution:
put free(buf) and free(bkg) after the following block:
/* Check results */
if (memcmp(src[1].name, dst[1].name, sizeof(src[1].name)) ||
src[1].tdim!=dst[1].tdim ||
src[1].coll_ids[0]!=dst[1].coll_ids[0] ||
src[1].coll_ids[1]!=dst[1].coll_ids[1] ||
src[1].coll_ids[2]!=dst[1].coll_ids[2] ||
src[1].coll_ids[3]!=dst[1].coll_ids[3]) {
FAILED();
return 1;
}
Platforms tested:
windows 2000 and confirmed at LINUX(eirene).
Purpose:
make mtime test available on windows
Description:
calculating time zone difference on windows
Solution:
1.Use /#if WIN32 #endif/ to make sure the modification will not affect other platforms.
2. use <sys/types.h> and <sys/timeb.h> on NT to obtain time zone difference.
Platforms tested:
windows 2000
Purpose:
update windows-related projects
Description:
Add new source code (H5Fseq.c) and several test codes into all.zip
update hdf5.dsp,hdf5dll.dsp,testhdf5.dsp and testhdf5dll.dsp.
update setting for h4toh5 and h5toh4 converters.
Solution:
Platforms tested:
windows 2000
New feature
Description:
Added tests to make sure collective read or write works correctly
even if some process has no data to transfer.
ZROW--process 0 asks for zero rows of data while other processes ask
for a slab of rows.
ZCOL--process 0 asks for zero columns of data while other processes ask
for a slab of columns.
Platforms tested:
IRIX64 parallel (-64,-n32).
cvS: ----------------------------------------------------------------------
Bug workaround
Description:
tarray4.h5 and tdvltypes4.h5 are causing core dumps on modi4
Solution:
Commented out those tests for now. I'll take a look at them after the code
freeze for the beta-release is finished.
Platforms tested:
O2K (modi4)