| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New feature.
Description:
Add "memory pool" internal data structure. This set of routines is
designed to add a way to allocate small pieces of information for a particular
purpose and then free all the pieces at once (i.e. without having to free each
piece individually). Memory pools are also good for localizing lots of small
allocations that logically belong together.
For example, if you were constructing a temporary linked list, you could
create a new memory pool, allocate all the nodes for the list from the memory
pool and when you were done with the list, just destroy the pool instead of
tracking through the list and freeing each block independently.
Platforms tested:
FreeBSD 4.11 (sleipnir)
h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Convert H5Eget_num from 'size_t' to 'ssize_t' to allow for correct error
reporting (eventually).
Also, convert a bunch of static routines from "FUNC_ENTER_NOAPI" to
"FUNC_ENTER_NOAPI_NOINIT" or "FUNC_ENTER_NOAPI_NOINIT_NOFUNC"
Platforms tested:
FreeBSD 4.11 (sleipnir) w/pthreads
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
| |
Description: H5Eget_num used to return an INT type. That's not consistent with
the parameter of H5Epop.
Solution: Changed it to SIZE_T type.
Platforms tested: fuss - very simple change.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A little enhancement for integer datatype filter
Description:
Minimum-bit of the scaleoffset filter should not be less than 0,
However, if the user accidently input a negative value for integer type,
we will reset it to zero.
Solution:
Platforms tested:
too minor to test.
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Minor change for rounding of floating-point value for scaleoffset filter.
Description:
Always round to the bigger absolute integer value if floating-point data is in the middle.
0.5->1, -0.5->-1.
Solution:
Platforms tested:
Too minor to test
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Add missing #ifdef's to recent code cleanup that fix daily test failures.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up some compiler warnings
Platforms tested:
FreeBSD 4.11 (sleipnir)
h5committest
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Fix several problems with mounting files on an entry in a group when the
file the group is in has been closed.
Platforms tested:
FreeBSD 4.11 (sleipnir)
h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update H5Zscaleoffset.c so that it supports negative precision number.
Description:
Solution:
Platforms tested:
Linux 2.4
Misc. update:
too minor to check in other platforms
|
|
|
|
|
|
|
|
|
| |
Description: A user reported conversion of floating-point numbers returned some wrong value. It turned
out a variable in H5T_conv_f_f() wasn't reset after being used for each element. See bug #356 for details.
Solution: Simple reset it.
Platforms tested: fuss; also tested with the program user provided. Very simple change.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Portability feature
Description:
The random() and srandom() functions are not available on all machines.
Set up the configure script to automatically detect them, rather than
requiring their presence or absence to be hardcoded.
Solution:
Added AC_CHECK_FUNCS macro to configure.in and replaced
#ifdef WIN32 conditionals with #ifdef H5_HAVE_RANDOM conditionals.
Platforms tested:
sleipnir, Windows
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up some compiler warnings.
Platforms tested:
FreeBSD 4.11 (sleipnir) w/gcc 4.0
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove C99 types from new metadata cache related API calls
(take 2 -- missed one in the previous check in)
Description:
Windows (and perhaps others) don't like int32_t and int64_t. While
we have dealt with the issue internally, it is more of a problem
in API calls.
Solution:
Convert int32_t to int and int64_t to long int in the new metadata
cache related API calls.
Platforms tested:
heping
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Migrate MPE macros to H5private.h, in preparation for using the
H5MPprivate.h file for "memory pool" API.
Platforms tested:
FreeBSD 4.11 (sleipnir) w/parallel
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove C99 types from new metadata cache related API calls
Description:
Windows (and perhaps others) don't like int32_t and int64_t. While
we have dealt with the issue internally, it is more of a problem
in API calls.
Solution:
Convert int32_t to int and int64_t to long int in the
H5AC_cache_config_t structure used by the new metadata cache
related API calls. Added explicit type casts to convert
between internal and external representations.
Platforms tested:
h5committested
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bug fix, the wrong setting at H5public.h causes library failed to be compiled on windows.
Description:
"long long" needs to be changed to long_long since "long long" can not be recongized on windows.
Solution:
Platforms tested:
MSVS 6.0 on windows XP
Linux 2.4 on heping
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up a few compiler warnings of various sorts...
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Correct bug where buffers that have only fractional elements (usually from
being compressed before being shuffled) would cause optimized algorithm to
dump core.
Solution:
Don't attempt to shuffle bytes unless we've got more than one element.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
The previous bug fix of H5Zscaleoffset filter was not secure enough.
Solution:
Slight modification based on previous version.
Platforms tested:
heping
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Bug fix
Description:
Some platforms (Windows) don't have the long long type, which causes automatic
Fortran type matching to fail.
A solution is to use HDF5's long_long type.
Solution:
Changed H5match_types.c to use long_long type. Moved definition
of long_long out of H5private.h and into H5public.h.
Platforms tested:
mir, copper, pommier
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Kent reminded me that switching the logic wasn't enough, we really needed
to add the definition to the configure script.
Solution:
Do that.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Switch name & logic from H5_LLONG_TO_FP_CAST_BROKEN to
H5_LLONG_TO_FP_CAST_WORKS, to better match the rest of the library.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
The scaleoffset filter checks the uppper limmit of span of values
before it is assigned. The check for floating-point data, which may
not be represented in the machine exactly as the user wanted, did
not consider this.
Solution:
Slight modification of check above.
Platforms tested:
heping
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
On visual studio 6.0, conversion from unsigned long long to double is not supported.
Even during compilation stage, it will fail.
Solution:
Albert changed the way the macro is handled so that for windowx MSVS 6.0,
the code that has conversion from unsigned long long to double will not compile.
Platforms tested:
windows, linux
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add API calls allowing user control of the metadata cache.
Description:
Prior to this update, the metadata cache was not configurable
from outside the library.
Solution:
Add API calls allowing the user to configure the metadata cache
either at file open time, or for any open file. Also added calls
permitting the user to monitor cache size and hit rate. These
latter facilities are needed for "manual" cache size control
Platforms tested:
h5committested
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Modifications.
Description:
Scaleoffset filter codes could not pass windows compiler.
Solution:
Modifications were made to make it pass. Also slight improvements of codes.
Platforms tested:
heping
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Slight modification.
Description:
Several constants were added for the scaleoffset filter in
file H5Zpublic.h and corresponding changes needs to be made
in H5Zscaleoffset.c.
Solution:
Slight modification of codes.
Platforms tested:
heping, shanti
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add some comments for H5Pset_scaleoffset.
Description:
Solution:
Platforms tested:
No need to test.
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a few constants for the scaleoffset filter.
Description:
Solution:
Platforms tested:
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New feature.
Description:
The scaleoffset filter has been implemented for compressing
floating-point data (float, double, but not long double)
using D-scaling method from GRIB. It also changes to
according to the new interface of H5Pset_scaleoffset API.
Solution:
Platforms tested:
heping, copper, shanti
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New feature.
Description:
The H5Pset_scaleoffset is changed for the scaleoffset filter
to handle both integer and floating-point data. Currently,
the D-scaling method from GRIB has been implemented for
compressing floating-point data.
Solution:
One more parameter is added to the H5Pset_scaleoffset interface
to let user specify what type of data is used and what method
to use as well as corresponding parameters.
Platforms tested:
heping
Misc. update:
Needs to update libtool's version number
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New feature.
Description:
The H5Pset_scaleoffset is changed for the scaleoffset filter
to handle both integer and floating-point data. Currently,
the D-scaling method from GRIB has been implemented for
compressing floating-point data.
Solution:
One more parameter is added to the H5Pset_scaleoffset interface
to let user specify what type of data is used and what method
to use as well as corresponding parameters.
Platforms tested:
heping
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bug fix (sorta)
Description:
Rename H5_LLONG_TO_FP_CAST_WORKS to H5_LLONG_TO_FP_CAST_BROKEN
Solution:
Since a test for H5_LLONG_TO_FP_CAST_WORKS is not present in the configure script,
the dtransform test would assume that this cast doesn't work and skip the test. Change the variable around
so that, by default, it is assumed a long long to double cast does work.
Platforms tested:
minor change: copper, sol
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
The intel compiler on windows doesn't support long long to double conversion.
Solution:
Added a flag H5_LLONG_TO_FP_CAST_WORKS. When it is not defined, the data transform will issue
an error when someone tries to perform a transform from long long to double and the long long to double
dtransform test will be skipped.
Platforms tested:
heping, sol, copper
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix/code cleanup
Description:
Add tests to determine that very long (64K+) object names are working.
Fixed a couple of bugs in h5dump where they weren't...
Platforms tested:
FreeBSD 4.11 (sleipnir)
Solaris 2.9 (shanti)
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Rearrange struct members to fit better on 64-bit machines.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Solaris 2.9 (shanti)
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up various warnings reported by the Windows team.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Feature - libtool shared library versioning
Description:
Libtool provides a mechanism for different versions of the same shared
library to be distinguished. Now this is applied to HDF5 when it is
built as a shared library.
Solution:
The version number is stored in config/lt_vers.am, and included in
src/Makefile.am.
This number will be automatically updated by bin/h5vers; developers
only need to update it when they change the API.
*** IMPORTANT ***
Any time the API changes, the version number in config/lt_vers.am must
be updated!
Platforms tested:
mir, eirene, verbena, modi4
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Opening a dataset (or named datatype) with "." for the name and using a
group ID for the location ID was not returning an error value.
Solution:
Check the type of the object before attempting to open it (internally,
using a group ID and "." for the name maps to the group object).
Platforms tested:
FreeBSD 4.11 (sleipnir)
Solaris 2.9 (shanti)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Correct typo in "base array" free list macro when free list macros are
disabled.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Solaris 2.9 (shanti)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
Several call to macro HGOTO_ERROR passes wrong value to ret_value.
Solution:
Change the value from zero to FAIL.
Platforms tested:
heping
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
One call to macro HGOTO_ERROR passes wrong value to ret_value.
Solution:
Change the value from zero to FAIL.
Platforms tested:
heping
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description: When stream driver was not enabled, H5FD_STREAM variable
was not define. Fortran compilation failed since H5FD_STREAM
was needed to set up fortran global variables.
Solution: Followed MPIO driver model and defined H5FD_STREAM to be -1
when driver is not enabled.
Platforms tested: heping with --enable(disable)-stream-vfd
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New feature.
Description:
The scaleoffset filter previously does not use macros to handle
different integer datatype situations.
Solution:
Added macros in the filter for better maintenance and clarity of codes.
Platforms tested:
heping, copper, shanti
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Minor feature
Description:
If a user configures without C++ or Fortran, 'make' will not recurse into
c++ or fortran directories. However, if the user cd's into these
directories and 'makes,' the Makefiles will attempt to build interfaces
that have not been configured, usually failing.
In an unrelated but minor change, src/H5detect should be compiled with
the -g flag to disable compiler optimizations since it is only
executed once.
Solution:
Make it harder for users to try to compile interfaces that have not been
configured by making c++, fortran, and hl directories not recurse into
their subdirectories unless they have been configured.
Thus, 'make' in /fortran/src will break if Fortran has not been configured,
but 'make' in /fortran will not break.
Platforms tested:
mir, modi4, copper
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
| |
Code optimization
Description:
Add "base" size to array free list code, to accomodate skip list nodes.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Solaris 2.9 (shanti)
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code optimization
Description:
Reduce overhead for common case of stride==NULL and block==NULL for
H5Sselect_hyperslab() calls.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Solaris 2.9 (shanti)
|
|
|
|
|
|
|
|
|
|
|
| |
Code optimization
Description:
Use Duff's Device to unroll shuffling loop a bit, for ~30% speedup.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Solaris 2.9 (shanti)
|