| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Finish new version of the I/O pipeline message, which is much smaller than
the previous version. This version is used with the "use the latest version
of the format" flag.
Closed several memory leaks/overruns (found with valgrind).
Also, lots of compiler & formatting cleanups.
Tested on:
Linux/32 2.6 (chicago)
Linux/64 2.6 (chicago2)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add "use the latest format" support for dataspace object header encode/
decode routines and clean up format a bit for the latest format (new to 1.8.x
releases)
Remove storing 'perm' parameter for array datatypes in memory and the file,
and add test to make certain that if any user applications are attempting to
store them, we get some reports back. (Should be unlikely, since the RefMan
says that the parameter is not implemented and is unsupported).
Carry those changes into the tests, etc.
Clean up a bunch more compiler warnings.
Tested on:
FreeBSD/32 4.11 (sleipnir) w/threadsafe
Linux/32 2.4 (heping) w/FORTRAN & C++
Linux/64 2.4 (mir) w/enable-1.6-compat
|
|
|
|
|
|
|
|
|
|
| |
"make check-vfd" will now run all tests in the test directory with different
file drivers (at least, all of those tests that use the testing framework's
FAPL). Tests that fail will be skipped.
This is not a perfect fix, but is better than nothing.
Along with this change, check-vfd should be added to the Daily Tests.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Check in some of the code cleanups from working on the external link
support. (This doesn't include any of the external link features)
Platforms tested:
FreeBSD 4.11 (sleipnir)
Mac OSX.4 (amazon)
Linux 2.4
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Fix a bunch of warnings flagged by Windows compilers.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
On VMS dsets test failed screaming about corrupted stack.
Debugging didn't show any obvious problems. Careful examination
of compilation warning messages (something like "function is used as
data in dsets") made me to search for duplicated names.
It turned out that two variables H5Z_SET_LOCAL and H5Z_CAN_APPLY
were confused with H5Z_set_local and H5Z_can_apply functions from
H5Z.c file.
Solution:
Changed variable names to H5Z_SET_LOCAL_TEST and H5Z_CAN_APPLY_TEST.
Platforms tested: Alpha VMS, heping; minor change
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Changed some scale+offset filter symbols from H5_SO_... -> H5Z_SO_...
to indicate that they are in the H5Z package.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
update dsets.c for scale-offset filter.
Description:
H5Psetscaleoffset has changed parameters.
Solution:
Platforms tested:
sol 2.7, Linux 2.4, AIX 6.4(32-bit and 64-bit)
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Trim trailing whitespace, which is making 'diff'ing the two branches
difficult.
Solution:
Ran this script in each directory:
foreach f (*.[ch] *.cpp)
sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f
end
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix & code cleanup
Description:
Don't unmount child files from a parent file if the parent file is
being held open by an object.
Also, moved the mounting routines into their own source file and the
superblock routines into their own file also.
Solution:
Moved the code for unmounting child files down in the H5F_close routine
and also add checks to the file and group mounting code to unmount child
files when the last object holding open a file closes.
Platforms tested:
FreeBSD 4.11 (sleipnir)
h5committest
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up some compiler warnings
Platforms tested:
FreeBSD 4.11 (sleipnir)
h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Slight modifications.
Description:
Several constants related to the H5Pset_scaleoffset interface
are added into H5Zpublic.h. Test cases that calls H5Pset_scaleoffset
needs slight modifications.
Solution:
Use the defined names when calling H5Pset_scaleoffset instead of
using numerical numbers.
Platforms tested:
heping, shanti
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New feature.
Description:
The scaleoffset filter has been implemented to
to compress floating-point data (single precision
and double precision) using D-scale method from
GRIB.
Solution:
Test cases for float and double datatypes are added
according to the change of scaleoffset filter. Situations
of fill value defined/undefined are tested.
Platforms tested:
heping, shanti, copper
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
The nbit filter test case (compound datatype with no-op field)
can not pass the daily test on heping and eirene when the
enable-production option is set with configure and PGI compiler
is used. It will generate segmentation fault.
Solution:
It was found that the seg fault disappears when adding a new
index variable in the test case and using it instead of using
an existing index variable twice during initialization.
This does not make much sense since previous codes is logically
equivalent to the changed codes. So, some other factors beyond
the test case codes may have caused the problem.
Platforms tested:
heping
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New feature.
Description:
The N-Bit filter needs a test case for no-op datatypes.
Solution:
A test case was added to test a compound datatype with
N-Bit fields and no-op fields.
Platforms tested:
heping, shanti
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
One test case of scaleoffset filter has fill value too large for int.
Solution:
Change the value to be within the range of int.
Platforms tested:
heping
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New feature.
Description:
The scaleoffset filter is now complete for compressing integers. All previous
bugs have been fixed. The filter does not compress floating-point at present.
Solution:
Update test cases for the scaleoffset filter. Two for integer types and one for
floating-point (even though the filter does not compress). The two test cases
for integer type tests situations where fill value is defined and undefined for
the dataset.
Platforms tested:
heping, copper, shanti
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description: The library didn't handle incorrect hardware conversion for datatype. It simply did
convert to incorrect data if any hardware didn't handle correctly.
Solution: During configuration, incorrect hardware conversion is detected and some macros are
defined. Use these macros to decide whether to register hardware conversion in H5T.c. If no hardware
conversion function is registered for certain pair of datatypes, software conversion function will
be used as the conversion path. Although slower than hardware conversion, we're more confident
software conversion is accurate.
So in one sentence to describe library's behavior, if some hardware conversion doesn't work well,
software conversion will be used instead.
Platforms tested: h5committest and fuss.
Misc. update: some changes to configure's comments.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New feature.
Description:
Add a test case for scaleoffset filter (integer type). For debugging purpose only.
The test case is not turned on.
Solution:
Platforms tested:
heping, copper, arabica
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add test cases of nbit filter, tests are now turned on
Description:
Six test cases are added for testing the nbit filter with different
datatypes including int, float, double, array datatype, a simple
compound datatype and a complex compound datatype. Improvements are
made to testing of int and floating point.
Solution:
Platforms tested:
AIX 5.1 and Linux 2.4.
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adding N-bit testing source code into CVS tree.
This is for debugging purpose only. N-bit filter won't be included in the daily test.
Description:
Integer, Float, Array datatype and Compound datatype tests are included.
More comprehensive tests need to be done.
Solution:
Platforms tested:
copper(AIX 5.1) and heping(Linux 2.4).
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
For debugging N-bit filter; it will not affect the library.
Description:
Adding N-bit tests, the library will not run those tests.
Solution:
Platforms tested:
heping(Linux 2.4), copper(AIX 5.1),arabica(sol 2.7)
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
szip tests were failing due to a few "H5_SZIP_CAN_ENCODE" ifdefs still
lying around in the source code.
Solution:
Eliminate compile time testing by using new SZ_encoder_enabled() routine
at run time.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/szip
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-)
Description:
Generally speaking, this is the "signed->unsigned" change to selections.
However, in the process of merging code back, things got stickier and stickier
until I ended up doing a big "sync the two branches up" operation. So... I
brought back all the "infrastructure" fixes from the development branch to the
release branch (which I think were actually making some improvement in
performance) as well as fixed several bugs which had been fixed in one branch,
but not the other.
I've also tagged the repository before making this checkin with the label
"before_signed_unsigned_changes".
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel & fphdf5
FreeBSD 4.10 (sleipnir) w/threadsafe
FreeBSD 4.10 (sleipnir) w/backward compatibility
Solaris 2.7 (arabica) w/"purify options"
Solaris 2.8 (sol) w/FORTRAN & C++
AIX 5.x (copper) w/parallel & FORTRAN
IRIX64 6.5 (modi4) w/FORTRAN
Linux 2.4 (heping) w/FORTRAN & C++
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix SZIP filter to dynmically detect encoder.
Description:
Solution:
See:
http://hdf.ncsa.uiuc.edu/RFC/SZIP/Szip_dynamic_12_Oct.pdf
Changes to library tests, contingent on detecting SZIP encoder.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix (sorta)
Description:
Change reading of "missing" chunks from datasets with undefined fill
values to not overwrite the application buffer with random garbage from
memory. Note that this is almost the same, since whatever garbage the
application had in those locations will still be there...
Platforms tested:
FreeBSD 4.10 (sleipnir)
IRIX64 6.5 (modi4)
h5committested
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Allow I/O on extendible chunked datasets with (currently) zero-sized
dimensions to proceed harmlessly instead of dumping core on an assertion.
Solution:
Removed assertion and added checks to avoid problem situation in H5TB_end
Platforms tested:
FreeBSD 4.10 (sleipnir) w/ & w/o parallel
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose: Improvement
Description: HDF5 Library set pixels_per_scanline parameter to the size of the chunk's
fastest changing dimension. As a result, fastest changing dimension
of the chunk could not be bigger than 4K and smaller than pixels_per_block
value and szip compression couldn't be used for many real datasets.
Solution: Reworked algorithm how HDF5 sets pixels_per_scanline value; only chunks
with the total number of elements less than pixels_per_block value are rejected.
There is no restriction on the size of the chunk's fastest changing
dimension anymore.
Modified the test according to the new algorithm.
Platforms tested: verbena, copper, sol
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up almost all warnings from Windows builds.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
HDF5 now supports SZIP with no encoder.
Description:
SZIP can be configured to have both encoder and decoder or just to have the decoder. HDF5 can now query the configuration of any filter, and will throw errors if users try to write using a filter with encoding disabled.
Solution:
Added H5Zget_filter_info function, changed API for H5Pget_filter and H5P_get_filter_by_id. See SZIP RFC.
Platforms tested:
Copper (fortran, C++, parallel), Sleipnir (C++), Arabica (fortran, C++), Verbena (fortran, C++)
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code optimization
Description:
Don't recompute the internal index value for looking up the chunk in the
hash table, just use the value already computed from iterating through the
chunks.
Platforms tested:
Solaris 2.7 (arabica)
FreeBSD 4.9 (sleipnir) w/parallel
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code optimization & bug fix
Description:
When dimension information is being stored in the storage layout message
on disk, it is stored as 32-bit quantities, possibly truncating the dimension
information, if a dimension is greater than 32-bits in size.
Solution:
Fix the storage layout message problem by revising file format to not store
dimension information, since it is already available in the dataspace.
Also revise the storage layout data structures to be more compartmentalized
for the information for contiguous, chunked and compact storage.
Platforms tested:
FreeBSD 4.9 (sleipnir) w/parallel
Solaris 2.7 (arabica)
h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up lots of warnings based on those reported from the SGI compilers
as well as gcc.
Platforms tested:
SGI O3900, IRIX64 6.5 (Cheryl's SGI machine)
FreeBSD 4.9 (sleipnir) w/ & w/o parallel
h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bug fix
Description:
the test that reads a pre-saved file with filters must only be run
when that filter is available on the current configuration,
otherwise the library trigers a read error
Solution:
added a #ifdef for the filter, that prints -SKIP- in case we do not have the filter
Platforms tested:
linux
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bug fix
Description:
the added binary files to read did not have the construction of the "srcdir" path
Solution:
add it
Platforms tested:
linux
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bug fix
new test
Description:
the fletcher filter used a temporary 2 byte word buffer to compute the checksum.
this is non portable between big-endian/little endian.
added a test that reads 2 pre-saved files (one LE, other BE) with that filter enabled
Solution:
replaced with a buffer of 1 byte type
Platforms tested:
linux
solaris
solaris 64 bit
AIX
windows
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
introduced the constant H5Z_FILTER_ALL, used to remove all filters in H5Premove_filter
Description:
Solution:
Platforms tested:
linux
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
replaced name of delete filter with remove filter for the new function H5Premove_filter
Description:
Solution:
Platforms tested:
linux
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Add C++ and FORTRAN wrappers for new H5Pdelete_filter routine, along with
documentation and a note in the release notes.
Platforms tested:
FreeBSD 4.9 (sleipnir)
Linux 2.4 (verbena) w/ C++ and FORTRAN
Too minor for full h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
new library function H5Pdelete_filter
deletes one or all filters from a dataset creation property list
this was done for the NONE option of h5repack, added tests for this feature
added a test for the new function in /test/dsets.c
Description:
Solution:
Platforms tested:
linux
solaris
AIX
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
When two property lists are compared, the H5Pequal routine was just
comparing the raw information for the property values. This causes problems
when the raw information contains pointers to other information.
Solution:
Allow a 'compare' callback to be registered for properties, so that a user
application get perform the comparison itself, allowing for "deep" compares of
the property value.
This was exported to the H5Pregister & H5Pinsert routines in the development
branch, but not the release branch.
Platforms tested:
FreeBSD 4.9 (sleipnir)
h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Range check the szip 'pixels per block' against the chunk size of the
dataset when attempting to create a new dataset, since the szip library
requires the PPB to be at least the size of the fastest changing dimension
in the chunk.
Platforms tested:
FreeBSD 4.9 (sleipnir)
too minor for h5committest
|
|
|
|
|
|
|
|
|
|
|
| |
Version update
Description:
Removed 1.4 compatibility code in the library.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Add in rest of szip "options mask" macros that were missing. Also made
"raw" options mask set by the library, instead of requiring users to always set
it.
Platforms tested:
FreeBSD 4.8 (sleipnir)
Minor tweaks too small fo h5committest
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up varios compiler warnings flagged by SGI compiler and gcc 3.3
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committest
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Reduce warnings when compiled with --enable_hdf5v1_4 compatibility switch.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committest
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up various warnings & comment out unused code.
Platforms tested:
FreeBSD 4.8 (sleipnir) w/C++
FreeBSD 4.8 (sleipnir) w/parallel
h5committested
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Remove debugging information and match bug-fix changes to szip filter
code.
Platforms tested:
FreeBSD 4.8 (sleipnir)
h5committest not needed.
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|