Bug Fix...AGAIN!
Description:
The logic to create the DYNAMIC_DIRS macro was accepting such
things as -lnoop_stubs which would cause libtools to barf.
Solution:
I'm pretty sure I fixed this once before. The change was lost. I
now test to make sure that the flag I'm adding has a "-L" prefix
on it...
Purpose:
New feature
Description:
Now all Fortran flags such as H5F_ACC_RDONLY_F (previously defined in the
H5fortran_flags.f90 file) are generated at runtime when h5init_fortran_f
subroutine is called. All flags have now the same value as
corresponding C flags. This change affects user's programming model:
Every Fortran program that uses F90 HDF5 Library has to call
h5init_fortran_f(error) subroutine before the first call to the
F90 HDF5 Library and h5close_fortran_f(error) after the last call to the
Library. h5init(close)_types_f calls are not needed anymore since
F90 datatypes are intialized(closed) with the h5init(close)_fortran_f
calls.
Platforms tested:
O2K and Solaris2.7
"bug fix"
Description:
the h5ls tests sometimes failed because the tool sometimes prints
the tool name in the help message as "lt-h5ls" while the
expected result has it as "h5ls". This was the tools pulled its
name from argv[0].
Solution:
Hardcode the progname as "h5ls" and blocked out the code that
pulls the program name from argv[0]. The better solution is
to find a way to create the real binary with the orginal tool
name.
Platforms tested:
linux
Bug Fix
Description:
Some of the HRETURN types were incorrect. They were NULL when
they should have been FAIL.
Solution:
Changed the NULLs to FAILs.
Platforms tested:
Linux
new feature
Description:
h5tools.c:
Created h5tools_init() and h5tools_close() for the initialization
of the h5tools library and closing of it. With this, the rawdatastream
and other internal structures can be initialized properly.
h5tools.h:
added prototypes for h5tools_init and h5tools_close.
h5dump.c:
h5ls.c:
Added the calls for h5tools_init() and h5tools_close().
Platforms tested:
IRIX64 -64 parallel and Linux
To warn users that RM_H5G.html and Groups.html can render groups and
datasets inaccessible in a file.
Solution:
Modified RM_H5G.html and Groups.html as follows:
-- Added warning (new section) to Groups.html that H5Gunlink and
H5Gmove can result in inaccessible groups and datasets.
-- Added links to that new section from H5Gunlink and H5Gmove
in RM_H5G.html.
Platforms tested:
IE5
* 2000-10-31 Robb Matzke <matzke@llnl.gov> (main)
Added calls to MPI_Init() and MPI_Finalize() for parallel
versions in order to prevent errors about unrecognized
command-line options.
* 2000-10-31 Robb Matzke <matzke@llnl.gov> (dump_dataset_values)
The `float' and `double'
values are displayed with the full precision instead of just the
default `%g'.
Purpose:
Bug fix.
Description:
When the number of processors is wrong (should be a factor
of dataset dimensions for this test) , test hangs because
of wrong logic in the if-then-endif statement.
Solution:
Fixed the logic.
Platforms tested:
modi4 (O2K)
Purpose:
Bug fix
Description:
H5FD_close() wiped clean the public information before
closing the FD. This caused problem to the lower level
close() which wants to verify it has indeed handed a valid
file-driver to close because that information is wiped out
prematurely.
Solution:
Moved the public information part cleaning after it is closed.
H5FDmpio.c:
Added in a bunch of assertion to make sure the file handle is indeed
an MPIO file.
Platforms tested:
IRIX64 -64 parallel
Purpose:
Maintenance
Description:
I renamed three files in the fortran/src directory
H5Pf_parallel.c --> H5FDmpiof.c
H5Pff_parallel.f90 --> H5FDmpioff.f90
HDF5_parallel.f90 --> HDF5mpio.f90
Solution:
Updated names in the MANIFEST file.
Purpose:
Testing
Description:
The h5ls test script only looked at exit status.
Solution:
Created expected output files and compare actual output
with expected output.
Platforms tested:
i686-pc-linux
* 2000-10-31 Robb Matzke <matzke@llnl.gov> (verbose)
Compares output to expected
files. This should work just fine because we're not using the `-v'
option which prints datatypes in a machine-dependent way.
* 2000-10-31 Robb Matzke <matzke@llnl.gov> (h5dump_sprint)
The whitespace added for
indentation after the line-feed kludge is performed only if a
line-feed was actually inserted. This fixes funny-looking h5ls
output that had ` %s' sequences appearing in nested compound
datatypes.
Also added a prominent warning in the code to indicate that when a
line-feed is inserted into the string that column number
calculations will be incorrect and object indices will be missing.
* 2000-10-31 Robb Matzke <matzke@llnl.gov> (H5F_dest)
Do not call H5FL_FREE() if the root group
object is null. This fixes a bug in h5ls when that tool is given
a file which is not an hdf5 file.
Purpose:
Removing functions that have been removed from library.
Solution:
Removed H5Pget_driver, H5P[gs]et_stdio, H5P[gs]et_sec2,
H5P[gs]et_core, H5P[gs]et_split, H5P[gs]et_family,
H5P[gs]et_mpi, and H5P[gs]et_xfer.
Platforms tested:
IE5
"New" document
Description:
Raymond has prepared and added a new document reporting his
experience of using HDF5 with OpenMP. It was checked in as
a .txt file but browsers could not display it properly, at least
not for the MS-IE.
Solution:
I renamed the file from openmp-test.txt to openmp-hdf5.html,
added in simple mind html control statement (<pre>), added
an entry to the TechNote.html so that it can be found with
other technical notes.
Platforms tested:
Viewed by MS-IE.
Purpose:
Maintenance
Description:
I created ./fortran/testpar directory and added files to it
but forgot to update MANIFEST file.
Solution:
Fixed MANIFEST.
Platforms tested:
Purpose:
Bug fix.
Description:
Reading from the file failed because property list identifier
was not properly passed to the subroutine h5dread_f.
Solution:
Fixed the order of the parameters in the h5dread_d call
Platforms tested:
O2K (modi4)
Purpose:
Adding F90 || tests.
Description:
I created testpar directory with the following files
ptesthdf5_fortran.f90 - F90 test driver program
tcheck.f90 thdf5.f90 - handy subroutines to use with the tests
thyperslab_wr.f90 - F90 test:
collectively writes and reads hyperslabs to/from the dataset
Solution:
Platforms tested:
Partially tested on modi4 (O2K)
Bug fix
Description:
There is typo in the H5D_write function which reported the
optimized write failure as a H5E_READERROR.
Solution:
Replaced it with the correct H5E_WRITEERROR code.
Platforms tested:
modi4 parallel (compiled H5D.o only).
Purpose:
Port to Windows.
Description:
The stream_test program now also compiles and can be run under Windows.
Solution:
The problem was that fork(2) and waitpid(2) aren't available
under Windows when using the MS compilers.
So I test for both H5_HAVE_FORK and H5_HAVE_WAITPID.
These are already checked fortunately during configuration.
If they are not there the code just says
printf ("Test skipped because this architecture doesn't provide "
"fork(2) and waitpid(2)\n");
Platforms tested:
Windows NT, both with MS Visual C++ and GNU cc
Now you can build and run the Stream VFD testsuite under Windows
when using GNU cc !!
Purpose:
Set compiler flag to force BSD compliance.
Description:
In order to set a socket descriptor into non-blocking mode
via ioctl(2) the Stream driver uses the FIONBIO constant.
Under Solaris this is defined only when compiled as BSD code.
I hope this doesn't break anything.
Platforms tested:
Solaris 5.7
Purpose:
Detect whether the system has the netinet/tcp.h header file.
Description:
The Stream VFD uses setsockopt(2) to set TCP_NODELAY on an opened
socket. This constant is defined normally in netinet/tcp.h
except for GNU cc under Windows where this header doesn't exist.
This template header file just contains the
#undef HAVE_NETINET_TCP_H
Platforms tested:
Windows NT, GNU cc