Commit Graph

172 Commits

Author SHA1 Message Date
Mohamad Chaarawi
bd66cdd5d6 [svn-r25468] some code refactoring to align trunk with VOL branch.
tested with h5committest.
2014-07-22 14:54:51 -05:00
Quincey Koziol
95e0006dc2 [svn-r25097] Description:
Make progress toward moving from DXPL IDs to property list structures
within the library.  Also move the signature location code from the H5F
package to the H5FD package, where it's a better fit.  Also, clean up some
more compiler warnings along the way.

Tested on:
    Mac OSX/64 10.9.2 (amazon) w/C++, FORTRAN & parallel
    (h5committest forthcoming)
2014-04-25 09:32:17 -05:00
Quincey Koziol
3bdb116942 [svn-r25092] Description:
More migration to using H5F_io_info_t pointers and away from using
property list IDs internally.  Also, clean up some compiler warnings in the
cache code.

Tested on:
    Mac OSX/64 10.9.2 (amazon) w/C++, FORTRAN & parallel
    (h5committest forthcoming)
2014-04-24 11:30:24 -05:00
Quincey Koziol
cd973218bf [svn-r25088] Description:
Introduce "file I/O info" struct, to hold file & dxpl pointers, and start
propagating up through library.

Tested on:
    Mac OSX/64 10.9.2 (amazon) w/C++, FORTRAN & parallel
    (h5committest coming)
2014-04-23 14:10:11 -05:00
Quincey Koziol
3de25ee226 [svn-r24998] Description:
Check in Neil's changes for correctly handling case where library is
reinitialized through a deprecated routine.

Tested on:
    Linux 2.4.x/32 (jam)
2014-04-09 00:08:21 -05:00
Quincey Koziol
0a506a625b [svn-r24476] Description:
Remove duplicate "intent" flags from top & shared file structures, leaving
    them only in the shared file structure.

Tested on:
    Mac OSX/64 10.9.0 (amazon) w/gcc 4.8, both parallel & serial
    (too minor to require h5committest)
2013-11-30 00:51:42 -05:00
Neil Fortner
a80cf34324 [svn-r24140] Purpose: Remove problematic abandonment of error stack
Description:
H5Fis_hdf5 uses H5F_locate_signature to check if the file is hdf5.  If it does
not locate the signature, H5F_locate_signature would issue an error and return
HADDR_UNDEF.  H5Fis_hdf5 does not consider it an error if the signature is not
found, so it does not issue an error or clear the stack.  The filled stack could
then cause issues later on.

Changed H5F_locate_signature to return herr_t, not issue an error if the
signature is not found, and added a parameter for a pointer to the signature
address that the function fills in.

Tested: jam, koala, ostrich (h5committest)
2013-09-13 17:03:22 -05:00
Mohamad Chaarawi
a3e0aecb22 [svn-r24087] Rename the private H5RC (reference count) module to H5UC (Use Count).
This is needed to avoid a conflict with the Read Context object to be
introduced in another Project.

No impact on users, since this is a private module, and low for
developers as the RC module use is very sparse in the library.

Tested with h5committest.
2013-08-30 12:05:42 -05:00
Quincey Koziol
424a41f878 [svn-r23713] Description:
Clean up warnings, switch library code to use Standard C/POSIX wrapper
macros, remove internal calls to API routines, update checkapi and checkposix
scripts.

Tested on:
    Mac OSX/64 10.8.3 (amazon) w/C++ & FORTRAN
    Big-Endian Linux/64 (ostrich)
2013-05-21 12:30:54 -05:00
Quincey Koziol
08bb610547 [svn-r21133] Description:
More code cleanups to reduce coupling between packages that use the H5F
internal routines, but really aren't part of the H5F "package".

