summaryrefslogtreecommitdiffstats
path: root/src/H5Tcommit.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r21919] Description:Quincey Koziol2012-02-091-13/+13
| | | | | | | | Refactor function name macros and simplify the FUNC_ENTER macros, to clear away the cruft and prepare for further cleanups. Tested on: Mac OSX/64 10.7.3 (amazon) w/debug, production & parallel
* [svn-r21917] Description:Quincey Koziol2012-02-081-1/+1
| | | | | | | | | | Bring [spirit of] r20393 from coverity branch back to trunk: Move initialization ocrt_info.new_obj = NULL; before FUNC_ENTER_NOAPI -- gh Tested on: Mac OS X/64 10.7.3 (amazon) w/debug, production & parallel (too minor to require h5commitest)
* [svn-r20539] Description:Quincey Koziol2011-04-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bring Coverity changes back to trunk: r20276: Add recursive is vlen string function. Cleanup resource leaks for issues: 200,202,329,688,811,812 r20277: Check types and close by adding error section: issue 687 r20278: Replaced implicit pointer conversion with (ocrt_info.new_obj != NULL). r20280: Addressed coverity issues 927-929 & 583. The real issue is failure to check file name length -- at least at the H5FD interface level. This needs more work, but at least I have dealt with the issue in H5FDfamily.c r20337: H5O_type_t obj_type = H5O_TYPE_UNKNOWN; r20338: Added udata.name = NULL; to prevent potential uninitialized use after done: label. r20339: coverity issues: 686,828,1670-1673,1707-1711 Tested on: FreeBSD/32 6.3 (duty) in debug mode FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode FreeBSD/32 8.2 (loyalty) w/gcc4.6, in debug mode FreeBSD/64 8.2 (freedom) w/gcc4.6, 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
* [svn-r19587] Description:Quincey Koziol2010-10-131-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | 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
* [svn-r19398] Descriptino:Quincey Koziol2010-09-161-1/+2
| | | | | | | | | | | | | | | | | | | | | | | Clean up the internal usage H5I_dec_ref() to eliminate the sequence of flags that has been creeping in. 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
* [svn-r19363] When mandatory filter failed to write data chunks, the datasetRaymond Lu2010-09-091-1/+1
| | | | | | | couldn't close (bug 1260). The fix releases all resources and closes the dataset but returns a failure. Tested with h5committest - jam, heiwa, amani.
* [svn-r18460] Description:Quincey Koziol2010-03-261-1/+1
| | | | | | | | | | | | | | | | | | | Fold metadata journaling changes into the trunk: mostly tweaky small stuff, also removed the H5F_t* field from the H5G_entry_t struct. 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
* [svn-r18357] Description:Quincey Koziol2010-03-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | 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
* [svn-r18031] Description:Quincey Koziol2009-12-171-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bring r18030 from merge_metadata_journaling branch to trunk: Bring "brush clearing" changes (whitespace & style issues, mostly) from metadata_journaling branch to the "merging" branch, to converge the trunk and the metadata_journaling branch. Also, some other minor cleanups along the way. 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
* | [svn-r17755] Purpose: Fix assertion failure caused by H5Tcommit1/2Neil Fortner2009-10-271-4/+4
| | | | | | | | | | | | | | | | | | Description: Calling H5Tcommit_anon on a file with read only access would cause an assertion failure. Added a check to H5T_commit to return a failure in this case. Removed redundant check in H5T_commit_named. Tested: Fedora 11 (very minor change)
* | [svn-r17751] Purpose: Fix assertion failure caused by H5Tcommit1/2Neil Fortner2009-10-271-0/+4
| | | | | | | | | | | | | | | | | | Description: Calling H5Tcommit1 or H5Tcommit2 on a file with read only access would cause an assertion failure. Added a check to H5T_commit_named to return a failure in this case. Also a minor fix in the link_filters test. Tested: Fedora 11 (very minor change)
* | [svn-r17177] In H5Odtype.c, the decoding function used to mark the datatype ↵Raymond Lu2009-07-131-0/+4
| | | | | | | | | | | | | | | | | | | | as on disk (see bug #1585). I changed it to undefined and let the caller functions decide the location of the datatype. For H5Tdecode, it should mark the datatype as in memory. For other callers like H5Dopen or H5Aopen, they should makr it as on disk. Tested it on jam, smirom, linew.
* | [svn-r15609] Description:Quincey Koziol2008-09-101-27/+77
| | | | | | | | | | | | | | | | Omnibus compiler warning cleanup & some reformatting also. Tested on: Mac OS X/32 10.5.4 (amazon) Too minor to require h5committest
* | [svn-r15485] Purpose: Allow library to shut down properly when objects have ↵Neil Fortner2008-08-191-3/+3
|/ | | | | | | | | | | | | | | | reference count > 1. Description: Added a new field 'app_count' to H5I_id_info_t struct, to track the reference count on an id due to the application. the old 'count' field tracks the total. Generally any id visible to the application gets placed in app_count. Added app_ref boolean parameter to H5I_inc_ref, H5I_dec_ref, H5I_register, H5I_clear_type, and a few other functions, to specify whether the operation(s) being performed on the id(s) are due to the application (TRUE) or not (FALSE). Test added for this case. Tested: kagiso, smirom, linew (h5committest)
* [svn-r14228] Description:Quincey Koziol2007-11-011-1/+1
| | | | | | | | | | | | | | | | | Change H5Llink to H5Olink, which makes more sense. Tested on: FreeBSD/32 6.2 (duty) in debug mode FreeBSD/64 6.2 (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/default API=1.6.x, w/C++ & FORTRAN, in production mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode Mac OS X/32 10.4.10 (amazon) in debug mode
* [svn-r14212] Description:Quincey Koziol2007-10-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | Make H5Tarray_create() and H5Tget_array_dims() versioned, and drop the "perm" parameter from the '2' versions. Shift internal library usage to '2' versions. Add simple regression tests for '1' versions. Tested on: FreeBSD/32 6.2 (duty) in debug mode FreeBSD/64 6.2 (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/default API=1.6.x, w/C++ & FORTRAN, in production mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode Mac OS X/32 10.4.10 (amazon) in debug mode
* [svn-r14004] Description:Quincey Koziol2007-07-241-0/+5
| | | | | | | | | | | | Fix problem with datatype messages where the version of the format for a datatype message could depend on the "use the latest format" flag from the file after it was initially created. Tested on: FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty) Linux/32 2.6 (kagiso) Mac OS X/32 10.4.10 (amazon)
* [svn-r13814] Description:Quincey Koziol2007-05-291-2/+2
| | | | | | | | | | | | | | Change back to clearing memory buffers by default, but give users option to disable this, for performance reasons (--disable-clear-file-buffers). Also, add configure option (--enable-using-memchecker) to conveniently control making the library "play nice" with memory checking tools like valgrind and purify. Tested on: Mac OS X/32 10.4.9 (amazon) FreeBSD/32 6.2 (duty) Linux/32 2.6 (kagiso)
* [svn-r13753] Description:Quincey Koziol2007-05-141-35/+62
| | | | | | | | | | | | | Check in "unique, but sharable" optimization to ISOHM code, which allows object header messages that are only used in one object to remain in the sole user's header, but migrates messages that are used in more than one header into the ISOHM heap. Tested on: Mac OS X/32 10.4.9 (amazon) FreeBSD/32 6.2 (duty) Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13682] Description:Quincey Koziol2007-04-181-0/+1
| | | | Run bin/reconfigure to update infrastructure files/information.
* [svn-r13636] Description:Quincey Koziol2007-04-111-159/+123
| | | | | | | | | | | | | | Change H5[D|G|T]<foo>_expand() "temporary" API routines to H5[D|G|T]<foo>2() "versioned" routines. Also added H5[D|G|T](create|commit)_anon() routines to continue to allow "anonymous" objects to be created in a file. Tested on: Mac OS X/32 10.4.9 (amazon) FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty) Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13477] Description:Quincey Koziol2007-03-081-1/+1
| | | | | | | | | | | | | | | | | | | | The main purpose of this checkin was to eliminate the space used for tracking creation time indices when there is no way they can be used (i.e. attributes can't be shared in the file and the user hasn't turned on attribute creation tracking), however there were some other minor changes which crept in: - Fix a cache locking deadlock when a shared attribute and one of its components end up in the same fractal heap direct block. (This is fixed the "slow" way for right now, until John has time to add support for readers/writer locking to the cache. - Optimize attribute copying when a copy will be kept during a v2 B-tree search. - When freeing a block on disk, attempt to merge it with the metadata and "small data" aggregators. Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 6.2 (duty)
* [svn-r13475] There's a configure issue linking szip's shared libraries when ↵Mike McGreevy2007-03-081-3/+3
| | | | | | | | | | | | 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.
* [svn-r13353] Description:Quincey Koziol2007-02-201-3/+3
| | | | | | | | | | | | Checkpoint progress on H5Aiterate2(). Mark H5Aiterate() as deprecated. Various code cleanups. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13253] Updated all C and C++ style source code files with the THG ↵Albert Cheng2007-02-071-2/+3
| | | | | | | | | 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.
* [svn-r13240] Description:Quincey Koziol2007-02-051-1/+1
| | | | | | | | | | More cleanups on the object header message handling code, to make it easier to work with and move forward on the creation order coding. Various other minor cleanups & warning fixes. Tested on: FreeBSD/32 6.2 (duty)
* [svn-r13143] Refactoring.James Laird2007-01-161-9/+6
| | | | | | | | | | | | | | Added can_share callback for OH messages. This determines whether the message is allowed to be shared in the heap (committed and immutable datatypes can't be). Fixed a bug in the dense attribute storage that tried to open the shared message heap when it hadn't been created yet. Made the test to extend shared dataspace messages a bit more robust. Refactored the code the searches a shared message list index to be a little more efficient. A few other minor changes. Tested on smirom, kagiso, Windows, and juniper.
* [svn-r13123] Description:Quincey Koziol2007-01-091-2/+2
| | | | | | | | | | | Fix object header message code to respect the "do not share" flag, so that committed datatypes used in attributes are handled properly. Add more tests for atttributes, checking that they handle shared attributes in compact & dense storage w/committed datatypes. Tested on: FreeBSD/32 6.1 (duty)
* [svn-r13121] Description:Quincey Koziol2007-01-081-2/+1
| | | | | | | | | | Add support & tests for using shared datatypes with shared & un-shared attributes. Involves some fairly icky code to make the "copy on write" paradigm for shared attributes work. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13068] Ran bin/reconfigure. Some of the scripts have been changed or ↵James Laird2006-12-181-6/+6
| | | | | | | | | 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.
* [svn-r13028] Description:Quincey Koziol2006-12-061-1/+1
| | | | | | | | | | | | | | | | | Add first pass of "dense" attribute storage to objects. Lots of parts of this are stubbed out, but all the tests are passing and I'll work on the corner cases soon. Eliminated several unused parameters from object header message callback routines. Other, miscellaneous code cleanups, etc. (and probably some things I've forgotten about... :-) Tested on: FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) AIX/32 5.? (copper)
* [svn-r13016] Description:Quincey Koziol2006-12-041-1/+1
| | | | | | | | | | | Finish moving object header message routines into their own source code module, along with renaming them to have "H5O_msg_" prefix... Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) AIX/32 5.? (copper)
* [svn-r13015] Description:Quincey Koziol2006-12-041-1/+1
| | | | | | | | | | | 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)
* [svn-r13012] Description:Quincey Koziol2006-12-031-1/+1
| | | | | | | | | | | | | | Refactor object header code to separate process of creating an object header message from the process of writing to an existing one. Start renaming operations that deal with object header messages to have "H5O_msg_" prefix... Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) AIX/32 5.? (copper)
* [svn-r12997] Description:Quincey Koziol2006-11-291-1/+1
| | | | | | | | | | Rename too generic "H5O_FLAG_<foo>" flags that are used as flags for header messages to "H5O_MSG_FLAG_<foo>", in order to make their use clearer. Tested on: FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) Linux/64 2.4 (mir)
* [svn-r12994] Description:Quincey Koziol2006-11-291-7/+76
| | | | | | | | | | | | | | | Propagate object creation properties up into group, dataset and named datatype property lists, when those property lists are retrieved for existing objects in a file. Also, add H5Tget_create_plist() API routine, to allow named datatype property lists to be retrieved for named datatypes. Tested on: FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) Linux/64 2.4 (mir) AIX/32 5.? (copper)
* [svn-r12963] Description:Quincey Koziol2006-11-211-5/+11
| | | | | | | | | | Refactor internal code that retrieves the object's type to use the new H5O_type_t (which only definitions for object types, instead of links as well) instead of the older H5G_obj_t (which included links, etc.) Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r12908] Description:Quincey Koziol2006-11-141-1/+1
| | | | | | | | | | Replace "//" style comment with "/* */" style comment to fix build on FreeBSD 4.11 (sleipnir) Tested on: FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) Linux/64 2.4 (mir)
* [svn-r12902] Checkin of Shared Object Header Message work.James Laird2006-11-131-24/+47
| | | | | | | | | | | | This feature is still in progress; Shared Object Header Messages are not complete as a feature and are not thoroughly tested. There are still "TODO" comments in the code (comments with the word "JAMES" in them, so as not to be confused with other TODO comments). Hopefully this checkin will reduce the liklihood of conflicts as I finish implementing this feature. All current tests pass on juniper, copper (parallel), heping, kagiso, and mir.
* [svn-r12708] Description:Quincey Koziol2006-10-031-15/+19
| | | | | | | | | | | | | | | | | | | Add the "use the latest version of the format" support to datatype messages. And a regression test to check that it's working. Also, found that we have been over-allocating space for compound datatype messages (when they have array datatypes or can use the latest version of the format) and trimmed the size back. Clean up datatype & dataspace encode/decode routines by having them allocate & release "fake" file structures, which gets them out of needing to "know" about the internals of file structures. Other minor whitespace/formatting cleanups, etc. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r12706] Description:Quincey Koziol2006-10-021-3/+3
| | | | | | | | | 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
* [svn-r12700] Alert:Quincey Koziol2006-10-021-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | File format is not stable, don't keep files produced! Description: First stage of checkins modifying the format of groups to support creation order. Implement "dense" storage for links in groups. Try to clarify some of the symbols for the H5L API. Add the H5Pset_latest_format() flag for FAPLs, to choose to use the newest file format options (including "dense" link storage in groups) Add the H5Pset_track_creation_order() flag for GCPLs, to enable creation order tracking in groups (although no index on creation order yet). Remove --enable-group-revision configure flag, as file format issues are now handled in a backwardly/forwardly compatible way. Clean up lots of compiler warnings and other minor formatting issues. Tested on: FreeBSD/32 4.11 (sleipnir) w/threadsafe Linux/32 2.4 (heping) w/FORTRAN & C++ Linux/64 2.4 (mir) w/enable-v1.6 compa Mac OSX/32 10.4.8 (amazon) AIX 5.3 (copper) w/parallel & FORTRAN
* [svn-r12596] Refactored how external files are opened and closed.James Laird2006-08-181-5/+22
| | | | | | | | Object header locations (H5O_loc_t's) can now "hold open" a file and decrement its open object count when they close. This means that locations (H5O_loc_t's and H5G_loc_t's) should always be freed. Added more thorough tests to ensure that external files are closed.
* [svn-r12528] Added User-Defined links to the library.James Laird2006-08-021-7/+86
| | | | | | | | | | | | | | Users can create external links using H5L_create_external(). These links point to an object in another HDF5 file. Users can alter the behavior of external links or create new kinds of links by registering callbacks using the H5L interface. Added tests, tools support, etc. Also a number of other, minor changes have been made (some restructuring of the H5L interface, for instance). Additional documentation and examples are forthcoming.
* [svn-r12461] Cleaned up the names of some internal API functions, cleaned up ↵starfire2006-07-101-1/+1
| | | | | | | | | comments, fixed a few tests that used incorrect names for H5L APIs (formerly hidden behind H5_GROUP_REVISION ifdefs Mostly cosmetic changes, tested on mir.
* [svn-r12452] Purpose:James Laird2006-07-051-27/+57
| | | | | | | | | | | | | | | | | | | | | | Feature Description: Revised Link APIs. Solution: New link APIs use H5L* H5*create_expand do not create links to the objects created; this must be done manually with H5Llink. Added APIs to link an object given its ID (H5Llink), to copy links (H5Lcopy), and changed creation APIs (H5Lcreate_hard and H5Lcreate_soft) and query API (H5Lget_linkinfo instead of H5Gget_objinfo). All old APIs are still supported in H5Gdeprec.c . Platforms tested: sol, mir, copper Misc. update: Forgot to update MANIFEST and release docs. Will do after checkin.
* [svn-r12221] Purpose:Quincey Koziol2006-04-101-1/+3
| | | | | | | | | | | | | | | "Hide" file format changes (for now) Description: Add ifdef's (controlled by the --enable-group-revision configure flag) to disable group revision changes to the file format, in order to allow alpha release to go ahead without releasing an unsupported version into the wild. Platforms tested: FreeBSD 4.11 (sleipnir) Linux 2.4 32-bit (heping) Linux 2.4 64-bit (mir) Solaris 2.9 (shanti)
* [svn-r11838] Purpose:Quincey Koziol2005-12-261-4/+14
| | | | | | | | | | | | | | | | Bug fix Description: Retrieving an object's name could fail (in various ways) under certain circumstances (mostly having to do with mounted files). Solution: Re-write & simplify "get object name" code to fix error in a better way than adding yet another hack to the previous pile of hacks... :-) Platforms tested: FreeBSD 4.11 (sleipnir) h5committest
* [svn-r11738] Purpose:James Laird2005-11-181-0/+1
| | | | | | | | | | | | | | | | | | | 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:
* [svn-r11712] Purpose:Quincey Koziol2005-11-151-78/+291
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | New feature Description: Check in baseline for compact group revisions, which radically revises the source code for managing groups and object headers. WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! This initiates the "unstable" phase of the 1.7.x branch, leading up to the 1.8.0 release. Please test this code, but do _NOT_ keep files created with it - the format will change again before the release and you will not be able to read your old files!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! Solution: There's too many changes to really describe them all, but some of them include: - Stop abusing the H5G_entry_t structure and split it into two separate structures for non-symbol table node use within the library: H5O_loc_t for object locations in a file and H5G_name_t to store the path to an opened object. H5G_entry_t is now only used for storing symbol table entries on disk. - Retire H5G_namei() in favor of a more general mechanism for traversing group paths and issuing callbacks on objects located. This gets us out of the business of hacking H5G_namei() for new features, generally. - Revised H5O* routines to take a H5O_loc_t instead of H5G_entry_t - Lots more... Platforms tested: h5committested and maybe another dozen configurations.... :-)