summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r16721] Purpose: Fix problems with "no strct format checks"Neil Fortner2009-04-092-21/+46
| | | | | | | | | | Description: Changed H5G_mkroot to be tolerant of files with symbol table information cached but no symbol table in the root group. Also changed H5G_mkroot to properly clean up in case of an error, and changed H5G_stab_is_valid to properly detect errors in H5O_msg_read. Tested: jam, linew, smirom (h5committest), jam (--disable-strict-format-checks)
* [svn-r16710] Purpose: Fix bug 1423Neil Fortner2009-04-0814-313/+473
| | | | | | | | | | | | | | 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-r16704] Snapshot version 1.9 release 37Larry Knox2009-04-082-3/+3
|
* [svn-r16702] Purpose: Improve performance of factory free lists.Neil Fortner2009-04-083-166/+459
| | | | | | | | | | | Description: Factory free lists were formerly implemented as block free lists. This was inefficient as factories can only be one size, and implementing them as blocks (which can be variable size) wastedd computation and space. They have been rewritten with a separate implementation, which is simlar to regular free lists except they can be dynamically created and destroyed. Tested: jam, linew, smirom (h5committest)
* [svn-r16698] Purpose: Fix bug 503Neil Fortner2009-04-0813-309/+613
| | | | | | | | | Description: Changed Skip list package to use a deterministic skip list. This allows the skip list package to avoid calling rand() and srand(), even on machines without rand_r(). There is no longer a p-value or maximum level for skip lists. Tested: jam, smirom, linew (h5committest)
* [svn-r16694] Purpose: Fix bug 1526Neil Fortner2009-04-071-4/+11
| | | | | | | | | | | Description: Previously, H5Lcopy and H5Lmove would (through H5L_move) improperly apply the "create intermediate groups" property to the source path traversal, and not the destination. Fixed it to apply the property to the destination and not the source. Also fixed H5Lcreate_ud to reject internal link classes without throwing an assertion. Tested: linew, jam, smirom (h5committtest)
* [svn-r16655] Description:Quincey Koziol2009-04-021-1/+2
| | | | | | | Clean up formatting (and test https: checkins to new subversion server) Tested on: None needed, just whitespace changes
* [svn-r16654] Description:Quincey Koziol2009-04-021-1/+1
| | | | | | | Clean up compiler warning (and test checkins on new subversion server) Tested on: None, just eyeballed, too minor to require test
* [svn-r16653] Bug fix #1503 - H5Iget_type failed unexpected when an invalid ↵Raymond Lu2009-04-011-19/+19
| | | | | | | | | ID was passed in. I put some argument check in the internal function H5I_find_id and took out the assertion check. I also removed the argument check in H5Iis_valid because it's in H5I_find_id now. Tested on jam - simple change. Tested v1.8 already.
* [svn-r16650] Snapshot version 1.9 release 36Larry Knox2009-04-013-4/+4
|
* [svn-r16636] Description:Quincey Koziol2009-03-316-18/+22
| | | | | | | | | Pass some user data down into the extensible array client context creation callback. Tested on: FreeBSD/32 6.3 (duty) Too minor to require h5committest
* [svn-r16633] Description:Quincey Koziol2009-03-319-71/+379
| | | | | | | | | | | | | | | | | | | | | | Use metadata cache flush dependencies (and 'notify' callback) to give extensible arrays SWMR (single-writer/multiple-reader) access capability. 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.6 (amazon) in debug mode Mac OS X/32 10.5.6 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* [svn-r16632] Description:Quincey Koziol2009-03-3123-40/+35
| | | | | | | | | | | | | | | | | | | | | | Remove unnecessary 'udata' parameter from H5AC_set() and 'notify' callback (introduced with checkin that added the 'notify' callback) 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.6 (amazon) in debug mode Mac OS X/32 10.5.6 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* [svn-r16630] Description:Quincey Koziol2009-03-3138-33/+132
| | | | | | | | | | | | | | | | | | | | | | | | | Add 'notify' callback to metadata cache clients, so that they can be aware when the cache has taken/will take certain actions. Notifications are urrently limited to when an entry has successfully entered the cache (via an insertion or a load from the file) and when an entry is about to be evicted from the 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 (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.6 (amazon) in debug mode Mac OS X/32 10.5.6 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* [svn-r16626] Description:Quincey Koziol2009-03-301-1/+1
| | | | | | | Fix missing parameters to updated H5C_get_entry_status() call. Tested on: Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
* [svn-r16625] Description:Quincey Koziol2009-03-305-9/+31
| | | | | | | | | | | | | | | | | | | | | | Add mechanism for querying if an entry in the metadata cache is the parent or child in a flush dependency relationship. 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.6 (amazon) in debug mode Mac OS X/32 10.5.6 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* [svn-r16623] Description:Quincey Koziol2009-03-269-73/+87
| | | | | | | | | | | | | | | | | | | | | | Revise how code for array statistics works. 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.6 (amazon) in debug mode Mac OS X/32 10.5.6 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* [svn-r16618] Description:Quincey Koziol2009-03-262-81/+186
| | | | | | | | | | | | | | | | | | | | | | Modify metadata cache flush dependency feature to allow it to work with entries that are pinned through the cache API calls. 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.6 (amazon) in debug mode Mac OS X/32 10.5.6 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* [svn-r16615] Purpose: Fix bug 1499Neil Fortner2009-03-262-4/+20
| | | | | | | | | | | Description: Due to a bug in H5F_super_read, every time a file with a user block was opened it would grow by the size of the user block. The bug has been fixed, and comments have been added to clarify when an eoa address should be relative and when it should be absolute. Tested: jam, linew (h5committest)
* [svn-r16611] In previous checkin (r16609), the flag "write_driver" wasn't ↵Raymond Lu2009-03-253-13/+9
| | | | | | | | necessary as Quincey pointed out. I took it out and used the driver address instead. Tested on jam - simple change.
* [svn-r16609] Bug fix (#1161): When a family file created with v1.6 library ↵Raymond Lu2009-03-244-6/+25
| | | | | | | | | | | 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-r16606] Description:Quincey Koziol2009-03-242-0/+109
| | | | | | | | | Add H5AC_create_flush_dependency() and H5AC_destroy_flush_dependency() wrappers for similarly named routines in H5C layer. Tested on: FreeBSD/32 6.3 (duty) Too minor to require h5committest
* [svn-r16600] Description:Quincey Koziol2009-03-242-458/+528
| | | | | | | | | | | | | | | | | | Ensure that metadata cache entries with flush dependencies are written to the file in the correct order (for serial I/O, at least). 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-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.6 (amazon) in debug mode Mac OS X/32 10.5.6 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* [svn-r16594] Purpose: fix bug 1189Neil Fortner2009-03-2314-39/+251
| | | | | | | | | | | 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-r16587] Description:Quincey Koziol2009-03-178-51/+408
| | | | | | | | | | | | | | | | | | | | Add infrastructure & tests for "flush dependencies" in metadata cache, which allow relationships that specify which order to flush metadata entries 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/C++ & FORTRAN, w/threadsafe, in debug 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.6 (amazon) in debug mode Mac OS X/32 10.5.6 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode
* [svn-r16579] Snapshot version 1.9 release 35Larry Knox2009-03-152-3/+3
|
* [svn-r16561] Purpose:Mike McGreevy2009-03-101-3/+3
| | | | | | | | | | | | | | | | | | Bug Fix Description: Fixing BZ #1381. The --includedir=DIR configure option, which is used to specify the installation location of C header files, did not work correctly as the path was hard-coded in config/commence.am. I'm presuming this is because an older version of automake didn't know where to put c header files. In any case, removing this line now defaults the includedir to the same directory that it is currently hard-coded to, and also fixes the configure flag to allow customization of this value. Tested: jam, liberty
* [svn-r16560] Description:Quincey Koziol2009-03-1026-416/+384
| | | | | | | | | | Remove another call to H5E_clear_stack() from within the library. Clean up lots of compiler warnings. Tested on: Mac OS X/32 10.5.6 (amazon) (followup on other platforms forthcoming)
* [svn-r16553] Snapshot version 1.9 release 34Larry Knox2009-03-082-3/+3
|
* [svn-r16540] Move variable declaration to the top of the block in ↵Neil Fortner2009-03-041-1/+2
| | | | | | H5G_dense_iterate Tested: Fedora 10 (too minor for full committest)
* [svn-r16532] Description:Quincey Koziol2009-03-023-9/+11
| | | | | | | | | | Pass the chunk "user data" to H5D_chunk_unlock(), so that chunks with an address already aren't reallocated. Tested on: FreeBSD/32 6.3 (duty) in debug mode FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
* [svn-r16525] Snapshot version 1.9 release 33HDF Tester2009-03-012-3/+3
|
* [svn-r16523] Purpose: Fix bugs related to H5Dset_extent and fill valuesNeil Fortner2009-02-273-227/+312
| | | | | | | | | Description: In some situations it was possible for the fill value to not be written to parts of a chunked dataset, particularly when extending and/or shrinking. Prior to the fix for the chunk cache (1015) these bugs would have been exceedingly rare. Tested: jam, smirom, linew (h5committest)
* [svn-r16518] have 2 expected outputs for 2 h5ls runs depending if run on a ↵Pedro Vicente Nunes2009-02-261-0/+1
| | | | | | | big or little endian machine. Configure.in was modified to export a variable carrying endianess information to testh5ls.sh. This script then compares the current run with 2 expected outputs, one for a big-endian machine (linew was used to generate the output), other for little endian (jam was used to generate the output) the way h5ls prints types, it starts searching for NATIVE types first. One solution would be h5ls not to detect these native types, using for example the same print datatype function that h5dump does, that would make the output look the same on all platforms ("32-bit little-endian integer" would be printed instead). Drawback, this "native" information would not be available. Other solution is to have not one but 2 expected outputs and make the shell script detect the endianess and compare with one output or other tested: h5committest
* [svn-r16516] To improve the performance of querying the info of a link (bug ↵Raymond Lu2009-02-241-45/+66
| | | | | | | | | | | #1404). When the index was set to creation order in query function but there's no creation order indexed in the file, the library tried to build and sort a table of all links. To optimize it, let the library use the B-tree for names of the links. Tested on jam. I tested the same change for v1.8 with h5committest.
* [svn-r16506] Snapshot version 1.9 release 32HDF Tester2009-02-222-3/+3
|
* [svn-r16504] Maintenance: Fixed a typo discovered while compiling on AIX systemElena Pourmal2009-02-201-1/+1
| | | | Platforms tested: Mac OSX and AIX (by Ed) (minor fix)
* [svn-r16499] Description:Quincey Koziol2009-02-191-1/+7
| | | | | | | | Cache chunk info for newly created chunk. Tested on: FreeBSD/32 6.3 (duty) (Tests included in upcoming revise_chunks branch changes)
* [svn-r16489] Fixed bug #1459 by eliminating the macro long_long and ↵Allen Byrne2009-02-1819-230/+212
| | | | | | | | | | | replacing all instances with long long. Tested: h5comittest fedora 10 x64 Vista 32, VS2005, IVF101 XP32, Cygwin
* [svn-r16488] Description:Quincey Koziol2009-02-171-153/+58
| | | | | | | | | Clean up code and eliminate resource leaks. Also avoid "null" I/O when chunk doesn't exist and we can skip it. Tested on: Mac OS X/32 10.5.6 (amazon) (too minor to require h5committest)
* [svn-r16484] Snapshot version 1.9 release 31HDF Tester2009-02-152-3/+3
|
* [svn-r16483] Description:Quincey Koziol2009-02-129-146/+182
| | | | | | | | | 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-r16480] Purpose: Improve chunk cacheNeil Fortner2009-02-124-16/+64
| | | | | | | | | | | Description: The meaning of the "nbytes" field in H5D_rdcc_t was not clear, and some places assumed it was the maximum size of the chunk cache, while some assumed it was the current size of the chunk cache. The end result was that only 1 chunk could be held in cache at a time. This field has been replaced by "nbytes_max" and "nbytes_used". Performance of cached I/O should improve greatly. Tested: jam, smirom (h5committest)
* [svn-r16477] Purpose: Fix problem with opening an attribute multiple times ↵Neil Fortner2009-02-126-20/+20
| | | | | | | | | | | | | | | through multiple file handles. Description: An attribute's "oloc" field which specifies the file it resides in was located in the attribute's "shared" structure. So when an attribute was opened multiple times all of the handles for that attribute pointed to the same file id, even if different file id's were used to open the different handles for the attribute. The "oloc" has been moved to the top level H5A_t struct. Tested: jam, smirom (h5committest)
* [svn-r16475] Purpose: Fix rare error when adding a new object header messageNeil Fortner2009-02-121-57/+126
| | | | | | | | | | | | Description: Since the new object header format, it has been possible for a situation to be created where none of the messages are large enough to hold a continuation message and there are no null messages to merge with. This makes it impossible to add a new object header chunk. This case will now be handled by moving every message in the last chunk to the newly allocated one, except for null messages which are deleted. Tested: jam, smirom (h5committest)
* [svn-r16473] Purpose: fix problems related to 'self-referential' attributesNeil Fortner2009-02-1235-152/+217
| | | | | | | | | | | | Description: When an attribute was created with a datatype or dataspace that was shared in the same object header that the attribute was in, the attribute could not be deleted. Changes made to ensure that the attribute can be deleted both when the attribute is in the object header and when it is shared in the heap. Object header message decode routines now take an "open_oh" parameter to enable them to avoid opening the same object header twice. Tested: jam, smirom (h5committest)
* [svn-r16465] Performance Improvement(bug #1450). When a chunk is bigger ↵Raymond Lu2009-02-113-18/+174
| | | | | | | | | than the cache size and isn't allocated on disk, the library still loaded it in the cache, which is redundant. I changed it to bypass the cache and added a test in dsets.c. Tested on jam and smirom.
* [svn-r16453] Snapshot version 1.9 release 30HDF Tester2009-02-082-3/+3
|
* [svn-r16436] Checkin for moving messages forward into continuation message:Vailin Choi2009-02-052-8/+148
| | | | | src/H5Oalloc.c, test/ohdr.c, toshm.c Fixed couple of problems in src/H5Odbg.c.
* [svn-r16414] Description:Quincey Koziol2009-02-032-15/+29
| | | | | | | | | | Eliminate some more calls to H5E_clear_stack() from within library code. Clean up some warnings & comments also. Tested on: Mac OS X/32 10.5.6 (amazon) (Too minor to require h5committest)