Purpose: Maintenance for the third round of testing
Description: Increased the version number to 1.5.59 after creating
a tar ball for testing.
Solution:
Platforms tested:
Misc. update:
Bug fix
Description:
The dataset's modification time was getting set whenever raw data was
written with H5Dwrite. Unfortunately, this is a metadata change (which are
required to be performed collectively) and H5Dwrite may be called independently
from a parallel program, resulting in metadata cache corruption and/or program
hangs.
Solution:
Don't update the modification time when raw data it written. :-(
Platforms tested:
FreeBSD 4.8 (sleipnir) w/parallel
h5committest
Misc. update:
Noted in release notes and also sent to Frank for updating the docs.
Code cleanup/new features.
Description:
Clean up whitespace & formatting.
Make the -S (simple) output display a dataset's modification time in UTC
rather than local timezone.
Display variable-length datatype information.
Simplified & enhanced bitfield datatype information displayed.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committest
API tweak.
Description:
The H5Sget_select_bounds() API call was using hsize_t arrays for retrieving
the 'start' and 'end' coordinates, which is counter to the rest of the dataspace
API.
Solution:
Change the arrays to be hssize_t instead.
Platforms tested:
FreeBSD 4.8 (sleipnir) w/C++
FreeBSD 4.8 (sleipnir) w/parallel
h5committested
Misc. update:
Updated all docs for this change.
Added 1.4 compatibility #ifdef's
Purpose: Maintenance for 1.6 release
Description: I did more cleanup and restructuring of the file.
Please take a look at the file when you have a chance.
Thank you!
Solution:
Platforms tested:
Misc. update:
Purpose: Maintenance for 1.6 release
Description: HISTORY.txt was not updated in 1.5 branch since 1.2.0 release.
RELEASE.txt had a lot of redundant info that is now in HISTORY.txt
INSTALL_Windows_withF90.txt was lost in 1.5 branch.
Solution: I updated HISTORY.txt to include release history up to 1.4.5 release.
After that I removed all information related to the 1.4.* releases
from RELEASE.txt file. "Platforms Tested" section was brought up
to date based on the information provided by developers for 1.6.0 first
round of testing. RELEASE.txt still needs a lot of work.
INSTALL_Windows_withF90.txt is also a first draft, more work is needed.
Platforms tested: N/A
Misc. update:
Purpose: Maintenance for the second round of testing
Description: Used bin/h5vers to change version number to 1.5.55
Solution:
Platforms tested: arabica
Misc. update:
Add decriptions to use libtestD.dll.
Description:
libtestD.dll should be placed to a place that the user can find in order to
test HDF5 DLL within HDF5 workspace.
Solution:
Explained in document.
Platforms tested:
No need
Misc. update:
code warrior update
Description:
changed the project file to include the new H5Dio.c and remove the old H5Farray.c files
updated install instructions
Solution:
Platforms tested:
code warrior
Misc. update:
Purpose: Maintenance
Description: I changed release version to 1.5.54.
Email about tetsing of 1.5.53 will be send after this checkins.
Solution: used bin/h5vers -s to change the version number
Platforms tested: Done on arabica
Misc. update:
New feature/enhancement
Description:
Chunked datasets are handled poorly in several circumstances involving
certain selections and chunks that are too large for the chunk cache and/or
chunks with filters, causing the chunk to be read from disk multiple times.
Solution:
Rearrange raw data I/O infrastructure to handle chunked datasets in a much
more friendly way by creating a selection in memory and on disk for each chunk
in a chunked dataset and performing all of the I/O on that chunk at one time.
There are still some scalability (the current code attempts to
create a selection for all the chunks in the dataset, instead of just the
chunks that are accessed, requiring portions of the istore.c and fillval.c
tests to be commented out) and performance issues, but checking this in will
allow the changes to be tested by a much wider audience while I address the
remaining issues.
Platforms tested:
h5committested, FreeBSD 4.8 (sleipnir) serial & parallel, Linux 2.4 (eirene)
Feature Add
Description:
Added knob so that the programmer can enable or disable GPFS
hints during runtime instead of having it only enabled at
configure/compile time. Some of the public APIs were changed
to add an extra parameter for this option...
Platforms tested:
Blue (LLNL). It only affects the MPI/POSIX driver, so no need
to test it on non-GPFS platforms.
Misc. update:
Add a little more comments on where to put DLL.
Description:
User can put HDF5DLL in the place where the application can find.
It doesn't have to be at system directory.
Solution:
Add comments to "only suggest the user to use system directory".
Platforms tested:
text file, no need to be tested.
Misc. update:
Update stdio driver supported on windows
Description:
To tell users how to set and use stdio driver.
Solution:
Platforms tested:
Text file doesn't have to be tested.
Misc. update:
Update
Description:
The H5FC was already in this doc...but under "bug fixes". Removed
that since it's really a new feature.
Platforms tested:
IBM/PC Jr.
Misc. update:
Bug fix
Description:
This fixes a bug in the low-level metadata caching code in the library
which could possibly lose metadata during file I/O when a lot of objects are
inserted into a group.
This also fixes a couple of (similar) fencepost bugs in the B-tree
deletion code.
Solution:
For the metadata bug - call the low-level driver's 'write' routine instead
of H5FD_write.
For the B-tree bug - include the correct number of keys.
Platforms tested:
FreeBSD 4.8 (sleipnir) w/C++
Linux 2.4 (burrwhite) w/FORTRAN
Solaris 2.7 (arabica) w/FORTRAN
IRIX64 6.5 (modi4) w/FORTRAN & parallel
(h5committest is still not working for me on burrwhite)
Misc. update:
Purpose:
Maintenance
Description:
* Added support for generic properties.
* Added support for time allocation properties.
* Added support for variable length datatypes (only datatypes based
on INTEGER, REAL and CHARACTER Fortran types are supported).
* added some missing functions
Solution:
I am checking in new Fortran APIs and their man pages to support
1.5 features listed above.
Not all APIs have tests yet. APIs were written in Fall 2002, and I am afraid
that I will loose the code or totally forget what I did if I wait longer. ;-)
Platforms tested:
arabica (fortran), eirene (fortran), modi4 (parallel, fortran)
Purpose:
1.update windows release doc related to the addition of semi-automatic generated H5Tinit.c project and workspace files.
2. Make the doc more clear.
Description:
1. H5Tinit.c was manually maintained before and it might affect the users who wants to build and test from HDF5 snapshot release.
2. Make sure that we are supporting .Net only on XP and also emphasize to DLL users to the DLL critical section of the doc.
Solution:
1. Add a section for those users to semi-auto generate H5Tinit.c.
Platforms tested:
Doc files, no need to test.
Misc. update:
Bug Fix
Description:
Metadata cache in parallel I/O can cause hangs in applications which
perform independent I/O on chunked datasets, because the metadata cache
can attempt to flush out dirty metadata from only a single process, instead
of collectively from all processes.
Solution:
Pass a dataset transfer property list down from every API function which
could possibly trigger metadata I/O.
Then, split the metadata cache into two sets of entries to allow dirty
metadata to be set aside when a hash table collision occurs during
independent I/O.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}
FreeBSD 4.7 (sleipnir) serial & parallel
Misc. update:
Updated release_docs/RELEASE
New feature for developers.
Description:
Added "function stack" tracing to library. This allows developers (there
is no public API) to call H5FS_print within the library and get a listing
of the functions traversed to reach that point in the library. Eventually,
I may add support for reporting the parameters to each function also...
Mainly for debugging parallel I/O programs, but I think it will come in
handy in other cases also.
The function stack tracking is controlled with a configure switch:
--enable-funcstack, which defaults to enabled currently. When we branch
for 1.6, we should change the default setting on the branch to be disabled.
Also, added a destructor to the thread-specific keys when thread-safety is
turned on in the library. Otherwise, they were leaking memory and causing
difficult to debug errors in threaded programs (like the test/ttsafe test).
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}
FreeBSD 4.7 (sleipnir) w/thread-safety enabled.
Misc. update:
Updated MANIFEST with new files added (src/H5FS.c & src/H5FDprivate.h)
Update release_docs/RELEASE with thread-safety bug fix.