Tested on:
    FreeBSD/32 8.2 (loyalty) w/gcc4.6, w/C++ & FORTRAN, in debug mode
    FreeBSD/64 8.2 (freedom) w/gcc4.6, w/C++ & FORTRAN, in debug mode
    Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
        w/C++ & FORTRAN, w/threadsafe, in debug mode
    Linux/64-amd64 2.6 (koala) w/Intel compilers, w/default API=1.6.x,
        w/C++ & FORTRAN, in production mode
    Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
        w/szip filter, w/threadsafe, in production mode
    Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
    Mac OS X/32 10.6.8 (amazon) in debug mode
2011-07-20 16:47:15 -05:00
Quincey Koziol
c956c2f03b [svn-r20219] Description:
Tell the VFL flush call that the file will be closing, allowing
the VFDs to avoid sync'ing the file (particularly valuable in parallel).

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, w/threadsafe, in production mode
        Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
2011-03-09 21:56:55 -05:00
Neil Fortner
0863d30372 [svn-r20064] Purpose: Implement external file cache
Description:
Implements a cache of files opened through external links.  Adds the public
functions H5Pset_elink_file_cache_size(), H5Pget_elink_file_cache_size(), and
H5Frelease_file_cache().

Tested: jam, amani, heiwa (h5committest), fedora 64.
2011-02-08 12:32:56 -05:00
Mike McGreevy
c002883bcc [svn-r19617] Purpose:
Merge accum_tests branch back to the trunk.
Description:
    Changes consist of addition of tests for H5Faccum.c source code,
    as well as some fixes that address some discovered bugs in the
    metadata accumulator on several corner cases.
Tested:
    h5committested
2010-10-15 14:16:41 -05:00
Quincey Koziol
d99e23638b [svn-r19587] Description:
Address issue with object headers being created getting evicted from
the metadata cache cache before they are completely initialized.  This is
done by pinning the object header in the cache until it is completely
initialized and attached to a group.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, w/threadsafe, in production mode
        Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
        Mac OS X/32 10.6.4 (amazon) in debug mode
        Mac OS X/32 10.6.4 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
        Mac OS X/32 10.6.4 (amazon) w/parallel, in debug mode
2010-10-13 10:42:01 -05:00
Quincey Koziol
ee251b8395 [svn-r19247] Description:
Bring r19246 from Coverity branch to trunk:

    Improve metadata "accumulator" for files to track the dirty region within
the accumulator data.  This allows the accumulator to drop clean data and
reduces the number of I/O operations when it is dirtied.

    This is progress toward Bz#1142 - speeding up the fheap test (which it
doesn't help much, actually, but it does help other aspects of file I/O).

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, w/threadsafe, in production mode
        Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
        Mac OS X/32 10.6.4 (amazon) in debug mode
        Mac OS X/32 10.6.4 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
        Mac OS X/32 10.6.4 (amazon) w/parallel, in debug mode
2010-08-17 08:08:34 -05:00
Quincey Koziol
74c8b68aca [svn-r18702] Description:
Bring r18672 from metadata journaling "merging" branch to trunk:

	Mostly changes to move to only using one 'user data' parameter for
calls to H5AC_protect(), along with some minor reformatting code cleanups.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.6.3 (amazon) in debug mode
        Mac OS X/32 10.6.3 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
2010-05-05 08:39:56 -05:00
Quincey Koziol
c2550f3454 [svn-r18505] Description:
Move code to free superblock data structure into separate routine, in
preparation for upcoming metadata journaling -> trunk merging.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.6.3 (amazon) in debug mode
2010-04-02 00:28:33 -05:00
Quincey Koziol
ff1c084a4f [svn-r18502] Description:
Bring r18501 from metadata journaling "merging" branch to trunk:

	Extract data structure 'destroy' routines from metadata cache client
'destroy' callbacks.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
2010-04-01 23:33:11 -05:00
Quincey Koziol
483185409e [svn-r18357] Description:
Bring r18356 from metadata journaling merge branch to trunk:

	Converge metadata journaling branch with trunk with a bunch of v1 B-tree
