| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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...
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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)
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
H5C_insert_entry() allowing
insertion and pinning of a cache entry in one call.
h5commit tested
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
| |
Correct parameter flipped in memset call (Thanks Peter!)
Tested on:
Very minor, just eyeballed.
|
|
|
|
|
|
|
|
|
| |
VFD is being used
when a test is run.
Running reconfigure also regenerated error header files (because someone edited
them manually?).
|
|
|
|
|
|
|
|
|
|
|
| |
upgrade.
Description:
Changed the error report of read and write to HSYS_GOTO_ERROR to report
system error messages.
Platforms tested:
heping, osage, copper.
|
|
|
|
|
|
|
| |
Bug fix and maintenance
Checked in James fix and did more code refactoring.
Platforms tested: heping, copper and shanti (and X1 for the bug fix)
|
|
|
|
|
|
|
|
|
|
|
| |
-O3 flag causes compilation problems on most of the platforms with Intel compiler.
The problem exists in all vesrions of icc compiler up to the newest 9.1
Solution:
Use less agressive default setting O2 to avoid headache
Platforms tested: Linux 2.6 ia64 at UCAR (hal), cobalt (NCSA)
|
|
|
|
|
|
|
|
| |
Maintenance for alpha5 release; brought command files up-to-date.
Platforms tested:
VMS server. Compilation, C++, F90 and tools tests passed;
C tests are still running.
|
|
|
|
|
|
|
|
| |
code recently committed.
Test C,C++, fortran, debug,debug dll, release and release dll.
MSVS 6.0 + Compaq Visual fortran 6.6c
|
|
|
|
| |
Tables in C and C++.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
| |
Refactored code in the main function to improve future maintenance and code readability.
Platforms tested:
heping, shanti (64-bit)
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
Correct remaining compilation errors when debugging asserts are turned on
in free space manager.
Tested in:
FreeBSD 4.11 (sleipnir)
Too minor for h5committest
|
|
|
|
|
|
|
|
| |
Removed free space manager from "enable-debug=all" list of flags, it's
not really designed for "user level" debugging.
Tested on:
FreeBSD 4.11 (sleipnir)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
| |
Correct some typos in comments
Testing:
None needed
|
|
|
|
|
|
|
|
|
| |
Added files created by James for user-define links to the command files
Added new script check_h5jam.com to test h5jam/h5unjam; test script
needs more work.
Platforms tested:
VMS server and test script only.
|
|
|
|
|
|
|
|
|
|
| |
Daily test for ttsafe failed on several machines due to the changed error stack.
Solution:
Updated the source code to use new error stack.
Platforms tested:
shanti
|
|
|
|
|
|
|
| |
2. Used to workaround solution to fix the cchunk10 failure caused by the MPICH bug
Machine test:
heping, mir
|
|
|
|
|
|
|
|
| |
independent IO with file setview.
To activite this test,
add the command option -i.
For example, at IBM AIX, type "poe testphdf5 -i" will test the library with independent IO with file setview. It simply replaces all the collective IO tests with independent IO with file setview.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
| |
locations.
|
|
|
|
| |
Add external link test file
|