Commit Graph

65 Commits

Author SHA1 Message Date
Mike McGreevy
2996c917af [svn-r13475] There's a configure issue linking szip's shared libraries when running on kagiso.
The static szip libraries are working as intended, but when shared szip 
libraries are present and intended for use they cannot be opened. A check 
has been implemented to test if shared szip libraries are functional on 
current platform. If they are not, and the user is trying to use them, 
szip is now disbaled and the user is informed.

This issue occurs on kagiso, and the resolution was tested on kagiso.
2007-03-08 11:57:36 -05:00
Albert Cheng
ed7d456e51 [svn-r13253] Updated all C and C++ style source code files with the THG copyright notice.
Tested platform:
Kagiso only since it is only a comment block change.  If it works in one
machine, it should work in all, I hope.  Still need to check the parallel
build on copper.
2007-02-07 09:56:24 -05:00
Quincey Koziol
108114495f [svn-r13217] Description:
Move fill value messages into new shared message method calling scheme.

    Only update an opened dataset's fill value property if it's different from
the default fill value settings.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-01-29 13:19:05 -05:00
Quincey Koziol
d89c2c43f3 [svn-r13183] Description:
Checkpoint work toward getting the fill value message into the shared
message interface regime.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-01-23 15:30:33 -05:00
Quincey Koziol
dc41c73711 [svn-r13167] Description:
Get rid of two different types of fill value struct (merge H5O_fill_t
and H5O_fill_new_t) and clean up & simplify dataset initialization code.
        (In preparation for shared object header message method call
refactoring).

Tested on:
        FreeBSD/32 6.2 (duty)
        Mac OS X/32 10.4.8 (amazon)
2007-01-22 16:07:54 -05:00
James Laird
681d9231cf [svn-r13166] Fixed bug in H5Ocopy where shared attributes that were deleted during H5Ocopy
would become shared NULL messages (oops!).
Added a test for this case.
Also fixed the #define that caused errors on Windows (and probably other
platforms).  This may fix the Daily Test error.

Tested on Windows, smirom, kagiso, and juniper.
2007-01-22 16:03:24 -05:00
James Laird
e100695eb0 [svn-r13068] Ran bin/reconfigure. Some of the scripts have been changed or haven't
been run in a while, so many of the source files were updated with
tracing macros, etc.  No code changes by me.

Tested on kagiso and smirom.
2006-12-18 14:16:17 -05:00
Quincey Koziol
304accfb96 [svn-r13015] Description:
Migrate more object header routines to use the H5O_msg_ prefix and put
them into the src/H5Omessage.c code module.

Tested on:
    Mac OS X/32 10.4.8 (amazon)
    FreeBSD/32 4.11 (sleipnir)
    Linux/32 2.4 (heping)
    AIX/32 5.? (copper)
2006-12-04 06:25:01 -05:00
Quincey Koziol
92a2d15859 [svn-r12941] Description:
Clean up warnings assigned to me from today's meeting - still need
to tackle the datatype conversion ones...

Tested on:
    FreeBSD/32 4.11 (sleipnir)
    Linux/32 2.4 (heping)
    Linux/64 2.4 (mir)
2006-11-17 17:09:43 -05:00
Quincey Koziol
19c9657f7c [svn-r12842] Description:
Refactor generic property list initialization code to put property list
specific routines in property list modules, instead of scattered to the four
winds.  Also, introduce property list class initialization objects, to make
adding new property list classes in the library easier.

    Fix daily test failure by using H5Pget_elink_prefix() API routine instead
of looking at the "raw" generic property list information.

Tested on:
    Mac OS X/32 10.4.8 (amazon)
    FreeBSD/32 4.11 (sleipnir) w/threadsafe
    Linux/32 2.4 (heping) w/C++ & FORTRAN
    Linux/64 2.4 (mir) w/build-all & 1.6 compat
2006-11-01 23:54:19 -05:00
Quincey Koziol
45ac464161 [svn-r12805] Description:
Fix off-by-one memory error when retrieving I/O pipeline filter's name.

Tested on:
    Linux/64 2.4 (mir)
    FreeBSD/32 4.11 (sleipnir)
2006-10-23 17:21:23 -05:00
Quincey Koziol
e40557304f [svn-r12803] Description:
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)
2006-10-23 15:40:14 -05:00
Quincey Koziol
79aecf8953 [svn-r12706] Description:
Clean up some of the warnings on 64-bit Linux...

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
    Too minor to require h5committest
2006-10-02 14:59:46 -05:00
James Laird
4f8ca8e026 [svn-r11738] Purpose:
Configure feature

Description:
Added 'make trace' target.

Solution:
Added tracing to 1.7.  This was done automatically in 1.6, but left out
of 1.7 until now (oops!).
Tracing in 1.7 only happens manually, when the user types 'make trace.'
Tracing automatically requires more framework than it's worth.
I also fixed a couple of tracing bugs and ran trace.

Platforms tested:
mir, sleipnir, modi4

