Bug Fix
Description:
When using the STDIO driver, the dsets test would fail.
Solution:
Need to flush the data to disk before doing an HDopen call.
Platforms tested:
Modi4 (Parallel & Fortran)
Arabica (Fortran)
Verbena (Fortran & C++)
Misc. update:
Purpose: Windows port for 1.5 branch
Description: Projects files were not up-to-date; Fortran and C libraries,
and tests would not build.
Solution: Updated all projects and coresponding all_withf90.zip file
Platforms tested: Windows 2000
Only static tests (both debug and release) passed on Windows.
DLLs have multiple problems ;-)
Misc. update:
Purpose: Windows port
Description: Windows cannot convert from _uint64_t to double. One of
the tests (test_set_local) used conversion to fill a data
buffer. Compilation failed on Windows.
Solution: Fixed the code not to use conversion
Platforms tested: CRAY T90IEEE, arabica, modi4 with parallel, Windows 2000
Only static tests (both debug and release) passed on Windows.
DLLs have multiple problems ;-)
Misc. update:
Purpose: Added copyright statement; cleaned code and fixed bugs for
Windows and Cray T90IEEE
Description: Windows and Cray ports exposed few typos in the source code
that caused tests to fail
Solution: Added copyright statement and clean the code.
Platforms tested: CRAY T90IEEE, arabica, modi4 with parallel, Windows 2000
Only static tests (both debug and release) passed on Windows.
DLLs have multiple problems ;-)
Misc. update:
Purpose: Added copyright statement; cleaned code and fixed bugs for
Windows and Cray T90IEEE
Description: Fortran files did not have copyright statement; VL types
did not work on T90IEEE since I never brought the correct code
from 1.4 branch; there were compilation warnings on Windows;
some character parameters were not passed correctly to C stubs
causing tests to fail on Windows.
Solution: Added copyright statement and clean the code.
Platforms tested: CRAY T90IEEE, arabica, modi4 with parallel, Windows 2000
Only static tests (both debug and release) passed on Windows.
DLLs have multiple problems ;-)
Misc. update:
Purpose: Catching up with 1.4 branch
Description: 1.5 didn't have unicos10.0.X configuration files
for both C and fortran.
Solution: Added the files
Platforms tested: CRAY T90IEEE
Misc. update:
Purpose: Catching up with 1.4 branch
Description: 1.5 didn't have unicos10.0.X configuration files
for both C and fortran.
Solution: Added the files and updated MANIFEST
Platforms tested: bin.chmanifest on arabica
Misc. update:
Bug Fix
Description:
When calling "H5F_get_access_plist" after setting the FAPL to a multi
driver, and then trying to get the multi driver back, it resulted in
returing a "NULL" value instead of the driver.
Solution:
The stuff at the location pointed to by the driver was being stored
into the property list and not the pointer to the driver itself.
Changed the "H5P_set" code so that it stores the pointer instead of
the driver...(Added an "&" in from of the "driver_info" variable).
Platforms tested:
Arabica (Fortran)
Burrwhite (Fortran & C++)
Modi4 (Fortran & Parallel)
Misc. update:
Code cleanup
Description:
Clean up comments, etc.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
New feature.
Description:
Added tests to verify correct operation of re-using file space.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
Code cleanup
Description:
Added macro for reporting line #'s of test failures more easily.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
Bug fix
Description:
Return correct value (1 instead of -1) on test failure.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
Code cleanup
Description:
Switched some system/library calls to use wrappers.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
New feature, sorta
Description:
Track changes to various internal APIs
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
New feature
Description:
Track changes in the internal metadata API with clearing the metadata
dirty flag without flushing object.
Added ability to delete an object header in the file and restore all the
space referenced by various header messages.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
Code cleanup, bug fix & new feature.
Description:
The local heaps were missed in the last changes to the metadata "dirty"
flag, making them operate incorrectly in the metadata cache. Fixed by changing
to use "cache_info.dirty" flag instead.
Track changes for internal metadata API, regarding marking metadata as clean
without flushing it to the file.
Added ability to delete a local heap in the file.
Added ability to reduce the size of a local heap if there is a free-space
block at the end of the heap and the free-space block is over half the size of
the local heap.
Some migration of package-specific information out of the private header
and into the code module as well.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
Bug fix & new feature.
Description:
The global heap 'dirty' flag was missed in the last round of changes to
the metadata cache and was not using the new "cache_info.dirty" flag.
Solution:
Switched to using correct flag for marking dirty objects in the metadata
cache.
Also, added new metadata callback for marking a piece of metadata as clean
without writing it back to the file.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
New feature.
Description:
Added ability to release space used for storing symbol table entries and
nodes when a group is deleted in a file.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
Code cleanup
Description:
Stop using hard-coded constant for the initial size of the root group's
symbol table local heap and use macro.
Also, changed existing (unused) macro for the initial heap size to be the
same as the hard-coded constant.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
New feature.
Description:
Added ability to free space used for storing raw data for both contiguous
and chunked datasets.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
New feature.
Description:
Update prototypes for recent internal API addition.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
New feature.
Description:
Mark an object in the "open object list" as deleted when it's reference
count within the file is reduced to zero and it is only being held open by an
ID in the user's application.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
New feature.
Description:
Allow the file to shrink as well as expand when flushing a file before
closing it.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
Bug fix.
Description:
Corrected fencepost error which was incorrectly checking for merging
metadata at the front of the metadata accumulator. This now allows the
metadata cache to cache I/O operations more efficiently.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
New code.
Description:
Added internal routine to clear the sieve buffer if it overlaps a address-
length range in the file. This is used currently to clear the sieve buffer
when an object is deleted from the file.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
Code cleanup & new feature
Description:
Track changes to H5AC API (code cleanup)
Added routine to delete B-tree in file.
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
Code cleanup, bug fix & new feature.
Description:
Moved some "package-scope" information out of the private header file and
into the code module. (code cleanup).
Fixed a few places where the "destroy but don't flush" code wasn't working
correctly, which mostly affects the FPH5 effort. (bug fix).
Added the ability to "unprotect" a metadata object and delete it at the
same time. (new feature).
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/parallel & FORTRAN
(h5committest not run due to my ongoing difficulties with C++ on burrwhite).
Code cleanup
Description:
Uncompressed buffers can't get to the szip filter's decompression code now
that they are handled correctly by the chunk's filter mask.
Solution:
Remove handling of uncompressed buffers from szip filter's decompression
code.
Platforms tested:
FreeBSD 4.8 (sleipnir) w/szip
h5committest not necessary & doesn't test szip code.
Purpose: Catching up with C library
Description: I added tests for new functions
h5pset_szip_f
h5pget_filter_by_id_f
h5pall_filters_avail_f
I am not sure how to test h5pmodify_filter_f.
Solution:
Platforms tested: arabica (with and without SZIP Library),
modi4 (with SZIP and parallel)
burrwhite (with SZIP and PGI C and Fortran compilers)
Misc. update:
Purpose: Catching up with C library
Description: I added four new functions
h5pset_szip_f
h5pget_filter_by_id_f
h5pmodify_filetr_f
h5pall_filters_avail_f
Solution:
Platforms tested: arabica (with and without SZIP Library),
modi4 (with SZIP and parallel)
burrwhite (with SZIP and PGI C and Fortran compilers)
Misc. update:
Fix
Description:
This is an analogue to the previous bug-fix for filters not being
applied to data written but being applied when read. The old way was
if the SZlib library couldn't deflate a dataset, then we'd munge
along pretending that it was okay.
Solution:
Trigger it as an error in this situation. The H5Z_pipeline code which
calls this function can clear the error stack if need be.
Platforms tested:
Modi4 (Parallel & Fortran)
Burrwhite (Fortran & C++)
Baldric (Fortran), but make check didn't work because of "libucb.so"
error that I can't fix...)
Misc. update:
Fix
Description:
There are some Fortran compilers which don't have a module flag.
Solution:
If they don't have one, then don't specify it on the line. Also added
the LDFLAGS to the compile line so that we pick up the proper
libraries and their directories.
Platforms tested:
Modi4 (Parallel & Fortran)
Burrwhite (Fortran & C++)
Baldric (Fortran), but make check didn't work because of "libucb.so"
error that I can't fix...)
Misc. update:
Update
Description:
Updated so that the example programs are built with the new h5fc
script after it's installed. (So you need to cd into the examples/
directory and type "make check" or similar. This is how it is in the
C part).
Platforms tested:
Modi4 (Parallel & Fortran)
Burrwhite (Fortran & C++)
Baldric (Fortran), but make check didn't work because of "libucb.so"
error that I can't fix...)
Misc. update:
Update
Description:
Added check for the SZlib option. The SZlib stuff needs to propagate
down to the h5fc script.
Also, removed "examples" from some of the Makefile's rules so that
it's the same as in the C library.
Platforms tested:
Modi4 (Parallel & Fortran)
Burrwhite (Fortran & C++)
Baldric (Fortran), but make check didn't work because of "libucb.so"
error that I can't fix...)
Misc. update:
Update
Description:
Added printing of the compiler used in the end message.
Platforms tested:
Modi4 (Parallel & Fortran)
Burrwhite (Fortran & C++)
Baldric (Fortran), but make check didn't work because of "libucb.so"
error that I can't fix...)
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:
Buglet Fix
Description:
When filtering data, those filters which failed and are optional
weren't being specified inside of the H5Z_pipeline() function like
they're supposed to be.
Solution:
Modified the code to set the appropriate bit in the "failed" flag to
say that the filter failed if it did and was optional. Removed some
cases of setting the "failed" flag where it didn't have any effect
(like, right before an HGOTO_ERROR() statement).
Platforms tested:
Burrwhite (Fortran)
Arabica (Fortran)
Modi4 (Parallel & Fortran)
Misc. update:
Bug Fix
Description:
The way to detect modules wasn't in there.
Solution:
Added the 'F9XMODFLAG' variable and have it pointing to the
appropriate place.
Platforms tested:
Arabica. Will test on other platforms one at a time. This won't
affect other parts of the system...
Misc. update:
Bug Fix
Description:
Some of the macros in the script weren't being updated by configure
correctly. Also, the FFLAGS needed to be used during compilation.
Solution:
Put the correct macros in there. Added FFLAGS.
Platforms tested:
Arabica. Only testing it on one platform for now since this is a
script change and needs to be tested on one machine first before
further testing...
Misc. update:
Addition
Description:
Added "h5fc" utility. This is the same as the "h5cc" utility but for
Fortran. It only handles static libraries since that's the only
library we build for Fortran.
Note! I've tested the code on the normal platforms but I haven't
tested the utility itself.
Platforms tested:
Arabica (Fortran)
Modi4 (Fortran & Parallel)
Burrwhite (Fortran & C++
Misc. update:
Update
Description:
The "--enable-parallel=TYPE" option was revamped but the help string
wasn't modified.
Solution:
Modified it to print out just "--enable-parallel" because we no
longer support the "=TYPE" option.
Platforms tested:
arabica (Fortran)
Modi4 (Parallel & Fortran)
Burrwhite (Fortran & C++)
Misc. update: