summaryrefslogtreecommitdiffstats
path: root/test/fheap.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r14353] Description:Quincey Koziol2007-12-201-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | - 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-r14085] Description:Quincey Koziol2007-08-141-11/+4
| | | | | | | | | Refactor H5HF_size() size statistics code for fractal heap to conform to how the rest of the fractal heap routines work. Tested on: FreeBSD/32 6.2 (duty) Mac OS X/32 10.4.10 (amazon)
* [svn-r14083] Description:Quincey Koziol2007-08-141-0/+141
| | | | | | | | | | Correct problem with fractal heap's free space size usage gathering routine, which was "poisoning the cache" by loading an incorrectly initialized piece of metadata from the file. Tested on: FreeBSD/32 6.2 (duty) Mac OS X/32 6.2 (amazon)
* [svn-r13648] Description:Quincey Koziol2007-04-121-3/+3
| | | | | | | | | | Rename new error handling API routines from H5E<foo>_stack() to H5E<foo>2(). Tested on: Mac OS X/32 10.4.9 (amazon) FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty)
* [svn-r13580] Description:Quincey Koziol2007-04-031-1/+1
| | | | | | | | | | | | Add version # and flags to external link format (as fields in a single byte), in order to accomodate future changes/expansions. Tested on: Mac OS X/32 10.4.9 (amazon) Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2) FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty)
* [svn-r13367] Description:Quincey Koziol2007-02-211-5/+12
| | | | | | | | | | Allow "big" attributes to push attribute storage into "dense" form immediately, to accomodate storing the attribute. (This is only allowed in the "latest" version of the format). Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13282] Skip this test if the driver is direct and the express test mode isRaymond Lu2007-02-121-2/+9
| | | | set on because it takes too long on copper.
* [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-r13151] Description:Quincey Koziol2007-01-171-85/+85
| | | | | | | | Clean up compiler warnings, esp. on Windows Tested on: FreeBSD/32 6.2 (duty) Mac OS X/32 10.4.8 (amazon)
* [svn-r13115] Description:Quincey Koziol2007-01-061-0/+156
| | | | | | | | Allow a heap to be marked for deletion while it is still open and being accessed. (Blocks further opens though). Tested on: FreeBSD/32 6.1 (duty)
* [svn-r13067] Description:Quincey Koziol2006-12-181-0/+229
| | | | | | | | | | | | | | Add [quite] limited ability to update (ie. write) data for objects in fractal heap. Limited to just updating objects in managed heap blocks (i.e. not 'tiny' or 'huge' objects) and must be updated with data of the same length as the object in the heap. Updating objects in compressed heaps does work though [as long as the data isn't 'tiny' or 'huge']. Needed for changing the data value or the name of an attribute that is stored in dense or shared storage. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r13015] Description:Quincey Koziol2006-12-041-8/+8
| | | | | | | | | | | 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-r12989] Description:Quincey Koziol2006-11-281-0/+171
| | | | | | | | Remove incorrect sanity check & add test case that triggered it. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r12877] Description:Quincey Koziol2006-11-071-76/+76
| | | | | | | Clean up more compiler warnings. Tested on: Linux/64 2.6 (chicago2)
* [svn-r12823] Description:Quincey Koziol2006-10-291-44/+424
| | | | | | | | | | | | | Add support for compress heap blocks in "managed" heaps. Also, fix bug when the first direct block moves between having a parent and not having one (and vice versa), which occurs when the heap moves between having a direct root block and having an indirect root block. Tested on: FreeBSD 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-r12751] Purpose:Albert Cheng2006-10-121-25/+25
| | | | | | | | | | | | | | | | Bug fix (related to 544) Description: h5_get_file_size() was coded to return 0 if failed but file size can be 0. Changed the failure return value to -1 which is allowed by the returned type of off_t which is a signed type. Also changed the checking code of the stat call to just == 0 since that is how it is defined. Test: Could test it in heping only. Both Sol and Copper failed to compiled due to error in the Direct IO VFD code.
* [svn-r12706] Description:Quincey Koziol2006-10-021-23/+23
| | | | | | | | | 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-r12702] Description:Quincey Koziol2006-10-021-2/+38
| | | | | | | | | | | | | | | | | Add test to fractal heaps to exercise issues with opening the same heap through two different file handles. Fix issues with file handle contexts in metadata cache callbacks for heap components. Fix bug in file close handling where cached information was being invalidated even when another file handle was open to the file. Tested on: FreeBSD/32 4.11 (sleipnir) w/threadsafe Linux/64 2.4 (mir) w/1.6 compat Linux/32 2.4 (heping) w/FORTRAN & C++ Mac OSX/32 10.4.8 (amazon)
* [svn-r12682] Description:Quincey Koziol2006-09-261-1/+1
| | | | | | | Make Windows64 compiler happy by initializing variable... :-) Tested on: None - just eyeballed (very minor)
* [svn-r12666] Description:Quincey Koziol2006-09-141-1/+1
| | | | | | | Initialize local variable that is causing compiler problems on Windows/64 Tested on: None - too trivial
* [svn-r12655] Description:Quincey Koziol2006-09-111-0/+73
| | | | | | | | | | | | Add "op" routine to perform operation on heap object "in situ", to allow for faster operations on dense links during B-tree traversal & lookup. Refactor the "read" routine to use the internal version of the "op" routine, to keep the code duplication as low as possible. Tested on: Mac OS X.4/PPC (amazon) Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r12627] Skipped links and fheap tests when stdio file driver is used.James Laird2006-08-241-1/+1
| | | | | | | | | These errors should be investigated more thoroughly later. The underlying problem in links.c seems to be that files opened multiple times don't share the same H5F_shared_t struct. Perhaps identifying when this is the case would be helpful? Tested on mir.
* [svn-r12611] Description:Quincey Koziol2006-08-221-2/+3
| | | | | | | | Remove unused flag byte from fractal heap metadata on disk. Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r12610] Description:Quincey Koziol2006-08-221-8/+12
| | | | | | | | | | | | | | Add support for checksumming fractal heaps. This is always enabled for the heap header and indirect blocks (as they are "pure" metadata) and is optional for direct blocks, since they may be used for "raw" data. Also, rearrange direct block routines in H5HFcache.c to be in a more sensible location in the file. (probably should have been a separate checkin, since the diffs are mostly useless for this checkin... *sigh*) Tested on: Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r12603] Description:Quincey Koziol2006-08-211-171/+570
| | | | | | | | | | | | | | | | | | | 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-r12598] Description:Quincey Koziol2006-08-191-1/+1
| | | | | | | | | | | | | | - 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-r12592] Description:Quincey Koziol2006-08-171-19/+1921
| | | | | | | | | | | | | | | | | | | | | 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-r12575] Description:Quincey Koziol2006-08-141-33/+151
| | | | | | | | | | | | | 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-154/+1007
| | | | | | | | | | | | 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-r12565] Description:Quincey Koziol2006-08-111-1/+1
| | | | | | | | | | | | | | 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-101-425/+589
| | | | | | | | | | | | 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-r12552] Description:Quincey Koziol2006-08-071-115/+46
| | | | | | | | | | | 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-071-10/+8
| | | | | | | | | | | 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-071-1/+1
| | | | | | | | | | | 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-071-6512/+1386
| | | | | | | | | | 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-r12519] Fixed "make check-vfd"James Laird2006-07-311-0/+11
| | | | | | | | | | "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-311-3223/+6337
| | | | | | | | | | | | | | | 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-r12495] Description:Quincey Koziol2006-07-251-7/+7
| | | | | | | | | | 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)
* [svn-r12491] Description:Quincey Koziol2006-07-221-149/+441
| | | | | | | | | | Refactored object deletion code for fractal heap to fix scaling problems. Passing all previous tests again now. Tested: FreeBSD 4.11 (sleipnir) Linux 2.4 (chicago) Mac OS X (amazon)
* [svn-r12474] Quincey Koziol2006-07-151-2/+2
| | | | | | | | Clean up some compiler warnings. Tested on: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r12449] Purpose:Quincey Koziol2006-07-011-11/+8
| | | | | | | | | | | | | Code checkpoint Description: Revise fractal heap code to support deletions in up to 2nd level deep indirect blocks. Needs some revisions to support deeper indirect blocks... Platforms tested: FreeBSD 4.11 (sleipnir) Linux 2.4 (chicago) h5committest
* [svn-r12443] Purpose:Albert Cheng2006-06-281-32/+28
| | | | | | | | | | | | | | | Added/adjusted Test Express mode. Description: btree2: Added TestExpress mode to skip some long tests (the 5th recursive and the two random tests.) fheap: Changed the express mode messages to be more informative. Un-excluded some tests from express mode. Platforms tested: Red Storm.
* [svn-r12440] Purpose:Quincey Koziol2006-06-271-19/+19
| | | | | | | | | | | Code cleanup Description: Trim trailing whitespace in Makefile.am and C/C++ source files to make diffing changes easier. Platforms tested: None necessary, whitespace only change
* [svn-r12432] Purpose:James Laird2006-06-211-4/+4
| | | | | | | | | | | | | | Bug fix Description: Since the new default Express level is 1, some fheap tests were being skipped. Solution: At least temporarily, fheap now skips these tests if it is run at express level 2 or greater. Platforms tested: mir
* [svn-r12424] Purpose:Quincey Koziol2006-06-191-1322/+3802
| | | | | | | | | | | | | | | | | Code checkpoint Description: Add in more new features for the fractal heap code, mostly bringing in more ability for deleting objects (which isn't completely working yet). Also, checkpoint free space manager code, which is essentially complete (although it needs some more work after the metadata cache has some additional features) Platforms tested: FreeBSD 4.11 (sleipnir) Linux 2.4 (chicago) h5committest
* [svn-r12386] Purpose:Albert Cheng2006-05-311-27/+42
| | | | | | | | | | | | | | | | | | Added Exress Test mode. Description: The test takes a long time to run. It tempted developers to skip the h5committest. Solution: Added Express Test mode to allow tester an option to run it in express mode (shorter time.) There are already encoded QAK macro which skips many tests. Follow that pattern to skip tests when HDF5TestExpress is set. Platforms tested: Tested in heping, both serial and parallel.
* [svn-r12362] Purpose:Quincey Koziol2006-05-221-11/+1046
| | | | | | | | | | | | | | | | | | | | | Code checkpoint Description: Update fractal heap code to allow objects to be deleted Fix bugs in fractal heap object insertion Improve free space manager code to allow sections to be merged and shrink the container Another try at making the Windows compilers happy... Platforms tested: FreeBSD 4.11 (sleipnir) Mac OS X.4/PPC (amazon) Linux 2.4 (chicago & heping) Solaris 2.9 (shanti) AIX 5.? (copper) w/parallel
* [svn-r12349] Purpose:Quincey Koziol2006-05-151-393/+1847
| | | | | | | | | | | | | | | Code checkpoint Description: Checkpoint fractal heap improvements, as well as move the free space manager code that it's using into a separate package. Platforms tested: FreeBSD 4.11 (sleipnir) Linux 2.4/64 (mir) w/C++ & FORTRAN Linux 2.4/32 (heping) Solaris 2.9 (shanti) AIX 5.? (copper) w/FORTRAN & parallel
* [svn-r12317] Purpose:Quincey Koziol2006-04-301-553/+3601
| | | | | | | | | | | | | | | | Code checkpoint Description: More progress on fractal heap, can now re-open an existing heap, although the free space algorithm still needs work. Also, use the new "pinned entry" metadata cache code. Platforms tested: FreeBSD 4.11 (sleipnir) Linux 2.4 (heping) Solaris 9 (shanti) Linux 2.4/64 (mir)
* [svn-r12259] Purpose:Quincey Koziol2006-04-151-3/+288
| | | | | | | | | | | | | Code checkpoint Description: Add more regression tests for odd insertion patterns Platforms tested: FreeBSD 4.11 (sleipnir) Linux 2.4 (heping) Linux 2.4/64 (mir) Solaris 2.9 (shanti)