summaryrefslogtreecommitdiffstats
path: root/src/H5F.c
Commit message (Collapse)AuthorAgeFilesLines
...
* [svn-r16712] Purpose: Fix bug 1423Neil Fortner2009-04-081-12/+4
| | | | | | | | | | | | | | 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)
* [svn-r16613] In previous checkin (r16609), the flag "write_driver" wasn't ↵Raymond Lu2009-03-251-1/+0
| | | | | | | | necessary as Quincey pointed out. I took it out and used the driver address instead. Tested on jam - simple change.
* [svn-r16608] Bug fix (#1161): When a family file created with v1.6 library ↵Raymond Lu2009-03-241-0/+1
| | | | | | | | | | | | 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.
* [svn-r16595] Purpose: fix bug 1189Neil Fortner2009-03-231-0/+3
| | | | | | | | | | | 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)
* [svn-r16494] Description:Quincey Koziol2009-02-191-4/+2
| | | | | | | | | | | Bring r16483 back from trunk: Clean up (i.e. remove) more internal calls to H5E_clear_stack(), along with some other minor code cleanups. Tested on: Mac OS X/32 10.5.6 (amazon) (too minor to require h5committest)
* [svn-r16368] Description:Quincey Koziol2009-01-271-39/+117
| | | | | | | | | | | | Bring r16367 back from trunk: Refactor internal address encode/decode routines slightly, to allow for more flexible use. Tested on: Mac OS X/32 (amazon) FreeBSD/32 (duty) (too minor to require h5committest)
* [svn-r16280] Description:Quincey Koziol2009-01-081-2/+2
| | | | | | | | | | | | | | Bring revision 16278 back from revise_chunks branch: Update layout information in DCPL to unify all information in one underlying property and switch to using H5O_layout_t for storing it, which simplifies things considerably. Also, fix many compiler warnings. Tested on: FreeBSD/32 6.3 (duty) in debug mode (Original patch tested on many machines)
* [svn-r16183] Description:Quincey Koziol2008-12-111-1/+1
| | | | | | | | | | Bring r16182 back from trunk: Rename internal routines, variables, macros, typedefs, etc. for chunked dataset storage from "istore" to some variant of "chunk" or "btree". Tested on: FreeBSD/32 6.3 (duty) in debug mode
* [svn-r16087] Purpose: Port H5Pset_chunk_cache, H5Pget_chunk_cache, and ↵Neil Fortner2008-11-171-5/+5
| | | | | | | | H5Dget_access_plist functions to 1.8 branch Tested: kagiso, jam (trunk version tested with h5committest)
* [svn-r15863] Description:Quincey Koziol2008-10-141-10/+11
| | | | | | | | | | | | | | | | | | | | | Bring r15861 back from trunk to 1.8 release branch. 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
* [svn-r15801] Description:Quincey Koziol2008-10-071-882/+79
| | | | | | | | | | | | | | | | | | | | | | | Bring r15800 back from trunk: - File free space branch changes through r15794 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
* [svn-r15797] Purpose: Close bug #1322Neil Fortner2008-10-071-15/+15
| | | | | | | | | Description: Fixes a possible datatype id leak that could occur during compound datatype conversion, or more precisely, when unregistering those conversions. Datatype ids normally registered by the library are no longer visible to the application via H5Fget_obj_ids and H5Fget_obj_count. Tested: kagiso, linew, smirom (h5committest)
* [svn-r15715] Snapshot version 1.8 release 1 (snap5)HDF Tester2008-09-281-2/+2
|
* [svn-r15707] I changed the return values of H5Fget_obj_ids and ↵Raymond Lu2008-09-261-35/+65
| | | | | | | | H5Fget_obj_count to ssize_t and modified C++ and Fortran API functions. This is for bug #1245. Tested on kagiso - I've tested the same change using h5committest.
* [svn-r15629] Description:Quincey Koziol2008-09-161-4/+4
| | | | | | | | | | | | | Remove trailing whitespace from C/C++ source files, with the following script: foreach f (*.[ch] *.cpp) sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f end Tested on: Mac OS X/32 10.5.5 (amazon) No need for h5committest, just whitespace changes...
* [svn-r15610] Description:Quincey Koziol2008-09-101-115/+119
| | | | | | | | | Bring r15609 back from trunk: Omnibus compiler warning cleanup & some formatting happiness. Tested on: Mac OS X/32 10.5.4 (amazon) Too minor to require h5committest
* [svn-r15486] Purpose: Allow library to shut down properly when objects have ↵Neil Fortner2008-08-191-17/+17
| | | | | | | | | | | | | | | | 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-r15450] Purpose: Fix various problems that were occurring when using ↵Neil Fortner2008-08-071-8/+10
| | | | | | | | | | | | | | 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: kagiso, smirom, linew (h5committest)
* [svn-r14791] Add handling for external link:Vailin Choi2008-04-021-1/+40
| | | | | | | 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
* [svn-r14372] Description:Quincey Koziol2008-01-031-0/+5
| | | | | | | | 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)
* [svn-r14353] Description:Quincey Koziol2007-12-201-31/+13
| | | | | | | | | | | | | | | | | | | | | | | | | - Add hash value for skip list string types, to reduce # of string comparisons. - Fixed bug with metadata/small data block aggregator adding size == 0 block into file free space list. - Refactored metadata/small data block aggregator code into single set of common routines. - Changed block aggregator code to be smarter about releasing space in the 'other' block when the 'other' block has aggregated enough data. 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 Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
* [svn-r14284] Description:Quincey Koziol2007-11-241-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add H5Lvisit_by_name() API routine to library. Eliminated all (five!) other group traversal routines and changed them all to use the new API routine. Cleaned up output of h5ls & h5stat: - Issue error when requesting recursive traversal of a file with the "group info" flag, but no group given - Print info about root group in all(?) appropriate situations - Don't print "verbose" information about root group until the root group is in the list of objects to display (mostly because h5ls & h5stat had a different twist on traversing the groups in a file that the other utilities) 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 Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
* [svn-r14270] Description:Albert Cheng2007-11-201-1/+0
| | | | | | | | | | Removed the stream-vfd from the basic library code. (The stream-vfd source files are not removed yet but the MANIFEST has been updated to NOT release those stream-vfd source files.) Platforms tested: Kagiso and smirom. Then test the release tar ball in kagiso.
* [svn-r14022] Description:Quincey Koziol2007-07-261-0/+1
| | | | | | | | | | | | | | | | Remove stray reference to "group revision" configure flag Remove Windows-specific EOL characters from src/H5FDwindows.c Add some missing types to bin/trace Re-run bin/reconfigure script to regenerate information after changes above. Tested on: FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty) Linux/32 2.6 (linux) Solaris/32 2.10 (linew)
* [svn-r13984] Description:Quincey Koziol2007-07-171-38/+42
| | | | | | | | | | | 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)
* [svn-r13978] purpose:Vailin Choi2007-07-131-0/+45
| | | | | | | | | | | | | | 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.
* [svn-r13856] H5FDwindows.h is included in the hdf5.h but we didn't put it ↵MuQun Yang2007-06-121-0/+2
| | | | | | | | | | | | | | | | into Makefile.am un der /src. So when gmake check-install is run for HDF5 examples, it will fail. Th e fix is to include a macro #ifdef H5_HAVE_WINDOW around #include H5FDwindows.h so that H5FDwindows.h will only be included on windows, not on other platforms. We've fixed with the same way for other source code that includes H5FDwindows.h. This has been tested with h5committest. However, it takes a few hours to test all tests and except kagiso. Tests on linew and smirom cannot finish. It takes forever for the fheap test. And for parallel test at kagiso, ph5diff test seems to be hanged. I think all of our changes will only affect windows. So in order not to block other developers to check in their code, we just go ahead to check our changes. Kent Yang
* [svn-r13852] Added includes in various places to make it possible to set ↵Scott Wegner2007-06-111-0/+1
| | | | | | | windows as the default vfd. Although sec2 is still default on Windows, it should now be possible to switch by simply changing H5pubconf.h . Tested: .NET 2003 on WinXP
* [svn-r13477] Description:Quincey Koziol2007-03-081-1/+28
| | | | | | | | | | | | | | | | | | | | 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-6/+6
| | | | | | | | | | | | 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-r13465] Description:Quincey Koziol2007-03-061-81/+87
| | | | | | | | | | | | Fix bug in external links when "strong" file close degree is used. Make external link callbacks use standard error reporting mechanisms. Other minor code cleanups... Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 6.2 (duty)
* [svn-r13440] Description:Quincey Koziol2007-03-011-36/+7
| | | | | | | | | | | | | | | | | | | Revise latest form of superblock format pretty drastically, to eliminate unused fields and move rarely used fields into superblock extension. Finished removing last vestiges of references to (never used) i"shared" object header message ID. Added object header messages for non-default v1 B-tree 'K' values and for driver info. Updated testfiles to reflect size changes, etc. Various minor cleanups, etc. Tested on: FreeBSD/32 6.2 (duty) Mac OS X/32 10.4.8 (amazon)
* [svn-r13413] Description:Quincey Koziol2007-02-271-97/+24
| | | | | | | | | | | | | Further cleanups to superblock code: - Move most of the ISOHM-specific code into the H5SM module - Make only one checksum, for combined superblock & driver info block Minor other cleanups, etc. Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 6.2 (duty)
* [svn-r13375] Description:Quincey Koziol2007-02-221-56/+31
| | | | | | | | | | Straighten out some of the code for handling superblocks, in preparation for revising the format of the latest version of the superblock before the beta release. Tested on: Mac OS X/32 10.4.8 (amazon) FreeBSD/32 6.2 (duty)
* [svn-r13254] Cleaned up superblock extension code and added some more ↵James Laird2007-02-071-8/+16
| | | | | | helpful comments. Tested on Windows, smirom, and kagiso.
* [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-r13245] Added "superblock extension" object header to hold shared ↵James Laird2007-02-061-1/+37
| | | | | | | | | object header information, rather than storing it directly in the superblock. This should make future updates to the superblock much less painful. Tested on Windows, kagiso, and smirom.
* [svn-r13223] Description:Quincey Koziol2007-01-301-1/+1
| | | | | | | | | | | | Move datatype messages into new shared message method interface Clean up various formatting & compiler warnings Minor optimizations Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13139] Fixed the MULTI problem (Bug #731) that corrupted the data. ↵Raymond Lu2007-01-121-4/+4
| | | | | | | The problem came from the EOA for the whole MULTI file. It's taken out because it's meaningless for MULTI file. Instead, each individual file has its EOA.
* [svn-r13135] Continuing code cleanup.James Laird2007-01-111-16/+12
| | | | | | | | | Moved SOHM table version out of table encoding and completely into superblock. This is a file format change. Added test that extends shared dataspaces. Dynamically allocate arrays in shared message cache code. Clean up comments. Tested on windows, kagiso, smirom.
* [svn-r13116] Description:Quincey Koziol2007-01-061-42/+15
| | | | | | | | | | | | Add support for deleting all the attributes on an object, when they are dense and possibly shared. Also, add some testing routines, for better error detection. Should fix daily test failures also... Tested on: FreeBSD/32 6.1 (duty)
* [svn-r13068] Ran bin/reconfigure. Some of the scripts have been changed or ↵James Laird2006-12-181-21/+21
| | | | | | | | | 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-r13015] Description:Quincey Koziol2006-12-041-2/+2
| | | | | | | | | | | 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-r12935] Added list-to-btree conversion, changed SOHM apis, and pushed ↵James Laird2006-11-171-2/+4
| | | | | | | | | | | SOHM table version and size information into the superblock to eliminate a read when loading it. This is a file format change, and hopefully the last one (knock on wood). Tested on kagiso and Windows (mostly just a SOHM change).
* [svn-r12902] Checkin of Shared Object Header Message work.James Laird2006-11-131-10/+46
| | | | | | | | | | | | 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-r12866] Description:Quincey Koziol2006-11-061-109/+2
| | | | | | | Clean up initialization of H5F & H5L APIs. Tested on: Linux/64 2.6 (chicago2)
* [svn-r12842] Description:Quincey Koziol2006-11-021-424/+7
| | | | | | | | | | | | | | | | 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
* [svn-r12739] Added Direct I/O driver to VFD. It's only supported by SGI ↵Raymond Lu2006-10-101-0/+1
| | | | | | | | | | Altix (cobalt). There's a configure option --enable-direct-vfd/--disable-direct-vfd to enable/disable Direct I/O support. The default is enabled. There's a small test in test/vfd.c. Another way to test it is to set environment variable HDF5_DRIVER to "direct" and run "make check" in the test/ directory. There'll be some further improvement in the following checkin including allowing user to provide memory boundary value, file block size, and copying buffer size.
* [svn-r12723] Fix a bug where return values were overwritten in H5F_dest, and ↵James Laird2006-10-051-1/+13
| | | | | | | | | | | | | | another bug exposed by that one in which closing a read/write file ID wouldn't flush the cache if there was another file handle open. This caused problems when the second file handle was read-only; neither would actually flush the cache. Now all read/write file handles flush the cache when the close, but only when the file is going to be destroyed is the cache destroyed. This way read-only file handles keep the cache open but it is always clean. Tested on mir, heping, sol, and copper (parallel)
* [svn-r12708] Description:Quincey Koziol2006-10-031-20/+36
| | | | | | | | | | | | | | | | | | | 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)