summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r12608] Checked in External Link C examples.James Laird2006-08-227-917/+918
| | | | | | | | Since these examples need to follow filesystem paths, the Makefiles need to create directories in the examples directory; added this to the Makefile.am. Tested on Windows, mir, juniper
* [svn-r12607] Description:Quincey Koziol2006-08-222-69/+9
| | | | | | | | | | | Tweak the library's new faster fletcher32 algorithm to always produce the same checksum as the previous fletcher32 code in the fletcher32 I/O pipeline filter and switch the filter to use the library's version of the algorithm. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2) Too minor to require h5committest
* [svn-r12606] Description:Quincey Koziol2006-08-221-19/+7
| | | | | | | | | | | Switch to somewhat less high performance checksum implementation that doesn't run into problems for mis-aligned buffers in memory. Tested On: FreeBSD/32 4.11(sleipnir) Linux/32 2.4 (heping) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12605] Description:Quincey Koziol2006-08-218-2485/+2891
| | | | | | | | | | | | | Break out a bunch of the misc. routines that were in src/H5.c into more specific modules. Add optimized fletcher32 checksum routine, for checksumming metadata as well as raw data. Tested On: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2) Will test further after checkin...
* [svn-r12604] Description:Quincey Koziol2006-08-211-1/+1
| | | | | | | | | Change call from H5O_loc_free() to H5G_name_free() when certain dataset open failures are generated. Tested on: Linux/32 2.6 (chicago) Too minor to require h5committest
* [svn-r12603] Description:Quincey Koziol2006-08-212-7/+56
| | | | | | | | | | | | | | | | | | | Add a bunch more regression tests: - Verify opening a fractal heap more than once works correctly - Check that 0 & 1-sized object insertions are handled correctly - Check that bad heap IDs are detected when attempting to read an object - Check that doubling tables with different parameter values are working correctly Add some more checks to the code to detect 0-sized object insertions and bad heap IDs for reading. Tested On: FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12602] Description:Quincey Koziol2006-08-212-2/+10
| | | | | | | | | | | | | Correct bug in doubling table algorithm which was generating incorrect row & column for offset larger than could be represented in 32 bits. Also, beef up the error checking in direct block code a bit Tested On: FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12601] Description:Quincey Koziol2006-08-212-15/+39
| | | | | | | | | | | | Fix bug in deserializing sections from disk which would recompute the sections' serialized size while the sections were being deserialized, thoroughly baffling the algorithm. Tested on: FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12600] Description:Quincey Koziol2006-08-212-35/+33
| | | | | | | | | | | Clean up code a bit by reformatting and using portable macros for direct C library calls. Tested On: FreeBSD/32 4.11 (sleipnir) Linux/32 2.4 (heping) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12598] Description:Quincey Koziol2006-08-1910-190/+475
| | | | | | | | | | | | | | - Migrate "direct block location" routine from H5HFman.c to H5HFdblock.c, which is a more appropriate location - Optimize performance of heap code by taking advantage of pinned indirect blocks and use them without putting a metadata cache protect/unprotect pair around them. - Other minor compiler warning cleanups and optimizations... Tested On: FreeBSD/32 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12597] Description:Quincey Koziol2006-08-192-85/+47
| | | | | | | | | | | Take advantage of the new feature in the metadata cache to insert pinned entries into the metadata cache directly, instead of insterting them, protecting them, pinning them and unprotecting them. Tested On: FreeBSD/32 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12596] Refactored how external files are opened and closed.James Laird2006-08-1814-311/+430
| | | | | | | | 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-r12595] Modified H5C_insert_entry() to accept the H5C__PIN_ENTRY_FLAG entryJohn Mainzer2006-08-174-83/+183
| | | | | | | | | | | flag, and pin an entry as it is inserted. The objective is to avoid some function call overhead in fheap. Also added matching test code in test/cache.c & test/cache_common.c (also testpar/t_cache.c checked in separately by accident) h5commit tested
* [svn-r12593] Description:Quincey Koziol2006-08-174-351/+179
| | | | | | | | | Clean up some of the parallel chunk I/O compiler warnings and other minor code rearrangement. Tested on: FreeBSD 4.11 (sleipnir) w/paralllel h5committest
* [svn-r12592] Description:Quincey Koziol2006-08-1715-361/+2363
| | | | | | | | | | | | | | | | | | | | | Several changes, all mooshed together: - Add support for "tiny" objects - which can be stored in the heap ID itself, instead of in the heap data blocks. - Flesh out support for compressed direct blocks, but comment it out until John's got some metadata cache changes in place to support it. - Add support for applying I/O pipeline filters to 'huge' objects - Refactor 'huge' object code to store information for 'huge' objects directly in the heap ID, when there are I/O pipeline filters applied to the heap (and the heap ID is large enough to hold the information) - Update h5debug tool to correctly handle 'huge' & 'tiny' objects. - Misc. other code cleanups, etc. Tested on: FreeBSD/32 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12591] Description:Quincey Koziol2006-08-175-862/+872
| | | | | | | | | Add an error code for a I/O filter pipeline operation failing Tested on: FreeBSD/32 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12590] Description:Quincey Koziol2006-08-171-1/+1
| | | | | | | | | | Set the parent indirect block information correctly when creating new row sections. Tested on: FreeBSD/32 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12589] Description:Quincey Koziol2006-08-175-35/+48
| | | | | | | | | | | | | | Revert passing the v2 B-tree class to callbacks, it turns out to be unnecessary. Also revert have a "class private" pointer for each v2 B-tree class. Add in support for the different flavors of fractal heap 'huge' objects also. Tested on: FreeBSD/32 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12588] Description:Quincey Koziol2006-08-171-0/+9
| | | | | | | | | | Set the address of the free space section info's parent header correctly when bringing the section info into the metadata cache. Tested on: FreeBSD/32 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12587] Description:Quincey Koziol2006-08-171-0/+1
| | | | | | | | | Call the H5L API's termination routine when the library is terminating. Tested on: FreeBSD/32 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12585] Description:Quincey Koziol2006-08-171-1/+1
| | | | | | | Correct parameter flipped in memset call (Thanks Peter!) Tested on: Very minor, just eyeballed.
* [svn-r12584] Mentioned VFD in test output to make it easier to tell which ↵James Laird2006-08-175-888/+888
| | | | | | | | | VFD is being used when a test is run. Running reconfigure also regenerated error header files (because someone edited them manually?).
* [svn-r12582] Purpose:Albert Cheng2006-08-171-2/+2
| | | | | | | | | | | upgrade. Description: Changed the error report of read and write to HSYS_GOTO_ERROR to report system error messages. Platforms tested: heping, osage, copper.
* [svn-r12575] Description:Quincey Koziol2006-08-146-22/+126
| | | | | | | | | | | | | Allow the heap ID length to be chosen at heap creation time, to allow for making heap IDs long enough to directly embed the file offset & length of 'huge' objects in the heap ID (which allows them to be retrieved directly from disk, instead of requiring them to be looked up in the B-tree that tracks 'huge' objects) Tested on: FreeBSD/32 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 9 (shanti)
* [svn-r12573] Description:Quincey Koziol2006-08-131-2/+2
| | | | | | | | | | | | Clean up a couple of compiler warnings in the 'huge' object code in the library. Add a bunch of 'huge' object regression tests Tested on: FreeBSD 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12572] Description:Quincey Koziol2006-08-133-47/+54
| | | | | | | | | | Refactor new heap's header creation code to be all in the H5HFhdr.c module. Tested on: FreeBSD 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12571] Description:Quincey Koziol2006-08-132-3/+32
| | | | | | | | | | | Fix failure in "remove bogus ID" test which turned up randomly (due to random "bogus" IDs being used in test :-) by adding some more defensive checks on object IDs to the object removal code. Tested on: FreeBSD 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 (shanti)
* [svn-r12570] Description:Quincey Koziol2006-08-131-17/+15
| | | | | | | | | | Refactor file memory allocation code slightly, to make it clearer, along with adding/correcting some comments. Tested on: FreeBSD 4.11 (sleipnir) Linux/64 2.4 (mir) Solaris/64 2.9 (shanti)
* [svn-r12568] Description:Quincey Koziol2006-08-123-4/+4
| | | | | | | | | Rename some files, to better align with the names of the functions within them. Tested on: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r12567] Description:Quincey Koziol2006-08-123-25/+25
| | | | | | | | | Correct remaining compilation errors when debugging asserts are turned on in free space manager. Tested in: FreeBSD 4.11 (sleipnir) Too minor for h5committest
* [svn-r12565] Description:Quincey Koziol2006-08-111-12/+12
| | | | | | | | | | | | | | Move metadata cache address rename for fractal heap indirect block immediately after reallocing the storage on disk - to prevent another routine in the library from confusing the cache by allocating more storage and attempting to insert it in metadata cache at the old block's location. Gotta like those monte carlo/random insert & delete tests, which exposed this... :-) Tested: Solaris 2.9 (shanti) Not failing on other machines
* [svn-r12562] Description:Quincey Koziol2006-08-1014-153/+1108
| | | | | | | | | | | | Initial revision to add support for "huge" objects in the heap (which are actually stored directly in the file, but are tracked with v2 B-tree that is accessed through heap header). Testing: FreeBSD 4.11 (sleipnir) Linux/64 2.4 (mir) Linux/32 2.4 (heping) Mac OS X.4 (amazon)
* [svn-r12561] Description:Quincey Koziol2006-08-107-107/+146
| | | | | | | | | | | | Update code formatting a little and refactor to add a better mechanism for performing callbacks when removing records from the B-tree or deleting entire B-tree. Testing: FreeBSD 4.11 (sleipnir) Linux/64 2.4 (mir) Linux/32 2.4 (heping) Mac OS 10.4 (amazon)
* [svn-r12560] Description:Quincey Koziol2006-08-101-3/+3
| | | | | | | Correct some typos in comments Testing: None needed
* [svn-r12555] 1. Erased a strange character added to this codeMuQun Yang2006-08-091-8/+35
| | | | | | | 2. Used to workaround solution to fix the cchunk10 failure caused by the MPICH bug Machine test: heping, mir
* [svn-r12553] This check-in includes the following part of parallel ↵MuQun Yang2006-08-098-226/+544
| | | | | | | | | | | | | | | optimization codes: 1. Provide another option for users to do independent IO with MPI file setview(collectively) 2. With the request of collective IO from users, using Independent IO with MPI file setview if we find collective IO is not good for the applications for IO per chunk(multi-chunk IO) case. Previously we used pure independent IO and that actually performed small IO(IO each row) for this case. The recent performance study suggested the independent IO with file setview can acheieve significantly better performance than collective IO when not many processes participate in the IO. 3. For applications that explicitly choose to do collective IO per chunk case, the library won't do any optimization(gather/broadcast) operations. The library simply passes the collective IO request to MPI-IO. Tested at copper, kagiso, heping, mir and tungsten(cmpi and mpich) Kagiso is using LAM, t_mpi test was broken even. The cchunk10 test failed at heping and mir. I suspected it was an MPICH problem. Will investigate later. Everything passed at copper. at tungsten: the old cmpi bug(failed at esetw) is still there. Other tests passed. Some sequential fheap tests failed at kagiso.
* [svn-r12552] Description:Quincey Koziol2006-08-0711-91/+112
| | | | | | | | | | | More tweaks on fractal heap statistics, to better separate information about managed objects from information about "huge" objects. Also, clean up some compiler warnings, etc. on 64-bit platforms & Windows. Platforms tested: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago)
* [svn-r12551] Description:Quincey Koziol2006-08-078-95/+86
| | | | | | | | | | | Refactor fields in heap header to clean out information from dropped features and also group related fields together more nicely. Add fields to heap header for storing information about "huge" objects. Platforms tested: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago)
* [svn-r12550] Description:Quincey Koziol2006-08-074-39/+95
| | | | | | | | | | | Refactor fractal heap IDs to include "flag byte" as part of the ID. This byte will be used for the heap ID format version as well as flags to indicate whether the heap object is a "tiny"/normal/"huge" object (with storage mechanisms optimized for each type of object). Platforms tested: Linux/32 2.4 (chicago) Too minor to require h5committest
* [svn-r12549] Description:Quincey Koziol2006-08-0714-792/+1125
| | | | | | | | | | Add support for entire heap deletion. Platforms tested: FreeBSD 4.11 (sleipnir) Linux/32 2.4 (chicago) Linux/64 2.4 (mir) Mac OS X (amazon)
* [svn-r12544] Description:Quincey Koziol2006-08-041-0/+2
| | | | | | | | | | | | | | Clean up compiler warnings/failures in test/links.c, especially when --disable-production flag used with --enable-group-revision Modify binary dumping in h5dump to clean up files created [a band-aid solution to not actually creating the files in the srcdir, but better than just leaving the files around... :-/ ] Tested: FreeBSD 4.11 (sleipnir) (w/ configure flags above) Too minor to require h5committest
* [svn-r12543] Description:Quincey Koziol2006-08-041-2/+2
| | | | | | | | | Re-run 'make trace' on this file, so API tracing doesn't issue compiler errors in development builds Tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r12533] Standardized the way path prefixes are passed to external links ↵James Laird2006-08-034-9/+94
| | | | | | using a LAPL. Now there are H5Pget and H5Pset functions for "elink_prefixes".
* [svn-r12531] Fixed a bug that occurred with 64-bit compilers. Types were ↵James Laird2006-08-032-9/+9
| | | | | | | used inconsistently (the nlinks property was an int in some places and a size_t elsewhere--it is now a size_t everywhere).
* [svn-r12528] Added User-Defined links to the library.James Laird2006-08-0245-1302/+3747
| | | | | | | | | | | | | | 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-r12525] Description:Quincey Koziol2006-08-0221-3145/+3003
| | | | | | | | | | | Refactored free space manager to use metadata cache for serialized free space sections. This speeds up the fractal heap test considerably... Tested: FreeBSD 4.11 (sleipnir) Linux 2.4/32 (chicago) Linux 2.4/64 (mir) Mac OS X (amazon)
* [svn-r12519] Fixed "make check-vfd"James Laird2006-07-311-2/+3
| | | | | | | | | | "make check-vfd" will now run all tests in the test directory with different file drivers (at least, all of those tests that use the testing framework's FAPL). Tests that fail will be skipped. This is not a perfect fix, but is better than nothing. Along with this change, check-vfd should be added to the Daily Tests.
* [svn-r12517] Description:Quincey Koziol2006-07-3111-351/+760
| | | | | | | | | | | | | | | Fix the last scattered bunch of problems with the object deletion code, which appears to be completely working now (for objects that are stored within heap blocks - standalone objects aren't implemented yet). Also, re-work the regression test to speed up some of the existing tests and add in 100-200 more combinations of tests - overall, its probably even slower than it was... :-/ Tested: FreeBSD 4.11 (sleipnir) Linux 2.4 (chicago) Mac OS X (amazon)
* [svn-r12504] Pedro Vicente Nunes2006-07-271-0/+4
| | | | | | | | | | | | bug fix calling h5tools_get_fapl running the mpio driver caused H5FD_pl_copy to fail silently in some conditions. a MPI call was made before MPI_Init. solution: corrected the MPI call to be made after MPI_Init and added error return conditions to H5FD_pl_copy and h5tools_get_fapl tested on copper parallel, mir, shanti
* [svn-r12495] Description:Quincey Koziol2006-07-256-564/+765
| | | | | | | | | | Checkpoint further work on object deletion code for fractal heaps. I believe everything is finally working for this sub-task. More regression tests soon, but I don't foresee any problems. Machines: FreeBSD 4.11 (sleipnir) Linux 2.4 (chicago)