| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Updated copyright statement in files which hadn't been updated yet.
Platforms tested:
Linux (Only comment change)
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix & Update
Description:
FPHDF5 was creating files which didn't have the EOA field in the
superblock set correctly. It turns out that the SAP was keeping this
information to itself instead of giving it to the client processes.
Naughty SAP!
Solution:
Have the SAP send this information back to the clients so that they
can update the superblock as necessary. This now creates a file (with
just the root group) that looks correct! Only problem is that there's
extra file space being allocated. Also, at program termination,
there's an infinite loop...
Platforms tested:
H5committests (run by hand on burrwhite, arabica, and modi4)
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix/code cleanup/new feature
Description:
Fix h5debug to work correctly again, with all the changes over the past
few months.
Improved and cleaned up debugging output available in h5debug.
Platforms tested:
FreeBSD 4.7 (sleipnir)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix and Update
Description:
From Quincey's comments on the code I checked in last night:
- In H5F_close call, the "private" processes should call the
H5F_flush with the "CLEAR_ONLY" flag.
- There's no need for a special case for FPHDF5 in the
FD_real_alloc function since FPHDF5 doesn't define an alloc
function.
- The return type of H5Pset_fapl_fphdf5 should be herr_t instead
of hid_t. I don't know how it got that way in the first place.
- The variable names for MPI types and the structure typedefs
should be switched: H5FP_request/H5FP_request_t to
H5FP_request_t/H5FP_request and so on.
- In the H5FP.c module, I was commiting the H5FP_request MPI
datatype but using the wrong offset field...
Platforms tested:
Linux...will test on others, but these are mostly FPHDF5 changes.
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bug Fix
Description:
MPI stuff was getting into the non-parallel headers.
Solution:
#ifdefed the headers out if H5_HAVE_FPHDF5 isn't defined...
Platforms tested:
Sol, Modi4
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
When doing an allocation, check to see, if it's an FPHDF5
driver, if only the captain should be performing the allocation
Platforms tested:
Linux, Modi4, Sol
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Have the FPHDF5 module initialized on startup. Have only the captain
process perform certain functions (like flushing during an F_close
call or allocating the superblock).
H5Fistore needed a few checks to see if it was working with an FPHDF5
driver. Done similarly to how MPI and MPIPOSIX drivers are checked..
Platforms tested:
Linux, Modi4, Sol
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Why not?
Description:
Lots of changes. This is basically a "commit because there are a lot
of changes" commit.
The server now acts more like a metadata caching server. The dumping
mechanism finally works (I think). At least in the test I did it
seemed to write things back. There's a new MPI TAG to use
(H5FP_TAG_DUMP) when dumping things. Changed a lot of the functions
from passing a structure around to just passing a pointer to that
structure. I have no clue why I did it the previous way...
Um...And more synchronization stuff between the client and server.
The protocol between the two was being broke in a couple of places.
We're getting closer!
Platforms tested:
Linux (probably Modi4 too)
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
The MPI datatypes we were committing weren't using the correct
structure.
Also, we needed to know the rank of the captain process inside of the
BARRIER COMM.
Solution:
Changed to use the correct structure.
Got the Captain process's rank and Bcast it to the "privates".
Platforms tested:
Linux
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
More changes to the FPHDF5 file driver. Too many to mention here.
Some highlights:
- Addition of lock/unlock methods to the driver, though they
aren't implemented fully just yet.
- Extra query functions to determine various things about the
file. (If this is the captain process, etc)
- Fixes to make things work...
Platforms tested:
Linux
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New Feature
Description:
Added support for the lock and unlock function calls for file
drivers. Only FPHDF5 uses this feature. All of these drivers don't
define lock or unlock methods.
Platforms tested:
Linux, Modi4, Sol
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
| |
New Feature
Description:
Added function pointers for the lock and unlock functions.
Platforms tested:
Linux, Modi4, Sol
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Added support for FPHDF5 wherever there was support for MPI/IO and/or
MPIPOSIX.
Platforms tested:
Linux, Modi4, Sol
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Cleanup
Description:
The H5O_FPHDF5 object was left in this header file by mistake when
the H5Ofphdf5 module was removed
Solution:
Removed it.
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Finish code cleanup
Description:
Wrap up the conversion of H5F_flush's multiple boolean flags into a single
bitfield of flags by pushing the flags down into the H5AC_flush and
H5F_istore_flush routines.
Also, changed the flags from H5_FLUSH_<foo> to H5F_FLUSH_<foo> to be more
consistent with rest of library.
And reverted the changes to H5FDflush and H5FD_flush routines.
Platforms tested:
FreeBSD 4.7 (sleipnir)
Solaris 5.8 (sol)
IRIX64 6.5 (modi4) w/parallel
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Refactoring of Flush Logic
Description:
The Flushing logic passed in multiple flags to indicate what type of
flush it was: closing, invalidate, alloc only. This made extending
the function of the flush logic to handle other flags annoying.
Solution:
I changed it to be just one bitmasked flag to indicate what type of
flushing to do. I also added the CLEAR_ONLY flag, which will be used
in the FPHDF5 stuff.
Platforms tested:
h5committest doesn't work for me (my environment isn't setup on the
other machines I guess). I tested it manually:
Linux parallel & C++
Sol Fortran
Modi4 parallel & Fortran.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Potential bug fix.
Description:
The code to rotate the metadata writing process may not be compiled
correctly in all cases.
Solution:
Change from using "++mpi_round" to "mpi_round+1"
Platforms tested:
Eyeballed...
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Add B-tree node debugging routine for symbol table nodes (i.e. groups)
Platforms tested:
FreeBSD 4.7 (sleipnir)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New internal feature
Description:
Add internal API for building and working with heaps (H5HP). This will be
used for the LRU algorithm in the new metadata cache code.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}
FreeBSD 4.7 (sleipnir)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code/comment cleanup
Description:
Made more information about reference-counted strings private to the
H5RS package by trimming the typedef used in H5RSprivate.h and switching
from using macros for a couple of operations to using functions.
Updated copyright information for a few of these files.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}
|
|
|
|
|
|
|
| |
Comment cleanup
Description:
Corrected comment information.
|
|
|
|
|
|
|
| |
Code cleanup (sorta)
Description:
Updated to new copyright information as I browsed these files.
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
Private header file was included in a public header file by mistake.
Solution:
Put the private header file into the .c module instead.
Platforms tested:
Linux 2.4 (see, I really did test it).
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Changed the H5FPinit() function to accept pointers to what the SAP
Comm and SAP Barrier Comm should be assigned to. This is the first
step in hopefully getting rid of the global versions of them
altogether (but we'll see).
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Final support addition for FPHDF5. Wherever there was an equivalent
MPIO or MPIO/POSIX call/check, I placed an FPHDF5 call/check there as
well, with the appropriate #ifdefs in place.
The hdf5.h is updated with the H5FDfphdf5.h driver #include.
Platforms tested:
Linux & Modi4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Big change to the H5FD.c module:
- Split apart H5FD_alloc and H5FD_free. H5FD_alloc was huge and
H5FD_free had a freeing of the freelist part which I needed to
call from the SAP.
- Added support for FPHDF5. If it's a client, then it sends the
allocation or free request to the SAP. The SAP will call the
same code, but it'll actually do the allocation/freeing in that
case.
Platforms tested:
Linux & Modi4
|
|
|
|
|
|
|
|
| |
Update
Description:
Added support for allocating and freeing space in the file.
Platforms tested:
Linux & Modi4
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Added support for the allocation and freeing of space in the file.
This information is kept on the Server.
Platforms tested:
Linux & Modi4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Changed hard-coded magic number (32) for the maximum number of filters
in a filter pipeline to use a symbolic constant (H5Z_MAX_NFILTERS)
instead. This limit could (and probably should) be removed to allow an
unlimited number of filters in a pipeline.
Platforms tested:
FreeBSD 4.7 (sleipnir)
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Update dependencies and clean up a few warnings.
Platforms tested:
Linux 2.2 (eirene) w/parallel
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up miscellaneous warnings which have crept into the code.
Fix "_POSIX_C_SOURCE not defined" warning on FreeBSD.
Adjust gcc compiler flags to be more concise for production mode.
Refactor the H5O code so that there is a stronger boundary between code
in the H5O package and code in the library which just calls H5O routines.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}
FreeBSD 4.7 (sleipnir) serial & parallel and gcc 2.95.4 & gcc 3.2.2
Misc. update:
Update MANIFEST if you add or remove any file.
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
Correct compile errors when configured with --enable-debug=all.
Platforms tested:
FreeBSD 4.7 (sleipnir) serial & parallel
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Since metadata doesn't use a "set view" to do I/O, I moved the check
for the use_set_view variable down into the "real" write routine.
Also added a check for when the server is dumping metadata to the
file. in that case, don't write this information to the SAP...
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Added the flush function.
Modified so that it calls the FPHDF5 code for reading and writing.
This involved splitting the write function up into three different
parts to avoid lame goto's. There's some code which will copy a data
xfer property list and add in there that we're "dumping" the data so
that we can recall this layer when the SAP dumps metadata to a
process...
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Added a "metadata flush" function which allows the clients to force a
dump of the metadata from the SAP. This should be done before closing
the file.
Modified the information stored on an "open" of the file. The
filename is unnecessary, so I got rid of it.
More integration with the File Driver code: Passing in a data xfer
property list.
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
| |
Purpose:
Change feature
Description:
Switch to Fletcher32 from Adler32 checksum
Platforms tested:
arabica, eirene, modi4
Misc. update:
MANIFEST and RELEASE.txt updated.
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
Pesky little thing: H5GOTO_ERROR was returning NULL instead of FAIL.
Solution:
Changed accordingly
Platforms tested:
Linux.
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up some compiler warnings
Platforms tested:
FreeBSD 4.7 (sleipnir)
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
Some of the error conditions in the H5GOTO_ERROR macros were NULL
instead of FAIL.
Solution:
Changed accordingly.
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup.
Description:
Break up the ~9350 line H5T.c module into smaller pieces, which contain
code for a particular feature or support for a datatype class.
This should make the "main" H5T code (still in H5T.c) easier to support,
as well as removing some of the "minor" routines from the user applications
which don't use them (my rough estimates show about 4% reduction (~30K on
a FreeBSD machine) in optimized, staticly-linked binaries for very simple
programs)
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}
FreeBSD 4.7 (sleipnir)
Misc. update:
Update MANIFEST
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
Missed adding the dxpl to the 'flush' VFL callback in the stream driver,
causing the C++ compiles to fail.
Solution:
Added the dxpl parameter.
Platforms tested:
FreeBSD 4.7 (sleipnir) w/CC=g++
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Folded in Quincey's changes to the caching stuff. (Stole the code
from the H5FDmpio driver).
Roughed in some code for doing a read from the SAP. Also roughed in
code for doing a write. However, the write requires an OID, which I'm
not sure how to pass down into the driver (maybe via the
dxpl_id?...but then it has always to be set before calling one of
these routines...).
Removed some of the global variables which were there because of the
FPHDF5 stuff...
Removed the H5Ofphdf5.* stuff from the Makefile.in, since I'm pretty
sure it's going away and I don't want to waste time updating that
module if that's the case...so just don't compile it.
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
| |
Fix
Description:
The extra field I put in this structure wasn't needed.
Solution:
Placed it in the file driver's structure instead.
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update
Description:
Removed some obsolete fields - such as the AC_subst_t object ID -
which isn't needed. Fixed so that there are fewer global variables.
There are still some left, however. Modified the client and server
code so that it handles read requests better. There were some flaws
in how this was done before (it was calling H5FD_read() instead of
just returning the status that it couldn't find the metadata in the
cache).
Platforms tested:
Linux
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update feature
Description:
Relax collective constraint for API functions which only read metadata
from a file.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}
FreeBSD 4.7 w/parallel
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
Metadata cache in parallel I/O can cause hangs in applications which
perform independent I/O on chunked datasets, because the metadata cache
can attempt to flush out dirty metadata from only a single process, instead
of collectively from all processes.
Solution:
Pass a dataset transfer property list down from every API function which
could possibly trigger metadata I/O.
Then, split the metadata cache into two sets of entries to allow dirty
metadata to be set aside when a hash table collision occurs during
independent I/O.
Platforms tested:
Tested h5committest {arabica (fortran), eirene (fortran, C++)
modi4 (parallel, fortran)}
FreeBSD 4.7 (sleipnir) serial & parallel
Misc. update:
Updated release_docs/RELEASE
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
The "system scope" for threads isn't supported on all platforms.
Solution:
Add detection of this feature to the configure script and check for
"H5_HAVE_SYSTEM_SCOPE_THREADS" in the appropriate places.
Platforms tested:
modi4 w/threadsafe
|