changes:
       - Remove H5ACprivate.h header from H5Bprivate.h header
       - Revise v1 B-tree client callbacks
       - Get rid of H5B_serialize() by bringing it into H5B_flush()

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
2010-03-02 15:07:10 -05:00
Quincey Koziol
1bc79f977b [svn-r17939] Description:
Handle external links from symlinked files by adding another check to
look for "child" files for links from the actual location of the "parent" file,
instead of from the location of the symlink.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.6.2 (amazon) in debug mode
        Mac OS X/32 10.6.2 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
2009-12-01 08:39:05 -05:00
Quincey Koziol
b56de1ddcc [svn-r17885] Decription:
Convert 'huge' fractal heap object management code to use refactored
v2 B-tree routines.

	Also, switch internal representation of 'sizeof_addr' and 'sizeof_size'
in files to be uint8_t's instead of size_t's, since they are stored in single
bytes in the file format.

	Various other minor compiler warning cleanups and error call tweaks.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.6.2 (amazon) in debug mode
        Mac OS X/32 10.6.2 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
2009-11-13 18:37:10 -05:00
Quincey Koziol
37ec6dc75e [svn-r17582] Description:
Bring changes from file free space branch back to the trunk.  *yay!*

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.5.8 (amazon) in debug mode
        Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
2009-10-01 21:08:59 -05:00
Quincey Koziol
f4d4d427b2 [svn-r17461] Description:
Fix a few more problems when the user block is not aligned properly.

Tested on:
    FreeBSD/32 6.3 (duty) in debug mode
    FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
    Linux/32 2.6 (jam) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
        in debug mode
    Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
        w/C++ & FORTRAN, in production mode
    Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
        w/szip filter, in production mode
    Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
        in production mode
    Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
    Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
    Mac OS X/32 10.5.8 (amazon) in debug mode
    Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
2009-09-10 14:02:40 -05:00
Quincey Koziol
deaa1adff8 [svn-r17414] Description:
Flush the core VFD's buffer before closing the file, also flush the
metadata accumulator before reseting it.  Write the driver info message out
in the superblock flush routine more directly, instead of using wrapper
routine, since the wrapper routine won't work when the superblock is being
shutdown.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode, w/check-vfd
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode, w/check-vfd
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode, w/check-vfd
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode, w/check-vfd
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode, w/check-vfd
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode, w/check-vfd
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode, w/check-vfd
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode, w/check-vfd
        Mac OS X/32 10.5.8 (amazon) in debug mode, w/check-vfd
        Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode, w/check-vfd
2009-08-24 13:13:20 -05:00
Quincey Koziol
e3f4e81b5f [svn-r17413] Description:
Remove vestigial intermediate routine for flushing file and move it
into API routine.  Also, remove private, unused (now) 'H5F_FLUSH_DOWN' symbol
from public header file.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.5.8 (amazon) in debug mode
        Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
2009-08-24 10:07:17 -05:00
Quincey Koziol
1a3c594abf [svn-r17412] Description:
Seperate 'flush' functionality from 'destroy' functionality at the
H5F level also.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.5.8 (amazon) in debug mode
        Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
2009-08-23 20:45:16 -05:00
Quincey Koziol
02775c2349 [svn-r17408] Description:
Move flush operation on mounted file hierarchy into H5Fmount module.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.5.8 (amazon) in debug mode
        Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
2009-08-21 17:25:13 -05:00
Quincey Koziol
75faf535a3 [svn-r17393] Description:
Bring back more changes from the file free space branch to the trunk.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.5.8 (amazon) in debug mode
        Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
2009-08-20 13:45:55 -05:00
Quincey Koziol
173083e1a5 [svn-r17365] Description:
Final merge of changes from sblock_mdc branch back to trunk.  The superblock is now managed by the metadata cache.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.5.8 (amazon) in debug mode
        Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
2009-08-15 01:26:08 -05:00
Quincey Koziol
a9032b25ba [svn-r17341] Description:
Tweaks to comments, to better align with changes on sblock_mdc branch

Tested on:
	Just eyeballed, only tweaks to comments
2009-08-11 23:06:18 -05:00
Quincey Koziol
7dc66a5685 [svn-r17336] Description:
Bring more changes from the file_free_space branch into the trunk.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.5.8 (amazon) in debug mode
        Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
