Purpose:
Code development and maintenance
Description:
Four new fortran functions to support array datatype were added:
h5tarray_create_f
h5tget_array_ndims_f
h5tget_array_dims_f
h5tget_super_f
Two functions were deleted (commented out for now, can be returned easily if
necessary):
h5tinsert_array_f
h5tget_member_dims
Platforms tested:
Library build was tested on Solaris2.6. I have to modify test program to
use new functions. Right now test program will not compile.
Small code optimization
Description:
Statistics on the amount of times a datatype conversion required alignment
were being kept in all case, even though they are only used when H5T_DEBUG
is turned on.
Solution:
Build some extra macros so that the statistics are only kept when the
H5T_DEBUG macro is defined.
Platforms tested:
Solaris 2.6 (baldric)
Bug fix
Description:
Previous re-arrangement of FUNC_ENTER macro was a _little_ too agressive
about not re-checking for library or interface re-initialization. Although
it happens very rarely that the library is shut down and then re-started
the library & interface initialization functions weren't getting run in
that case.
Solution:
Separated out the library, interface & function checks again. This version
is still a little faster than the previous way things were being done.
Platforms tested:
FreeBSD 4.1.1 (hawkwind)
Bug fix
Description:
The output of floating point dumps wasn't necessarily standard.
The h5ls utility does it in a better way.
Solution:
Changed the output parameters from %g to %1.*g and added the
appropriate FLT_DIG/DBL_DIG parameter for the `*' in the above.
Platforms tested:
Linux
Bug fix
Description:
I was writing things out to the HDF file in big-endian format
without doing any conversions on the data or anything like that.
This was causing tests to fail on most machines
Solution:
Removed the big-endian craziness...But, this kinda resulted in a
bug in the HDF dumper which Albert and Robb suggested ways of
fixing.
Platforms tested:
Linux
Code optimization
Description:
Re-vamped FUNC_ENTER macro to remove as many of the if's as possible and
also to only check once if any given function is an API function.
This improves the performance of the hyperslab I/O benchmark (h5hypers)
that I've been testing with by another 5%. All library functions should
be 5-15% faster, depending on how many times they are called and what
percentage of the function's time was spent in the FUNC_ENTER macro vs.
the percentage of time in the main body of the function.
Platforms tested:
Solaris 2.6 (baldric)
* 2000-11-15 Robb Matzke <matzke@llnl.gov> (CC_VERSION)
The compiler is always expanded to a
full path name if possible. This feature enhancement was
requested by Mark Miller, LLNL.
Bug fix
Description:
When performing I/O on the entire dataset for datasets with the maximum
number of dimensions, H5S_MAX_RANK, (32 currently), the dimension
information was getting corrupted internally and causing no data to be
actually written to the file.
Solution:
Changed the internal array sizes from H5S_MAX_RANK to H5O_LAYOUT_NDIMS,
which is one element larger to accomodate the size of the elements
themselves.
Platforms tested:
Solaris 2.7 (arabica)
Bug
Description:
Compiler needed both the -instances=global and the -LANG:std flag
to function.
libtools spits out a warning about not being able to find the
ANG:std library directory, but that's okay...it passes it to the
linker anyway.
Platforms tested:
Solaris (Arabica)
pathc
Description:
TFLOPS coredumped on h5ls because when h5ls calls ioctl(TIOCGWINSZ),
the ioctl() routine coredumped inside.
Solution:
It is likely that TFLOPS does not support window-size in the
compute nodes. Still, it should not coredump. Bypass it for
TFLOPS for now.
Platforms tested:
TFLOPS & modi4 (-64)
Bug fix
Description:
The optimized MPIO code was not working with the TFLOPS machine.
It kept reporting "can't convert from size to size_i" errors in
H5FD_mpio_write() and H5FD_mpio_read().
Solution:
The error was actually in H5S_mpio_spaces_xfer() in H5Smpio.c
in which the variable mpi_count was declared as size_t (only
4 bytes big in TFLOPS) when it should be hsize_t (8 bytes big in TFLOPS).
Corrected and also changed to use the (hsize_t) to case size_i in
H5FD_mpio_write() and H5FD_mpio_read() since that is what it should
be.
Platforms tested:
TFLOPS and modi4 (-64, parallel)
Fix
Description:
Changed so that only *.c files are run through the tracing
program. This is so the fortran stuff won't return spurious
warnings.
Platforms tested:
Linux
Buglet fix
Description:
Get rid of compiler warnings. The HGOTO_RETURN was returning NULL
when it should have returned FAIL.
Solution:
Swapped the two.
Platforms tested:
Linux
Bug fix
Description:
distclean was removing .C files.
Solution:
It was trying to remove the .f90 extension, of which there wasn't
one.
Platforms tested:
Linux
Bug fix
Description:
[Most] SGIs failed on dumping VL data during the daily tests they
seem to be initializing variables differently, exposing a bug in dumping
datasets with scalar dataspaces.
Also, clean up code to get rid of compiler warnings.
Solution:
Initilialize variable correctly.
Platforms tested:
SGI IRIX 6.5 (paz)
Buglet fix
Description:
Was removing the confdefs.h header which was needed during
Makefile generation.
Solution:
Stopped doing that.
Platforms tested:
Linux
Buglet fix...
Description:
When configuring, configure would complain about there not being
a confdefs.h file.
Solution:
Added a src/H5config.h file which configure can generate. This
can be used for configure stuff later, but is empty now.
Platforms tested:
Linux
Buglet fix...
Description:
When configuring, configure would complain about there not being
a confdefs.h file.
Solution:
Added a src/H5config.h file which configure can generate. This
can be used for configure stuff later, but is empty now.
Platforms tested:
Linux
Bug fix
Description:
It would be nice if I'd done this correctly the first time.
Solution:
Doh! NEeded to use the ``using'' keyword...
Platforms tested:
Linux
Bug fix
Description:
Namespace wasn't being detected properly.
Solution:
Changed it to do it properly (not putting the main() function in
the namespace);
Platforms tested:
Linux
Bug fix
Description:
libtool complained that the library name didn't have a ``lib''
prefix. Also, the $(top_srcdir) macro points to the top of the
c++/ directory, which was messing up the -I$(top_srcdir)/src
stuff. It needed to be changed to the correct value.
Solution:
Made it so
Platforms tested:
Linux
Bug fix
Description:
Configure wasn't picking up the LT_STATIC_EXEC stuff from the
top-level configure.
Solution:
Added LT_STATIC_EXEC logic
Platforms tested:
Linux
Bug fix and code checkpoint
Description:
HP's compilers didn't seem to like comparing function pointers with '<'
& '>', so I've changed how the function pointers are compared to aviod
those operations. This should fix last night's daily test failures on
opus and sangamon.
Also, more code development for generic property lists.
Platforms tested:
FreeBSD 4.1.1 (hawkwind)