| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
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:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Fix three (!) bugs in szip filter:
- we were using bytes per pixel instead of bits per pixel
- we were using the size of the slowest changing dimension instead of
the fastest changing dimension to compute the blocks per scanline
parameter
- we swapped two parameters when setting up szip_options block.
Solution:
Addressed bugs above.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committest not needed
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Improve error reporting for pixels per scanline check.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committest not needed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Raw data I/O on chunked datasets would attempt to allocate data structures
proportional to the number of chunks in the dataset on disk, instead of just
the number of chunks that the I/O operation would interact with, causing
operations on datasets with large #'s of chunks to fail (or become very slow),
even though the actual I/O operation was very modest.
Solution:
This is the "scalability fix" for chunked datasets that I've mentioned
we need to do, althought it's not the complete fix for the issue. Read on
for the details...
Only create data structures for the chunks that the I/O operation will
actually act on, reducing the amount of information allocated in memory,
normally.
I say "normally", because this algorithm has the same problems as the
original algorithm (worse actually, since the data structure for each chunk
is larger now) if _all_ the chunks in a dataset with a lot of chunks are
actually involved in the I/O operation. If that is the case, this code
will fail in a similar way.
To truly fix the problem, we would need to only create data structures for
a particular number of chunks, perform the I/O on just those chunks, then
release the data structures for those chunks and create data structures for
the next set of chunks to access, etc. However, I think this case is pretty
rare right now and we should worry about it after the 1.6.0 release.
Platforms tested:
h5committested
|
|
|
|
|
|
|
|
|
|
|
| |
New feature
Description:
Added "fast comparison" code for hsize_t's, since they are used in th
raw data chunking I/O code now.
Platforms tested:
h5committested
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up comment
Platforms tested:
h5committested
|
|
|
|
|
|
|
|
| |
Description: H5Tget_native_type didn't handle special platform like Cray properly.
Solution: modify algorithm and test
Platforms tested: h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
The H5HG module had a couple of lines like the following:
HDmemcpy(foo + 1, foo, size);
This would overwrite the first character of "foo" for the total of
"size" bytes.
The H5Pfapl.c is an update of the trace information.
Solution:
Use HDmemmove instead. (Suggested by George Lewandowski at Boeing.
Thanks! :-)
Platforms tested:
Modi4 (Fortran & Parallel)
Verbena (Fortran & C++)
Arabica (Fortran)
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Limit the scope on more function prototypes/macros/typedefs.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committest not necessary.
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Improve information output from h5debug.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committest not needed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
When the same dataset is opened more than once and those references to the
object are left dangling, the library would not correctly shut down the dataset
API, potentially allowing the file to be truncated.
Solution:
"force" the dataset IDs to be released when the dataset API is being shut
down by the library.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committested
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
If the buffer holding the list of interfaces that are attempting to be
closed down becomes full, the library stops recording that an infinite loop has
occurred when shutting down the interfaces.
Solution:
Always return the correct "pending" information.
Also added ellipsis to the string of interfaces to try to make it more
obvious that the buffer became full.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committested
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Added missing line for file close degree setting for this VFD.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committested
(Unfortunately, none of these tests actually exercised this driver... :-(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Iterating over the attributes of an object without any attributes was
returning FAIL instead of 0 as the RM states.
Solution:
Changed return value of H5Aiterate for objects without attributes to be 0
and added regression tests for this.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committest not needed.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Small code cleanup
Description:
Remove redundant sanity check.
Added a note about a potential bug.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committest not necessary.
|
|
|
|
|
|
|
|
|
| |
Description: when a datatype element size is bigger than I/O datatype
conversion buffer(1MB), library reports failure.
Solution: adjust conversion buffer to be at least equal to one element size
Platforms tested: h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
The newly added H5TEST_DLL{VAR} macros weren't defined if it wasn't
a Windows environment.
Solution:
"#define" them to "" and "extern" if not a WIN32 environment.
Platforms tested:
Linux (small change not needing full testing)
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To add macro HDF5TESTDLL for windows libtest library.
Description:
Many HDF5 tests will use h5test.c.
So we create a libtest library to
1) make tests more organized and
2) make tests more consistent with other platforms
3) reduce compiling times
4) reduce dumplicated warnings possibily generated by h5test.c
However, we didn't create the corresponding libtest DLL correctly,
now, some warnings are generated because of this; so for this release,
we follow exactly DLL-DLL rules, to create an internal libtest DLL for
our test suites.
The application who used HDF5DLL will not have extra burdens to add
HDF5TESTDLL and this will reflect in the release.txt
Solution:
USE DLL import and export library by defining macro HDF5TESTDLL and HDF5TESTUSEDLL
Platforms tested:
Windows 2000(the macro will not affect on non-WIN32 platforms).
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up warnings exposed by compiling on O2K. Also, revert some of Bill
and my changes to the H5S_mpi_opt_types_g, etc. and settle them back into their
original location.
Platforms tested:
h5committested.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
A variable wasn't declared in this file.
Solution:
Put the extern declaration of the variable in this file. It's defined
in the H5S.c module.
Platforms tested:
Modi4 (This affects only parallel platforms)
Misc. update:
|
|
|
|
|
|
|
|
|
| |
Description: H5Sselect_hyperslab and H5Sselect_elements didn't check scalar
dataspaces.
Solution: put error detection in those functions.
Platforms tested: eirene(simple change).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup.
Description:
Move many package or internal function prototypes and macro definitions
into tighter scope according to their current use.
Added more comments where appropriate.
Eliminate ancient, unused functions.
Added a couple "accessor" functions to get parts of data structures which
were moved out of scope.
Platforms tested:
h5committested
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Clean up small memory leak.
Platforms tested:
h5committested.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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:
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Improve file format debugging output.
Platforms tested:
FreeBSD 4.8 (sleipnir)
Triple check not needed
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
New external file double-vectorized I/O routines were checking an assertion
on the wrong variable (essentially a typo :-).
Solution:
Check correct variable.
Platforms tested:
FreeBSD 4.8 (sleipnir)
Triple check not needed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Dataspace selections created for individual chunks during chunk dataset
I/O were leaking memory.
Solution:
Properly set reference count on selection, so they get free'd when the
dataspace is closed.
Platforms tested:
FreeBSD 4.8 (sleipnir)
Triple check not needed.
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup.
Description:
Cleaned up an unusued variable and some commented out code.
Platforms tested:
FreeBSD 4.8 (sleipnir)
Triple check not needed.
|
|
|
|
|
|
|
|
|
| |
Description: H5T_XXX_init_interface calls H5T_init_interface causing
datatype not closed after file is closed.
Solution: changed H5T_init_interface to H5T_init
Platforms tested: h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code Improvements/Bug Fixes
Description:
Comparison of equality of a double/float variable to 0.0 is not
guaranteed to work and is bad practice.
In H5Fcontig.c, a warning was given by a statement like:
x = (++x) % y;
This could be confusing to a compiler I suppose.
In H5RS.c, a typedef of a structure was being tagged by the compiler
as "useless" because it had the form:
typedef struct foo {
int var1;
/* ... */
}; /* <--- note no name for this typedef */
The statement "typedef struct foo foo" is already in the header file.
Solution:
Test that the absolute value of the variable is < a very small
positive number.
Changed "x = (++x) % y" to "++x; x %= y;" instead.
Removed the "typedef" from the structure in the H5RS.c file.
Platforms tested:
Modi4 (Parallel & Fortran)
Verbena (C++ & Fortran)
Arabica (Fortran)
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Some of the TRACE macros were updated to reflect a new parameter.
Platforms tested:
Linux
Solaris w/ zlib
Irix w/ zlib
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change
Description:
Instead of using the "USE_GPFS" macro, use the "H5_HAVE_GPFS" macro
which is defined during configuration and then use the new parameter
to the H5P{get,set}_fapl_mpiposix functions to control if GPFS is
enabled or not.
Platforms tested:
Modi4 (only affects the parallel stuff, so no need for full testing).
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup.
Description:
Cleaned up a few debugging printfs.
Platforms tested:
FreeBSD 4.8 (sleipnir)
Triple check not needed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Feature
Description:
Added new flag to the H5pubconf.h file --- NO_SHARED_WRITING
(H5_NO_SHARED_WRITING). It's only defined for CodeWarrior and should
never be defined for other platforms unless the "open()" bug that CW
has shows up on other platforms.
Platforms tested:
Verbena. Configure only, so no need for full tests.
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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:
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Corrected a couple of problems with Ray's v1.4 compat checkin yesterday.
Platforms tested:
FreeBSD 4.8 (sleipnir) w/ & w/o --enable_hdf5v1_4 compat switch
Triple check unnecessary.
|
|
|
|
|
|
|
|
| |
Description: 1.4 compatibility for H5G_obj_t type and H5Zregister test.
Solution: use macro H5_WANT_H5_V1_4_COMPAT
Platforms tested: h5committest
|
|
|
|
|
|
|
|
| |
Description: 1.4 compatibility for H5G_obj_t type and H5Zregister test.
Solution: use macro H5_WANT_H5_V1_4_COMPAT
Platforms tested: h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A bug fix for windows.
Description:
Many tests failed on windows when stdio driver is on.
I suspect it is the compiler bug.
After some investigation, the symptom is:
The signature of HDF5 file cannot be found.
The real problem is the signature was appended at the end of the whole
file instead of inserting at the starting of the file.
It seems when the file pointer(signature) is reset to the starting of the file,
windows mis-placed it to the end of the file after finding the file is close to
the end.
Solution:
Fortuately, ftell and fseek still function well on windows,
so I use ftell and fseek to force the file pointer to go to the position it is supposed
to go.
Platforms tested:
since the only change in this file is within ifdef WIN32 macro; it won't
affect the mainstream platforms, so I don't have to three platforms.
Platforms to confirm(test with basic function): Linux 2.4
Platforms to throughly test: windows 2000 with VS6.0
test on three different
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
removed and change comments
Description:
removed the modification comment about the while loop, it is not sufficiently important to be there
changed the "Id to name" comment in the test description, it was incorrecly about other thing
Solution:
Platforms tested:
none , just comments
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose: Windows maintenance and code cleanup
Description: There were a lot of places in the source code where varibale
was declared but never used.
Solution: Cleaned the source code to avoid warnings on Windows and Unix
platforms.
Platforms tested: arabica, modi4, Windows
Probably my environment is wrong on Linux, cannot
compile at all when fortran is enabled
If daily tests fails tomorrow, this will be my fault
but I want to go home now :-)
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Minor improvement
Description:
Moved the H5FD_mpio_Debug initialization to H5FD_mpio_init() so
that it is done only once instead of every file open.
Fixed blocked out patch that checks on INFO object so that
H5FD_mpio_Debug can be set via the INFO object.
(All these had been done to v1.4, now folded them int v1.5)
Platforms tested:
Did not h5committest since this is purely parallel code.
The changes were made in an isolated copy in Copper.
Tested in Copper parallel.
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Code cleanup
Description:
Removed debug statement bracketed by H5FDmpiposix_DEBUG or alike.
They were added in by mistakes.
Platforms tested:
Did not h5committested but tested in Copper since there changes are
limited in parallel codes.
Misc. update:
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Feature
Description:
Added the feature to store and return a duplicate of Communicator in
the access of property list and file operations. (no duplicate for
INFO object because MPIPOSIX driver does not process INFO object.
Platforms tested:
Did not h5committested because these are all MPI code and well protected
by HAVE_PARALLEL.
Tested in eirene and modi4, both parallel mode.
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Replaced the comm/info freeing with H5FD_mpio_comm_info_free to make
it cleaner and consistent.
Replaced couple FUNC_LEAVE_NOAPI(SUCCEED) with FUNC_LEAVE_NOAPI(ret_value).
These were bugs since it was possible errors may occur at FUNC_ENTER...()
time and this hardcoding would not report those errors.
Documented some modification history.
Platforms tested:
Did not h5committested because these are all MPI code and well protected
by HAVE_PARALLEL.
Tested in eirene and modi4, both parallel mode.
Misc. update:
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Remove some cruft left over from the switch from int->H5G_obj_t
Platforms tested:
FreeBSD 4.8 (sleipnir), triple check not necessary.
|
|
|
|
|
|
|
|
|
|
| |
Purpose: A little code rewriting
Description: object types were defined as macros in H5Gpublic.h
Solution: changed them to enumerate type
Platforms tested: h5committtest
|