2009-08-11 20:39:05 -05:00
Quincey Koziol
47e4e67e3c [svn-r17146] Description:
Bring a bunch of misc. improvements & tweaks from the revise_chunks
branch back to the trunk, so that future merges won't be so painful.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.5.7 (amazon) in debug mode
        Mac OS X/32 10.5.7 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
2009-07-02 16:10:35 -05:00
Quincey Koziol
8e14272cdb [svn-r17138] Description:
Disable use of temporary file space allocation when using a parallel VFD,
until we've made changes to broadcast the new address of the metadata when it
is relocated down into 'normal' file space.

Tested on:
    FreeBSD/32 6.3 (duty) in debug mode
    FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
    Linux/32 2.6 (jam) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
        in debug mode
    Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
        w/C++ & FORTRAN, in production mode
    Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
        w/szip filter, in production mode
    Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
        in production mode
    Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
    Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
    Mac OS X/32 10.5.8 (amazon) in debug mode
    Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
2009-07-01 16:01:14 -05:00
Quincey Koziol
19e0ec17dd [svn-r17029] Description:
Adjust 'temporary' file space code to always be within the file's
address space, even when the file uses 32-bit addresses.  (It's not really
necessary to be within the file's address space, since objects with temporary
addresses can't be written to the file, but it can't really hurt and it makes
the testing easier)

Tested on:
        Linux/32 2.6 (jam) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode and with 'make check-vfd'
2009-06-10 22:28:57 -05:00
Quincey Koziol
4fa1b3c1aa [svn-r17017] Description:
Rework the "proxy address" code to be more general and implement a better
"temporary address" feature, that will allow for metadata allocations to be
deferred to when the metadata is actually flushed to the file.

Tested on:
    FreeBSD/32 6.3 (duty) in debug mode
    FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
    Linux/32 2.6 (jam) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
        in debug mode
    Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
        w/C++ & FORTRAN, in production mode
    Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
        w/szip filter, in production mode
    Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
        in production mode
    Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
    Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
    Mac OS X/32 10.5.7 (amazon) in debug mode
    Mac OS X/32 10.5.7 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
2009-06-08 18:16:19 -05:00
Quincey Koziol
607ccd8e85 [svn-r17010] Description:
Bring file addres proxy additions from r16985 on the revise_chunks branch
back into the trunk, for use in allowing fractal heap direct blocks to defer
their allocation in the file.

Tested on:
    Mac OS X/32 10.5.7 (amazon) debug & production
    too minor to require h5committest
2009-06-04 18:36:31 -05:00
Neil Fortner
c1c58f79a8 [svn-r16710] Purpose: Fix bug 1423
Description:
Versions of the library between 1.3.0 and 1.6.3 have a bug which prevents them
from opening any file that does not have the root group's symbol table
information cached in the root group's entry in the superblock.  Prior to 1.8
this was not an issue as this information was always cached.  However, 1.8.0
stopped writing this information (which is not required by the file format
specification), and these older versions can therefore not read files created or
last written by versions 1.8.0 to 1.8.2.  This fix modifies the library to once
again add this information to the superblock (when using the old file format).

Tested: jam, linew, smirom (h5committest)
2009-04-08 16:53:31 -05:00
Raymond Lu
b6312126e5 [svn-r16611] In previous checkin (r16609), the flag "write_driver" wasn't necessary as Quincey pointed out.
I took it out and used the driver address instead.

