| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
Section of code which defined file offset and length macros was removed
a while ago and found during testing just now.
Solution:
Replaced section of code to define macros.
Platforms tested:
IRIX64 6.5 (modi4)
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup.
Description:
Fix a few compiler warnings from the file creation property list -> generic
property list conversion. Also change a hard-wired value (8) for the
number of B-tree key values to a value that uses the enum's generated by
the compiler.
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Bug Fix
Description:
Function was returning NULL instead of FAIL
Solution:
Returned FAIL instead.
Platforms tested:
Linux
|
|
|
|
|
|
|
| |
Purpose:
Changed the file creation property list to the new generic property list.
Platform tested:
IRIX64, SunOS5.7, FreeBSD
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
Purify detected an uninitialized memory read in H5Pset_chunk and a memory
leak in H5P_remove.
Solution:
Patched both up.
Platforms tested:
Solaris 2.7 (arabica)
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Remove 'const' modifier in prototype for H5D_new, the dcpl_id parameter
needs to be non-const.
Platforms tested:
Eyeballed (reported on gondolin)
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up some small compiler warnings.
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
| |
Purpose:
Changed to the new generic property list for dataset creation property
list.
Platforms tested:
Arabica, modi4 and Hawkwind
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Document bug fix.
Description:
When reading or writing to chunked datasets and the data needed datatype
conversion, and the amount of data was more than one conversion buffer,
data in the conversion buffer was getting corrupted.
Solution:
Corrected error in advancing buffer pointer where it was being advanced
by the number of elements instead of the number of bytes.
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix/optimization.
Description:
Single, contiguous (in memory) hyperslabs are able to be transferred in one
I/O operation, but weren't being detected correctly by the code in
H5S_all_read()/H5S_all_write() and were getting routed into slower I/O
routines. (Or, possibly failing in some circumstances)
Solution:
Wrote code to correctly detect single contiguous hyperslabs in memory and
adjust arrays and buffer pointers describing the memory information so that
the entire hyperslab can be transferred in one operation.
Platforms Tested:
FreeBSD 4.4 (hawkwind)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Problem:
When an entire dataset was selected (through whatever means, H5S_ALL, making
an explicit "all" selection, etc.), the code was not allowing the optimized
routine to read the entire dataset in at once when the current dimensions
did not match the maximum dimensions and instead was defaulting to a [much]
slower method to read in the dataset.
Solution:
Took out check which was requiring current dimensions to be equal to the
maximum dimensions.
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
When writing (or reading) the entire dataset to a chunked dataset, there
was a boundary case where the code to generate the description of the
piece of the dataset to read into the buffer for data conversion would
attempt to read off the boundary of the dataset. This was occuring because
the code to detect the edge of the dataset was not propagating the change
up through the remaining dimensions when an edge in a fast changing
dimension was detected.
Solution:
Propagate edge detection up through slower changing dimensions properly.
Platforms tested:
Linux 2.2.18smp (eirene)
|
|
|
|
|
|
|
|
|
| |
Fix on Kludge
Description:
Forgot another chunk of parallel I/O code that needed to change for the
generic property list kludge... :-/
Platforms tested:
Parallel Linux 2.2.18smp (eirene)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Kludge
Description:
Since we're only about halfway through converting the internal use of
property lists from the "old way" to the generic property lists, we turned
off snapshots to avoid exposing lots of API changes to users, until the
APIs settled down.
Getting the snapshots rolling again seems to have become a priority, so
some changes are going to have to be made now that were going to be
postponed until we were completely finished with the conversion. This
requires that the old API functions be able to deal with both the old
and new property lists smoothly.
Solution:
Kludge together the property list code so that they can transparently handle
dealing with both the old and new property lists
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup for better compatibility with C++ compilers
Description:
C++ compilers are choking on our C code, for various reasons:
we used our UNUSED macro incorrectly when referring to pointer types
we used various C++ keywords as variables, etc.
we incremented enum's with the ++ operator.
Solution:
Changed variables, etc.to avoid C++ keywords (new, class, typename, typeid,
template)
Fixed usage of UNUSED macro from this:
char UNUSED *c
to this:
char * UNUSED c
Switched the enums from x++ to x=x+1
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Feature
Description:
The H5Pset_fapl_split() used to assume both meta and raw files
have the same prefix name. This prohibited the option to specify
the two files reside on different file systems. E.g., having
meta-file as /user/home/data1.meta and raw-file as /pfs/data1.raw.
Solution:
Added feature that if the raw or meta extension string contains
a "%s", it will be substituted by the filename given for H5Fopen
or H5Fcreate. This is same as the multi-file syntax. If no %s
is found, one is inserted at the beginning. This is the previous
behavior.
Platforms tested:
Modi4 (parallel, serial) and eirene (parallel).
|
|
|
|
|
|
|
|
|
| |
Adding Feature
Description:
Added new H5Pcopy_prop function to copy a property (value) from one property
list or class to another.
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Thread-safety Bug Fixes
Description:
FreeBSD must use a different layout or mechanism for allocating objects on
the stack when compiling for thread-safe operation. Unused bits in 'long
double' variable are never used ('long double's on FreeBSD are stored in
12 bytes, but only use 10 bytes for computations), but set to different
values, causing the endianness permutation testing to generate incorrect
results and eventually fail an assertion.
Solution:
Clear the temporary variables used for determining the endianness permutation
with memset (affecting all 12 bytes) instead of just assigning a 0.0 to them
(affecting only 10 bytes)
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Bug Fix
Description:
Was getting warnings about converting pointers to integers
without a cast.
Solution:
Changed some of the RETURN ERRORs from returning NULL to
returning FAIL instead.
Platforms tested:
Linux
|
|
|
|
|
|
|
|
| |
Tweaks
Description:
Improved the readability of the output and added some time information.
Platforms tested:
Solaris 2.6 (baldric)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
SAF test code exposed an error in the HDF5_MPI_OPT_TYPES
code. The SAF code was doing collective write to chunked
storage dataset. Some processes wanted to flush some chunk
while some other processes were doing something else but the
HDF5_MPI_OPT_TYPES code thought the chunk flushing were collective
calls since it only looked at the condition when H5Dwrite
was called. So, it hanged when doing MPI_File_setview.
For now, turned off the HDF5_MPI_OPT_TYPES code so that the
SAF code would work. More long term fix later.
Platforms tested:
modi4(pp)
|
|
|
|
|
|
|
|
|
|
|
| |
bug fix
Description:
H5FD_mpio_flush() would try to file seek negative if the
file->eoa is 0 (e.g., doing mpio on the raw-file of the
split file driver). Put in a code to catch this case
by returning succeed immediately.
Platforms tested:
modi4(pp)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
Byte swapping routine was core dumping when attempting to convert 0
elements.
Solution:
Don't try to byte swap when there is nothing to do... :-)
Apologies to Kent for my comments on Friday about testing his checkins,
especially when it was I who needed to do moer testing. :-/
Platforms tested:
Solaris 2.7 (arabica)
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
Byte swapping algorithm wasn't converting the last 8 elements correctly.
Solution:
Used correct variable... :-)
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
| |
Code improvement
Description:
The byte swapping routine for data conversion was inefficient.
Solution:
Applied a number of optimizations which should yield around a 2-3 times
faster algorithm.
Platforms tested:
Solaris 2.6 (baldric)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup (sorta)
Description:
When the first versions of the HDF5 library were designed, I remembered
vividly the difficulties of porting code from a 32-bit platform to a 16-bit
platform and asked that people use intn & uintn instead of int & unsigned
int, respectively. However, in hindsight, this was overkill and
unnecessary since we weren't going to be porting the HDF5 library to
16-bit architectures.
Currently, the extra uintn & intn typedefs are causing problems for users
who'd like to include both the HDF5 and HDF4 header files in one source
module (like Kent's h4toh5 library).
Solution:
Changed the uintn & intn's to unsigned and int's respectively.
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
| |
Update dependencies, etc.
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Took out a debugging printf
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
The datatype conversion buffer size was only halfway converted from hsize_t
to size_t and was causing problems. Also, the H5P_peek_<foo> routines have
a bunch of identical code.
Solution:
Finished converting the datatype conversion buffer size to size_t and
cleaned up the implementation of the H5P_peek_<foo> routines to call a
common routine instead of reimplementing a bunch of code.
Platforms tested:
Solaris 2.7 (arabica)
|
|
|
|
|
|
|
|
|
| |
More code cleanups
Description:
Wrap up the code cleanups for changing the dataset transfer property lists
over to using the generic property list code.
Platforms tested:
IRIX64 6.5 (modi4)
|
|
|
|
|
|
|
|
|
|
| |
Code cleanups, mostly..
Description:
Work on pacifying the SGI compiler to get the generic properties working
correctly with --enable-parallel and --enable-fortran. It's not quite
fixed yet, but I need to head home and these patches help... :-/
Platforms tested:
IRIX64 6.5 (modi4)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New Features!
Description:
Start migrating the internal use of property lists in the library from the
older implementation to the new generic property lists.
Currently, only the dataset transfer property lists are migrated to the
new architecture, all the rest of the property list types are still using
the older architecture.
Also, the backward compatibility features are not implemented yet, so
applications which use dataset transfer properties may need to make the
following changes:
H5Pcreate(H5P_DATASET_XFER) -> H5Pcreate_list(H5P_DATASET_XFER_NEW)
and
H5Pclose(<a dataset transfer property list>) -> H5Pclose_list(id)
This still may have some bugs in it, especially with Fortran, but I should
be wrapping up those later today.
Platforms tested:
FreeBSD 4.4 (hawkwind)
|
|
|
|
|
|
| |
H5Eprint shows library version information too.
Platforms tested:
eirene.
|
|
|
|
|
|
|
|
|
| |
Feature shift
Description:
Take out the v1.2.x compatibility stubs and put in the hooks for v1.4.x
compatibility when needed.
Platforms tested:
FreeBSD 4.3 (hawkwind)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
H5FD_fapl_copy is being called in H5Pset_driver when copying a dataset
transfer property list instead of H5FD_dxpl_copy and could potentially
cause problems if the file driver information was different.
Solution:
Changed call to H5FD_dxpl_copy() until the generic property code gets
merged in.
Platforms tested:
FreeBSD 4.3 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Bug Fix
Description:
The way we were generating Dependencies and .depend files was broken.
If the $srcdir or other macros began with a ".", then it would match
anything and cause problems since it would then overwrite the
beginning of the header file's path.
Solution:
Wrote a Perl script which can handle this type of weirdness better.
It's only used when the environment is a GNU one with a GCC
compiler...
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
H5Pset_driver had a resource leak which was dropping dataset transfer IDs
when switching drivers.
Solution:
Decrement dataset transfer ID reference count properly
Platforms tested:
IRIX64 6.5 (modi4)
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
Header file is using incorrect macro for detecting parallel I/O when
backward compability is turned on.
Solution:
Fix header files to define prototypes for parallel I/O property list
functions when compiled with v1.2 backward compatibility turned on.
Platforms tested:
Eyeballed... (Elena will be testing shortly)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
In certain circumstances, raw data was inadvertantly attempted to be read
from the metadata cache. This was caught with an assertion failure (i.e.
core dump) in the development branch or an eventual sequence of errors in
the release branch.
Solution:
Corrected off-by-one error in metadata caching code.
Platforms tested:
FreeBSD 4.3 (hawkwind)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Bug Fix
Description:
Forward port of the bug fix to the 1.4 branch reguarding the C++
compile error.
Solution:
Need to put
#ifdef __cplusplus
extern "C" {
#endif
/* ... */
#ifdef __cplusplus
}
#endif
around function declarations.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code Cleanup/Bug Fixes
Description:
Raymond's last fix corrected the problem with eirene, but there were still
a number of warnings, etc. during compiles.
Solution:
Clean up the warnings, neaten up the code a little and change a few hsize_t's
into size_t's that were missed in my previous sweep through the code.
Platforms tested:
Linux 2.2 (eirene)
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Bug fix.
Description:
Daily test fails in parallel collective write testing on eirene.
Solution:
In function H5S_mpio_spaces_xfer in H5Smpio.c, changed mpi_count
from hsize_t to size_t.
Platforms tested:
MPICH(Linux, SunOS, IRIX64), SGI MPI.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
On some systems (linux when not using gcc) 'dev_t' is not actually
a scalar variable. This causes the code which compares dev_t's in
the file drivers to not compile. Also the H5_inline flag was not being
set correctly in the H5private.h file.
Solution:
Set the H5_inline flag to '' (i.e. define it, but don't assign it a value)
if it is not currently defined.
Use DEV_T_IS_SCALAR flag from configure to correctly compare dev_t's using
memcmp instead of a scalar flag.
Platforms tested:
FreeBSD 4.3 (hawkwind), Linux 2.4.2 (chiba city cluster at Argonne)
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix... (sorta)
Description:
Added --enable-linux-lfs configure flag to have better control over whether
the enable large file support on Linux machines. Also removed the
-malign-double flag for gcc since it can potentially cause errors which
are difficult to detect.
Platforms tested:
Linix 2.2 & 2.4 (eirene and dangermouse)
|