summaryrefslogtreecommitdiffstats
path: root/src/H5FS.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r15800] Description:Quincey Koziol2008-10-071-118/+344
| | | | | | | | | | | | | | | | | | | | | | | Bring file free space branch changes through r15795 into trunk, which includes a fair bit of code cleanup & rearrangement along with a couple of bug fixes also. 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-r15628] Description:Quincey Koziol2008-09-161-3/+3
| | | | | | | | | | | | | 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-r15510] Description:Quincey Koziol2008-08-211-2/+2
| | | | | | | | Clean up warnings & formatting Tested on: Mac OS X/32 10.5.4 (amazon) More tests forthcoming
* [svn-r14353] Description:Quincey Koziol2007-12-201-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | - 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-r14086] Description:Quincey Koziol2007-08-141-5/+17
| | | | | | | | | | | | | | Correct error in metadata cache entry logic for free space objects, where a free space header could unpin its entry in the cache, even when the sections for that free space manager were still in the cache and technically holding the header pinned. Fix problem by checking for the section info in the cache before allowing the header to unpin its cache entry. Tested on: FreeBSD/32 6.2 (duty) Mac OS X/32 10.4.10 (amazon) Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2)
* [svn-r14084] Description:Quincey Koziol2007-08-141-1/+1
| | | | | | | | | | Change metadata cache protect access from "write" to "read" for the free space header, which follows the same pattern as the fractal heap's use of the metadata cache. Tested on: FreeBSD/32 6.2 (duty) Mac OS X/32 10.4.10 (amazon)
* [svn-r14083] Description:Quincey Koziol2007-08-141-24/+5
| | | | | | | | | | 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-r13984] Description:Quincey Koziol2007-07-171-46/+50
| | | | | | | | | | | 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/+47
| | | | | | | | | | | | | | 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-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-r12700] Alert:Quincey Koziol2006-10-021-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-r12601] Description:Quincey Koziol2006-08-211-0/+6
| | | | | | | | | | | | 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-r12597] Description:Quincey Koziol2006-08-191-72/+34
| | | | | | | | | | | 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-r12567] Description:Quincey Koziol2006-08-121-3/+0
| | | | | | | | | 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-r12549] Description:Quincey Koziol2006-08-071-2/+28
| | | | | | | | | | 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-r12525] Description:Quincey Koziol2006-08-021-2924/+176
| | | | | | | | | | | 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-r12517] Description:Quincey Koziol2006-07-311-85/+102
| | | | | | | | | | | | | | | 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-65/+166
| | | | | | | | | | 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-164/+733
| | | | | | | | | | 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-r12449] Purpose:Quincey Koziol2006-07-011-1/+22
| | | | | | | | | | | | | 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-r12440] Purpose:Quincey Koziol2006-06-271-1/+1
| | | | | | | | | | | 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-r12424] Purpose:Quincey Koziol2006-06-191-124/+255
| | | | | | | | | | | | | | | | | 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-r12364] Purpose:Quincey Koziol2006-05-231-2/+2
| | | | | | | | | | | Portability fix Description: Try again to placate the VS 6.0 compiler Platforms tested: Linux 2.4 (chicago) Too minor to require h5committest
* [svn-r12362] Purpose:Quincey Koziol2006-05-221-256/+775
| | | | | | | | | | | | | | | | | | | | | 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-r12355] Purpose:Quincey Koziol2006-05-181-3/+3
| | | | | | | | | | Bug fix Description: Avoid using double -> hsize_t conversion, to placate VS 6.0 Platforms tested: None, just eyeballed...
* [svn-r12349] Purpose:Quincey Koziol2006-05-151-0/+1887
| | | | | | | | | | | | | | | 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-r12319] Quincey Koziol2006-05-021-321/+0
| | | | | | | | | | | | Purpose: Rename feature Description: Rename the "function stack" debugging feature to "call stack", so the H5FS* prefix can be used for free space management code. Platforms tested: Not yet, but soon..
* [svn-r11733] Purpose:Quincey Koziol2005-11-161-1/+9
| | | | | | | | | | | | | | | | | | Code cleanup Description: Added some comments about the thread-specific memory for the error and function stacks. Changed H5close() to not use the function stack (since it causes it to be re-enabled after shutting it down) Changed thread-safe semaphore code to not use dynamicly allocated memory. Platforms tested: FreeBSD 4.11 (sleipnir) Linux 2.4 Too minor to require h5committest
* [svn-r11402] Purpose: MaintenanceElena Pourmal2005-09-131-1/+1
| | | | | | | | | | | | Description: Compiler complained about const type * variables that were used in the functions that require "non const" parameters. Compilation failed. Solution: Use casting to avoid compilation errors. Platforms tested: SX-6, heping and mir with new g95 Misc. update:
* [svn-r11282] Purpose:Quincey Koziol2005-08-201-9/+108
| | | | | | | | | | | | | | | | | New debugging feature Description: Add some code to track where memory from the internal free list allocator is allocated within the library. It's not quite ready for "prime time" yet, but it's close enough to be useful. This is disabled by default and requires the H5FL_TRACK macro in src/H5FLprivate.h to be uncommented to activate during debugging. Platforms tested: FreeBSD 4.11 (sleipnir) Linux 2.4 Too minor to require full h5committest
* [svn-r11245] Purpose:Quincey Koziol2005-08-131-8/+8
| | | | | | | | | | | | | | | | | | | | Code cleanup Description: Trim trailing whitespace, which is making 'diff'ing the two branches difficult. Solution: Ran this script in each directory: foreach f (*.[ch] *.cpp) sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f end Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r9857] Purpose: MaintenanceElena Pourmal2005-01-221-3/+0
| | | | | | | | | | | | | | Description: Removed PABLO from the source Solution: Platforms tested: arabica with 64-bit, copper with parallel, heping with GNU C and C++ and PGI fortran (but I disabled hl, there is some weird problem only on heping: F9XMODFLAG is not propagated to the Makefile files Misc. update:
* [svn-r9761] Purpose:Albert Cheng2005-01-061-0/+1
| | | | | | | | | | | | | | | | Bug fix. Description: threadsafe test (ttsafe) would seg-fault if --disable-production --enable-debug mode is used. Reason was that the fstack.nused field was not initialized when created. Solution: Init new fstack.nused with 0. Platforms tested: Tested in mir, using development/debug mode. Did not "h5committested" as change is trivial and limited to threadsafe mode.
* [svn-r9727] Purpose:Quincey Koziol2004-12-291-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-) Description: Generally speaking, this is the "signed->unsigned" change to selections. However, in the process of merging code back, things got stickier and stickier until I ended up doing a big "sync the two branches up" operation. So... I brought back all the "infrastructure" fixes from the development branch to the release branch (which I think were actually making some improvement in performance) as well as fixed several bugs which had been fixed in one branch, but not the other. I've also tagged the repository before making this checkin with the label "before_signed_unsigned_changes". Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel & fphdf5 FreeBSD 4.10 (sleipnir) w/threadsafe FreeBSD 4.10 (sleipnir) w/backward compatibility Solaris 2.7 (arabica) w/"purify options" Solaris 2.8 (sol) w/FORTRAN & C++ AIX 5.x (copper) w/parallel & FORTRAN IRIX64 6.5 (modi4) w/FORTRAN Linux 2.4 (heping) w/FORTRAN & C++ Misc. update:
* [svn-r8731] Purpose:Quincey Koziol2004-06-231-7/+4
| | | | | | | | | | | | | | | Code cleanup & minor optimization Description: Re-work the way interface initialization routines are specified in the library to avoid the overhead of checking for them in routines where there is no interface initialization routine. This cleans up warnings with gcc 3.4, reduces the library binary size a bit (about 2-3%) and should speedup the library's execution slightly. Platforms tested: FreeBSD 4.10 (sleipnir) w/gcc34 h5committest
* [svn-r7845] Purpose:Quincey Koziol2003-11-131-2/+1
| | | | | | | | | | | | | | | | Bug fix. Description: The new routines added for H5MM_[m|c]alloc were causing the function stack code to infinitely recurse while allocating room for the thread-specific information (when thread-safety was turned on). Solution: Call HDmalloc directly instead of H5MM_malloc Platforms tested: FreeBSD 4.9 (sleipnir) Changed are not tested in h5committest
* [svn-r7301] Purpose:Quincey Koziol2003-08-081-2/+0
| | | | | | | | | | Code cleanup Description: Remove comments and redundant code. Platforms tested: h5committested
* [svn-r7265] *** empty log message ***Raymond Lu2003-07-261-1/+3
|
* [svn-r6431] Purpose:Quincey Koziol2003-02-241-6/+0
| | | | | | | Comment cleanup Description: Corrected comment information.
* [svn-r6383] Purpose:Quincey Koziol2003-02-071-0/+223
New feature for developers. Description: Added "function stack" tracing to library. This allows developers (there is no public API) to call H5FS_print within the library and get a listing of the functions traversed to reach that point in the library. Eventually, I may add support for reporting the parameters to each function also... Mainly for debugging parallel I/O programs, but I think it will come in handy in other cases also. The function stack tracking is controlled with a configure switch: --enable-funcstack, which defaults to enabled currently. When we branch for 1.6, we should change the default setting on the branch to be disabled. Also, added a destructor to the thread-specific keys when thread-safety is turned on in the library. Otherwise, they were leaking memory and causing difficult to debug errors in threaded programs (like the test/ttsafe test). Platforms tested: Tested h5committest {arabica (fortran), eirene (fortran, C++) modi4 (parallel, fortran)} FreeBSD 4.7 (sleipnir) w/thread-safety enabled. Misc. update: Updated MANIFEST with new files added (src/H5FS.c & src/H5FDprivate.h) Update release_docs/RELEASE with thread-safety bug fix.