Tested on jam - simple change.
2009-03-25 13:21:09 -05:00
Raymond Lu
ffd0fddad2 [svn-r16609] Bug fix (#1161): When a family file created with v1.6 library is opened and closed with
v1.8 library, v1.8 library writes the driver info block in the superblock.  But v1.6
doesn't write it.  This caused the data after the superblock to be overwritten.  The
solution is to use a flag to indicate when the original file doesn't have the driver
info, v1.8 library doesn't write it either.

Tested on jam.  I have some trouble to access smirom and linew using h5committest.
2009-03-24 17:06:07 -05:00
Neil Fortner
849d015bbd [svn-r16594] Purpose: fix bug 1189
Description:
Some files apparently exist in the wild which have corrupt symbol table messages
on the root group.  These files can be opened by 1.6 (which uses the cached
information in the superblock) but not by 1.8.  This patch fixes 1.8 and 1.9 so
they can now open these files, and will correct them if necessary.  Also fix
some potential (rare) problems with array datatype versions.

Tested: jam (parallel; h5committest not working on linew or smirom)
2009-03-23 13:51:29 -05:00
Neil Fortner
fd2285f7bc [svn-r16062] Purpose: Allow per-dataset rdcc configuration
Description: Adds 3 new public functions: H5Pset_chunk_cache,
H5Pget_chunk_cache, and H5Dget_access_list.  First implementation of dataset
access properties.  See RFC_chunk_cache_functions for details.

Tested: kagiso, linew, smirom (h5committest)
2008-11-12 13:07:51 -05:00
Quincey Koziol
9f60f016ab [svn-r15800] Description:
Bring file free space branch changes through r15795 into trunk, which
includes a fair bit of code cleanup & rearrangement along with a couple of
bug fixes also.

Tested on:
        Mac OS X/32 10.5.5 (amazon) in debug mode
        Mac OS X/32 10.5.5 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
2008-10-06 23:17:35 -05:00
Neil Fortner
e980307ed9 [svn-r15451] Purpose: Fix various problems that were occurring when using mounted files.
Description:
Moved mount table from top file structure to shared file structure.  Moved
parent out of mount table and back into top file structure.  Mounted files can
now be accessed from any handle of the parent file.  Changes to how files are
closed.  Stricter cycle checking on mounted files.  Removed unused function
H5F_has_mount().

Tested:
committest in 1.8 branch.  Committing now due to the urgency of the fix.  No
changes here are specific to the trunk, but I will keep an eye on the daily
tests.
2008-08-07 16:49:05 -05:00
Scot Breitenfeld
aec106e324 [svn-r14903] Undoing change committed in r14902. 2008-04-30 14:51:13 -05:00
Scot Breitenfeld
5773fd34bc [svn-r14902] Merged fortran_1_8 branch changes r14505:14901 into the trunk. New fortran wrappers added. 2008-04-30 14:23:26 -05:00
Vailin Choi
04c174bde0 [svn-r14789] Add handling for external link:
1. src/H5F.c, src/H5system.c: formulate path for mainfile
2. src/H5Lexternal.c: add search for target file
3. configure.in: add H5_HAVE_WINDOW_PATH
4. test/links.c: add tests for external link
2008-04-02 13:29:17 -05:00
Quincey Koziol
1831bc1d13 [svn-r14372] Description:
Further cleanups & simplifications to prepare for next phase of work.

Tested on:
	FreeBSD/32 6.2 (duty)
	Mac OS X/32 10.5.1 (amazon)
2008-01-03 18:05:04 -05:00
Quincey Koziol
4be636f4f0 [svn-r13984] Description:
Various code cleanups and refactor recent changes for h5stat to fit
into the existing library data structures better.

Tested on:
	Mac OS X/32 10.4.10 (amazon)
	FreeBSD/32 6.2 (duty)
	Linux/32 2.6 (chicago)
	Linux/64 2.6 (chicago2)
2007-07-17 14:35:09 -05:00
Vailin Choi
d44b27ddcc [svn-r13978] purpose:
New feature.

Description:
Added routines to report on the amount of storage for:
1) 1.6 btree and heap storage info for groups
2) 1.8 btree, fractal heap storage info for groups, attributes and SOHM table
3) btree storage for chunked datasets
4) 1.8 superblock extension size.

Platform tested:
h5committested.
2007-07-13 16:12:25 -05:00
Quincey Koziol
48f022a701 [svn-r13495] Description:
Cleanup handling of file consistency/status flags a bit.

Tested on:
	FreeBSD/32 6.2 (duty)
2007-03-10 21:00:48 -05:00