summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r6519] Purpose:Quincey Koziol2003-03-225-67/+85
| | | | | | | | | | | | | 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)
* [svn-r6514] Purpose:Bill Wendling2003-03-207-147/+146
| | | | | | | | | | | | | | | | | | | | | | | | | 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:
* [svn-r6507] Purpose:Bill Wendling2003-03-192-0/+9
| | | | | | | | | | | | | | | 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:
* [svn-r6506] Purpose:Bill Wendling2003-03-191-7/+43
| | | | | | | | | | | | | 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:
* [svn-r6505] Purpose:Bill Wendling2003-03-193-67/+179
| | | | | | | | | | | | | | | | | 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:
* [svn-r6504] Purpose:Bill Wendling2003-03-193-176/+201
| | | | | | | | | | | | | | | | | | | | | | | | | 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:
* [svn-r6503] Purpose:Bill Wendling2003-03-191-24/+41
| | | | | | | | | | | | | | | | | | | | | 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:
* [svn-r6502] Purpose:Bill Wendling2003-03-192-58/+154
| | | | | | | | | | | | | | | | | | | 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:
* [svn-r6501] Purpose:Bill Wendling2003-03-1911-63/+172
| | | | | | | | | | | | | | 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:
* [svn-r6500] Purpose:Bill Wendling2003-03-191-57/+87
| | | | | | | | | | | | New Feature Description: Added function pointers for the lock and unlock functions. Platforms tested: Linux, Modi4, Sol Misc. update:
* [svn-r6499] Purpose:Bill Wendling2003-03-191-17/+18
| | | | | | | | | | | | | Update Description: Added support for FPHDF5 wherever there was support for MPI/IO and/or MPIPOSIX. Platforms tested: Linux, Modi4, Sol Misc. update:
* [svn-r6498] Purpose:Bill Wendling2003-03-191-8/+0
| | | | | | | | | | | | | | 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
* [svn-r6497] Purpose:Quincey Koziol2003-03-1912-56/+73
| | | | | | | | | | | | | | | | | | | 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:
* [svn-r6496] Purpose:Bill Wendling2003-03-194-85/+159
| | | | | | | | | | | | | | | | | | | | | | 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.
* [svn-r6483] Snapshot version 1.5 release 49HDF Admin2003-03-151-2/+2
|
* [svn-r6468] Purpose:Quincey Koziol2003-03-062-2/+2
| | | | | | | | | | | | | | 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...
* [svn-r6452] Purpose:Quincey Koziol2003-03-035-12/+70
| | | | | | | | | | Code cleanup Description: Add B-tree node debugging routine for symbol table nodes (i.e. groups) Platforms tested: FreeBSD 4.7 (sleipnir)
* [svn-r6446] Snapshot version 1.5 release 48HDF Admin2003-03-011-2/+2
|
* [svn-r6436] Purpose:Quincey Koziol2003-02-243-9/+1014
| | | | | | | | | | | | | 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)
* [svn-r6433] Purpose:Quincey Koziol2003-02-245-63/+157
| | | | | | | | | | | | | | | 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)}
* [svn-r6431] Purpose:Quincey Koziol2003-02-242-12/+0
| | | | | | | Comment cleanup Description: Corrected comment information.
* [svn-r6430] Purpose:Quincey Koziol2003-02-247-50/+103
| | | | | | | Code cleanup (sorta) Description: Updated to new copyright information as I browsed these files.
* [svn-r6428] Purpose:Bill Wendling2003-02-222-1/+1
| | | | | | | | | | 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).
* [svn-r6427] Purpose:Bill Wendling2003-02-212-5/+10
| | | | | | | | | | | 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
* [svn-r6426] Purpose:Bill Wendling2003-02-216-113/+209
| | | | | | | | | | | | 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
* [svn-r6425] Purpose:Bill Wendling2003-02-213-390/+723
| | | | | | | | | | | | | | | | 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
* [svn-r6424] Purpose:Bill Wendling2003-02-212-17/+127
| | | | | | | | Update Description: Added support for allocating and freeing space in the file. Platforms tested: Linux & Modi4
* [svn-r6423] Purpose:Bill Wendling2003-02-216-29/+293
| | | | | | | | | 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
* [svn-r6415] Purpose:Quincey Koziol2003-02-185-28/+58
| | | | | | | | | | | | | 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)
* [svn-r6412] Purpose:Quincey Koziol2003-02-176-391/+1249
| | | | | | | | | | Code cleanup Description: Update dependencies and clean up a few warnings. Platforms tested: Linux 2.2 (eirene) w/parallel
* [svn-r6411] Purpose:Quincey Koziol2003-02-1740-1669/+1385
| | | | | | | | | | | | | | | | | | | | | | 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.
* [svn-r6410] Purpose:Quincey Koziol2003-02-172-14/+24
| | | | | | | | | | Bug fix. Description: Correct compile errors when configured with --enable-debug=all. Platforms tested: FreeBSD 4.7 (sleipnir) serial & parallel
* [svn-r6407] Snapshot version 1.5 release 47HDF Admin2003-02-151-2/+2
|
* [svn-r6406] Purpose:Bill Wendling2003-02-142-115/+68
| | | | | | | | | | | | 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
* [svn-r6402] Purpose:Bill Wendling2003-02-122-393/+236
| | | | | | | | | | | | | | | 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
* [svn-r6401] Purpose:Bill Wendling2003-02-123-68/+226
| | | | | | | | | | | | | | | | 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
* [svn-r6400] Raymond Lu2003-02-129-52/+74
| | | | | | | | | | | Purpose: Change feature Description: Switch to Fletcher32 from Adler32 checksum Platforms tested: arabica, eirene, modi4 Misc. update: MANIFEST and RELEASE.txt updated.
* [svn-r6399] Purpose:Bill Wendling2003-02-122-2/+2
| | | | | | | | | | Bug Fix Description: Pesky little thing: H5GOTO_ERROR was returning NULL instead of FAIL. Solution: Changed accordingly Platforms tested: Linux.
* [svn-r6398] Purpose:Quincey Koziol2003-02-1225-47/+50
| | | | | | | | | | Code cleanup Description: Clean up some compiler warnings Platforms tested: FreeBSD 4.7 (sleipnir)
* [svn-r6396] Purpose:Bill Wendling2003-02-122-4/+4
| | | | | | | | | | | Bug Fix Description: Some of the error conditions in the H5GOTO_ERROR macros were NULL instead of FAIL. Solution: Changed accordingly. Platforms tested: Linux
* [svn-r6395] Purpose:Quincey Koziol2003-02-1222-4153/+5072
| | | | | | | | | | | | | | | | | | | | | | | 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
* [svn-r6394] Purpose:Quincey Koziol2003-02-121-6/+2
| | | | | | | | | | | | | | 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++
* [svn-r6392] Purpose:Bill Wendling2003-02-103-580/+874
| | | | | | | | | | | | | | | | | | | | | | | | 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
* [svn-r6391] Purpose:Bill Wendling2003-02-101-3/+0
| | | | | | | | | | 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
* [svn-r6390] Purpose:Bill Wendling2003-02-104-76/+105
| | | | | | | | | | | | | | | | 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
* [svn-r6388] Purpose:Quincey Koziol2003-02-106-18/+18
| | | | | | | | | | | | | 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
* [svn-r6387] Purpose:Quincey Koziol2003-02-1069-2086/+2798
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* [svn-r6386] Purpose:Quincey Koziol2003-02-101-0/+4
| | | | | | | | | | | | | | 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
* [svn-r6383] Purpose:Quincey Koziol2003-02-079-54/+625
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* [svn-r6381] Purpose:Bill Wendling2003-02-061-0/+3
| | | | | | | | | | | | | Field Addition Description: Added a File ID field to the H5FD_t structure so that, way deep down in the H5FD_* functions, I'll know what ID the SAP wants for this particular file. This is #ifdef'd out so that if you don't have FPHDF5 enabled, then it won't be there... Platforms tested: Linux