Misc. update:
2005-11-18 10:55:22 -05:00
Raymond Lu
1143f47e2d [svn-r11415] Purpose: Internal design change.
Description: H5T_register() replaces any existing data conversion path
with a new path.

Solution: Added a parameter to H5T_register() and H5T_path_find() to
signal the library whether the new conversion path is from API function
H5Tregister() or from private function like H5T_init_interface().  If it
is from H5Tregister(), replace existing path.  If it's from H5T_init_interface()
and the library is trying to register default hard conversion functions,
don't replace existing path because the path is registered by the library.
For example, the library registered H5T_conv_int_float() and is trying to
register H5T_conv_long_float().  The size of long is equal to int.  There's
no need to replace the path H5T_conv_int_float().

Platforms tested: h5committest and fuss.
2005-09-14 16:54:19 -05:00
Quincey Koziol
90103afad6 [svn-r11337] Purpose:
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
2005-09-01 17:46:16 -05:00
MuQun Yang
9d7b250371 [svn-r11325] Purpose:
Update scaleoffset filter.

Description:
1. Using enum type to describe scale offset type(int, Dscale or Escale)
2. Changing some macro names
3. Fixing some minor bugs

Solution:

Platforms tested:
sol 2.8, linux 2.4, aix 5.1(32-bit and 64-bit)

Misc. update:
2005-08-31 17:08:21 -05:00
Quincey Koziol
6b45f5172c [svn-r11245] Purpose:
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
2005-08-13 15:53:35 -05:00
MuQun Yang
affa4e9bff [svn-r10677] Purpose:
Add some comments for H5Pset_scaleoffset.

Description:

Solution:

Platforms tested:
No need to test.

Misc. update:
2005-04-27 10:19:31 -05:00
Xiaowen Wu
0af6a38a3f [svn-r10671] Purpose:
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:
2005-04-26 15:22:22 -05:00
Quincey Koziol
af6276f654 [svn-r10628] Purpose:
Code cleanup

Description:
    Clean up various warnings reported by the Windows team.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-04-18 16:21:35 -05:00
Xiaowen Wu
0e5ae5c4ba [svn-r10396] Purpose:
Minor modification.

Description:
    Remove some redundant codes.

Solution:

Platforms tested:
    heping

Misc. update:
2005-03-23 22:02:15 -05:00
Xiaowen Wu
92173d4496 [svn-r10024] Purpose:
New feature.

Description:
    Add H5Zset_scaleoffset function for setting up the scaleoffset filter.

Solution:

Platforms tested:
    heping, copper, arabica

Misc. update:
2005-02-16 21:59:12 -05:00
Elena Pourmal
c1df1b3ea4 [svn-r9857] Purpose: Maintenance
Description: Removed PABLO from the source

Solution:

Platforms tested: arabica with 64-bit, copper with parallel,
                  heping with GNU C and C++ and PGI fortran (but
                  I disabled hl, there is some weird problem only
                  on heping: F9XMODFLAG is not
                  propagated to the Makefile files

Misc. update:
2005-01-21 20:16:57 -05:00
MuQun Yang
ad633eafcc [svn-r9758] Purpose:
Adding framework of N-bit filter

Description:
N-bit filter is required for NetCDF project.
To add N-bit filter, configure.in configure, Makefile.in under src and other
filter-related source code needs to be updated.
Currently, N-bit tests are turned off from the library. So the change will affect daily test.

Solution:

Platforms tested:
sol 2.7, linux 2.4, aix 5.1

Misc. update:
2005-01-06 14:04:15 -05:00
Quincey Koziol
427ff7da28 [svn-r9727] Purpose:
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:
2004-12-29 09:26:20 -05:00
Quincey Koziol
0535c9b048 [svn-r9563] Purpose:
Code optimization

Description:
    Change how default allocation time is handled internally to the library,
to avoid some performance issues with property lists.

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel
    Solaris 2.7 (arabica)
    Too minor to require h5committest
2004-11-23 14:48:10 -05:00
John Mainzer
c49dd7fa36 [svn-r8791] Purpose: Rewrote metadata cache (H5AC.c, etc.) to improve performance.
Description:

Replaced the old metadata cache with a cache with a modified LRU
replacement policy.  This should improve the hit rate.

Solution:

Since we want to flush cache entries in increasing address order, I
used the threaded binary B-tree code to store the cache entries.
There is a fair bit of overhead here, so we may want to consider
other options.

While the code is designed to allow the support of other replacement
algorithms, at present, only a modified version of LRU is supported.

The modified LRU algorithm requires that a user selectable portion
of the cache entries be clean.  The clean entries are evicted first
when writes are not permitted.  If the pool of clean entries is used
up, the cache grows beyond its user specified maximum size.  The
cache can also exceed its maximum size if the combined size of the
protected (or locked) entries exceeds the maximum size of the cache.


Platforms tested:

eirene (serial, parallel, fp), h5committested


Misc. update:
2004-07-02 14:35:04 -05:00
Quincey Koziol
e5e786f589 [svn-r8782] Purpose:
Code cleanup

Description:
    Clean up almost all warnings from Windows builds.

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel
    Too minor to require h5committest
2004-07-01 15:02:47 -05:00
James Laird
eab58732d8 [svn-r8781]
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:
2004-07-01 12:38:04 -05:00
Quincey Koziol
b51c4f6d24 [svn-r8760] Purpose:
Code cleanup & small bug fix

Description:
    Regenerate dependency files

    Add htri_t as separate type from hbool_t for code tracing purposes.

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel
    too minor to require h5committest
2004-06-29 16:03:33 -05:00
Quincey Koziol
7c3df64cc4 [svn-r8731] Purpose:
Code cleanup & minor optimization

Description:
    Re-work the way interface initialization routines are specified in the
library to avoid the overhead of checking for them in routines where there is
no interface initialization routine.  This cleans up warnings with gcc 3.4,
reduces the library binary size a bit (about 2-3%) and should speedup the
library's execution slightly.

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/gcc34
    h5committest
2004-06-23 10:36:35 -05:00
Quincey Koziol
ef01629bb2 [svn-r8683] Purpose:
Code optimization

Description:
    Use 'size_t' instead of 'hsize_t' to track the number of elements in
memory buffers, especially for type conversion.

Platforms tested:
    Solaris 2.7 (arabica)
    FreeBSD 4.10 (sleipnir) w/parallel
    Too minor to require h5committest
2004-06-14 14:32:02 -05:00
HDF Admin
95da7ce5c4 [svn-r8620] Snapshot version 1.7 release 27 2004-06-06 03:27:17 -05:00
Quincey Koziol
1ec351813b [svn-r8600] Purpose:
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
2004-05-31 14:59:59 -05:00
Quincey Koziol
2ce06c3912 [svn-r8590] Purpose:
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
2004-05-27 15:24:08 -05:00
Quincey Koziol
0a29514b9d [svn-r8383] Purpose:
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
2004-04-17 23:10:09 -05:00
Quincey Koziol
d8cfeadd90 [svn-r8158] Purpose:
Code cleanup/optimization

Description:
    Query property list values once, at the beginning of the I/O routines,
instead of querying the property list values multiple (lots!) of times in
lower level routines.

Solution:
    Create "property list caches" for internal library queries of the property
list values.

Platforms tested:
    IBM p690 (copper) w/parallel & fphdf5
    h5committest
2004-02-06 10:34:01 -05:00
Pedro Vicente Nunes
78fb916259 [svn-r8149]
Purpose:
replaced name of delete filter with remove filter for the new function H5Premove_filter

Description:

Solution:

Platforms tested:
linux

Misc. update:
2004-02-04 14:36:12 -05:00
Quincey Koziol
61a451f89e [svn-r8117] Purpose:
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
2004-01-27 15:39:20 -05:00
Pedro Vicente Nunes
afc3563b76 [svn-r8113] Purpose:
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:
2004-01-26 18:20:20 -05:00
HDF Admin
43163efc35 [svn-r8077] Snapshot version 1.7 release 16 2004-01-18 03:24:00 -05:00
Quincey Koziol
00edaf52c5 [svn-r8053] Purpose:
Bug fix

Description:
    Correct two problems with variable-length datatypes in datasets:
        - When overwriting an entire dataset, writing the fill value to the
            file would be skipped, causing problems for VL datatypes when
            objects in the file had been unlinked (and thus the space in the
            file was not all zeros)
        - When an application has set a fill-value for a dataset and the
            dataset's datatype contained a VL datatype, the library was filling
            space on disk with the memory form of the VL information, instead
            of the disk form.


Platforms tested:
    FreeBSD 4.9 (sleipnir)
    h5committest
2004-01-13 13:00:59 -05:00
HDF Admin
f151f5a2a5 [svn-r8051] Snapshot version 1.7 release 15 2004-01-11 03:19:32 -05:00
Quincey Koziol
feaa5bb9d5 [svn-r8038] Purpose:
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
2004-01-08 09:55:11 -05:00
Quincey Koziol
14f7f3e53d [svn-r7453] Purpose:
Checkpoint file format spec.

Description:
    Clarifications and cleanups related to file format review.
2003-09-10 10:31:11 -05:00
Quincey Koziol
70db25c561 [svn-r7126] Purpose:
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
2003-06-30 14:47:40 -05:00
Quincey Koziol
b8632ce735 [svn-r7029] Purpose:
New feature/Bug fix

Description:
    Add new fill time value - H5D_FILL_TIME_IFSET which writes the fill value
to a dataset if the user has defined one, otherwise not writing the fill value
to the dataset.

Platforms tested:
    FreeBSD 4.8 (sleipnir) serial & parallel
    h5committest
2003-06-11 22:40:34 -05:00
Quincey Koziol
16b13faaac [svn-r6898] Purpose:
Code cleanup

Description:
    Improve error reporting for pixels per scanline check.

Platforms tested:
    FreeBSD 4.8 (sleipnir)
    h5committest not needed.
2003-05-19 14:18:17 -05:00
Quincey Koziol
390f1d0284 [svn-r6837] Purpose:
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
2003-05-08 15:09:07 -05:00