summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r6837] Purpose:Quincey Koziol2003-05-0824-277/+261
| | | | | | | | | | | | | | | Code cleanup. Description: Move many package or internal function prototypes and macro definitions into tighter scope according to their current use. Added more comments where appropriate. Eliminate ancient, unused functions. Added a couple "accessor" functions to get parts of data structures which were moved out of scope. Platforms tested: h5committested
* [svn-r6836] Purpose:Quincey Koziol2003-05-081-68/+72
| | | | | | | | | | Bug fix Description: Clean up small memory leak. Platforms tested: h5committested.
* [svn-r6835] Elena Pourmal2003-05-081-2/+2
| | | | | | | | | | | | | Purpose: Maintenance Description: I changed release version to 1.5.54. Email about tetsing of 1.5.53 will be send after this checkins. Solution: used bin/h5vers -s to change the version number Platforms tested: Done on arabica Misc. update:
* [svn-r6832] Purpose:Quincey Koziol2003-05-083-16/+73
| | | | | | | | | | | Code cleanup Description: Improve file format debugging output. Platforms tested: FreeBSD 4.8 (sleipnir) Triple check not needed
* [svn-r6831] Purpose:Quincey Koziol2003-05-081-2/+2
| | | | | | | | | | | | | | | Bug fix Description: New external file double-vectorized I/O routines were checking an assertion on the wrong variable (essentially a typo :-). Solution: Check correct variable. Platforms tested: FreeBSD 4.8 (sleipnir) Triple check not needed.
* [svn-r6830] Purpose:Quincey Koziol2003-05-081-1/+1
| | | | | | | | | | | | | | | | Bug fix Description: Dataspace selections created for individual chunks during chunk dataset I/O were leaking memory. Solution: Properly set reference count on selection, so they get free'd when the dataspace is closed. Platforms tested: FreeBSD 4.8 (sleipnir) Triple check not needed.
* [svn-r6829] Purpose:Quincey Koziol2003-05-082-9/+1
| | | | | | | | | | | Code cleanup. Description: Cleaned up an unusued variable and some commented out code. Platforms tested: FreeBSD 4.8 (sleipnir) Triple check not needed.
* [svn-r6828] Purpose: bug fixRaymond Lu2003-05-0717-18/+18
| | | | | | | | | Description: H5T_XXX_init_interface calls H5T_init_interface causing datatype not closed after file is closed. Solution: changed H5T_init_interface to H5T_init Platforms tested: h5committest
* [svn-r6825] Purpose:Quincey Koziol2003-05-0733-6352/+6666
| | | | | | | | | | | | | | | | | | | | | | | | | New feature/enhancement Description: Chunked datasets are handled poorly in several circumstances involving certain selections and chunks that are too large for the chunk cache and/or chunks with filters, causing the chunk to be read from disk multiple times. Solution: Rearrange raw data I/O infrastructure to handle chunked datasets in a much more friendly way by creating a selection in memory and on disk for each chunk in a chunked dataset and performing all of the I/O on that chunk at one time. There are still some scalability (the current code attempts to create a selection for all the chunks in the dataset, instead of just the chunks that are accessed, requiring portions of the istore.c and fillval.c tests to be commented out) and performance issues, but checking this in will allow the changes to be tested by a much wider audience while I address the remaining issues. Platforms tested: h5committested, FreeBSD 4.8 (sleipnir) serial & parallel, Linux 2.4 (eirene)
* [svn-r6823] Purpose:Bill Wendling2003-05-074-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code Improvements/Bug Fixes Description: Comparison of equality of a double/float variable to 0.0 is not guaranteed to work and is bad practice. In H5Fcontig.c, a warning was given by a statement like: x = (++x) % y; This could be confusing to a compiler I suppose. In H5RS.c, a typedef of a structure was being tagged by the compiler as "useless" because it had the form: typedef struct foo { int var1; /* ... */ }; /* <--- note no name for this typedef */ The statement "typedef struct foo foo" is already in the header file. Solution: Test that the absolute value of the variable is < a very small positive number. Changed "x = (++x) % y" to "++x; x %= y;" instead. Removed the "typedef" from the structure in the H5RS.c file. Platforms tested: Modi4 (Parallel & Fortran) Verbena (C++ & Fortran) Arabica (Fortran) Misc. update:
* [svn-r6810] Purpose:Bill Wendling2003-05-061-2/+2
| | | | | | | | | | | | | | Update Description: Some of the TRACE macros were updated to reflect a new parameter. Platforms tested: Linux Solaris w/ zlib Irix w/ zlib Misc. update:
* [svn-r6807] Purpose:Bill Wendling2003-05-061-7/+6
| | | | | | | | | | | | | | | Change Description: Instead of using the "USE_GPFS" macro, use the "H5_HAVE_GPFS" macro which is defined during configuration and then use the new parameter to the H5P{get,set}_fapl_mpiposix functions to control if GPFS is enabled or not. Platforms tested: Modi4 (only affects the parallel stuff, so no need for full testing). Misc. update:
* [svn-r6803] Purpose:Quincey Koziol2003-05-061-7/+4
| | | | | | | | | | | Code cleanup. Description: Cleaned up a few debugging printfs. Platforms tested: FreeBSD 4.8 (sleipnir) Triple check not needed.
* [svn-r6797] Purpose:Bill Wendling2003-05-051-3/+3
| | | | | | | | | | | | | | | Feature Description: Added new flag to the H5pubconf.h file --- NO_SHARED_WRITING (H5_NO_SHARED_WRITING). It's only defined for CodeWarrior and should never be defined for other platforms unless the "open()" bug that CW has shows up on other platforms. Platforms tested: Verbena. Configure only, so no need for full tests. Misc. update:
* [svn-r6795] Purpose:Bill Wendling2003-05-052-27/+54
| | | | | | | | | | | | | | | | Feature Add Description: Added knob so that the programmer can enable or disable GPFS hints during runtime instead of having it only enabled at configure/compile time. Some of the public APIs were changed to add an extra parameter for this option... Platforms tested: Blue (LLNL). It only affects the MPI/POSIX driver, so no need to test it on non-GPFS platforms. Misc. update:
* [svn-r6793] Snapshot version 1.5 release 52HDF Admin2003-05-031-2/+2
|
* [svn-r6784] Purpose:Quincey Koziol2003-04-302-11/+23
| | | | | | | | | | | Bug fix Description: Corrected a couple of problems with Ray's v1.4 compat checkin yesterday. Platforms tested: FreeBSD 4.8 (sleipnir) w/ & w/o --enable_hdf5v1_4 compat switch Triple check unnecessary.
* [svn-r6780] Purpose: Backward compatibility changeRaymond Lu2003-04-291-9/+9
| | | | | | | | Description: 1.4 compatibility for H5G_obj_t type and H5Zregister test. Solution: use macro H5_WANT_H5_V1_4_COMPAT Platforms tested: h5committest
* [svn-r6779] Purpose: Backward compatibility changeRaymond Lu2003-04-295-21/+71
| | | | | | | | Description: 1.4 compatibility for H5G_obj_t type and H5Zregister test. Solution: use macro H5_WANT_H5_V1_4_COMPAT Platforms tested: h5committest
* [svn-r6777] Purpose:MuQun Yang2003-04-291-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | A bug fix for windows. Description: Many tests failed on windows when stdio driver is on. I suspect it is the compiler bug. After some investigation, the symptom is: The signature of HDF5 file cannot be found. The real problem is the signature was appended at the end of the whole file instead of inserting at the starting of the file. It seems when the file pointer(signature) is reset to the starting of the file, windows mis-placed it to the end of the file after finding the file is close to the end. Solution: Fortuately, ftell and fseek still function well on windows, so I use ftell and fseek to force the file pointer to go to the position it is supposed to go. Platforms tested: since the only change in this file is within ifdef WIN32 macro; it won't affect the mainstream platforms, so I don't have to three platforms. Platforms to confirm(test with basic function): Linux 2.4 Platforms to throughly test: windows 2000 with VS6.0 test on three different Misc. update:
* [svn-r6776] Purpose:Pedro Vicente Nunes2003-04-291-3/+0
| | | | | | | | | | | | | | | removed and change comments Description: removed the modification comment about the while loop, it is not sufficiently important to be there changed the "Id to name" comment in the test description, it was incorrecly about other thing Solution: Platforms tested: none , just comments Misc. update:
* [svn-r6773] Elena Pourmal2003-04-291-1/+1
| | | | | | | | | | | | | | | | | | Purpose: Windows maintenance and code cleanup Description: There were a lot of places in the source code where varibale was declared but never used. Solution: Cleaned the source code to avoid warnings on Windows and Unix platforms. Platforms tested: arabica, modi4, Windows Probably my environment is wrong on Linux, cannot compile at all when fortran is enabled If daily tests fails tomorrow, this will be my fault but I want to go home now :-) Misc. update:
* [svn-r6769] Purpose:Albert Cheng2003-04-281-18/+21
| | | | | | | | | | | | | | | | | | | | Minor improvement Description: Moved the H5FD_mpio_Debug initialization to H5FD_mpio_init() so that it is done only once instead of every file open. Fixed blocked out patch that checks on INFO object so that H5FD_mpio_Debug can be set via the INFO object. (All these had been done to v1.4, now folded them int v1.5) Platforms tested: Did not h5committest since this is purely parallel code. The changes were made in an isolated copy in Copper. Tested in Copper parallel. Misc. update:
* [svn-r6767] Albert Cheng2003-04-281-16/+0
| | | | | | | | | | | | | | | Purpose: Code cleanup Description: Removed debug statement bracketed by H5FDmpiposix_DEBUG or alike. They were added in by mistakes. Platforms tested: Did not h5committested but tested in Copper since there changes are limited in parallel codes. Misc. update:
* [svn-r6761] Snapshot version 1.5 release 51HDF Admin2003-04-261-2/+2
|
* [svn-r6754] Purpose:Albert Cheng2003-04-251-29/+160
| | | | | | | | | | | | | | | | | Feature Description: Added the feature to store and return a duplicate of Communicator in the access of property list and file operations. (no duplicate for INFO object because MPIPOSIX driver does not process INFO object. Platforms tested: Did not h5committested because these are all MPI code and well protected by HAVE_PARALLEL. Tested in eirene and modi4, both parallel mode. Misc. update:
* [svn-r6753] Purpose:Albert Cheng2003-04-251-5/+11
| | | | | | | | | | | | | | | | | | | | Code cleanup Description: Replaced the comm/info freeing with H5FD_mpio_comm_info_free to make it cleaner and consistent. Replaced couple FUNC_LEAVE_NOAPI(SUCCEED) with FUNC_LEAVE_NOAPI(ret_value). These were bugs since it was possible errors may occur at FUNC_ENTER...() time and this hardcoding would not report those errors. Documented some modification history. Platforms tested: Did not h5committested because these are all MPI code and well protected by HAVE_PARALLEL. Tested in eirene and modi4, both parallel mode. Misc. update:
* [svn-r6752] Purpose:Quincey Koziol2003-04-252-15/+2
| | | | | | | | | | Code cleanup Description: Remove some cruft left over from the switch from int->H5G_obj_t Platforms tested: FreeBSD 4.8 (sleipnir), triple check not necessary.
* [svn-r6744] Raymond Lu2003-04-245-23/+38
| | | | | | | | | | Purpose: A little code rewriting Description: object types were defined as macros in H5Gpublic.h Solution: changed them to enumerate type Platforms tested: h5committtest
* [svn-r6738] Purpose:Quincey Koziol2003-04-231-1/+2
| | | | | | | | | | | | Code cleanup Description: Add & improve assertion that was removed in last commit, to check for compact dataset storage. Platforms tested: FreeBSD 4.8 (sleipnir) triple check not necessary.
* [svn-r6731] Raymond Lu2003-04-221-2/+17
| | | | | | | | | Purpose: handling special case Description: This fletcher32 didn't handle Cray's special data type sizes. Platforms tested: h5committested. Cray
* [svn-r6729] Raymond Lu2003-04-221-3/+2
| | | | | | | | | | | Purpose: bug fix Description: VL datatype in compact dataset fails because a wrong type size is used. Platforms tested: h5committested Misc. update:
* [svn-r6728] Purpose:Albert Cheng2003-04-221-3/+5
| | | | | | | | | | | | | | | | Silly bug fix. Description: Forgot to put the comm/info duplication code in. Solution: Put them back in. Platforms tested: Did not run h5committest since the changes are all in the MPIO driver code. Tested on eirene and Modi4, both parallel modes. Misc. update:
* [svn-r6724] Purpose:Bill Wendling2003-04-211-0/+10
| | | | | | | | | | | | | | | Commenting Description: Added comments to the H5Fget_access_plist function to remind people that if they are going to be overwriting a value in the plist which was originally opened and inserted into the plist, then it should be closed before overwriting that value. Platforms tested: Modi4 (Only comment change, so no h5committest needed). Misc. update:
* [svn-r6721] Purpose:Pedro Vicente Nunes2003-04-211-2/+6
| | | | | | | | | | | | | | | | | | bug fix Description: in the close strong case in H5F_close there was a do..while loop that executed when nfiles==0, calling malloc(0) this was causing a failure in the close call in Code Warrior, that returns 0 in the call pt=malloc(0) Solution: replaced with a while loop (checks the condition before executing) Platforms tested: code warrior, linux Misc. update:
* [svn-r6719] Purpose:Bill Wendling2003-04-211-0/+8
| | | | | | | | | | | | | | | | | | | | | Bug Fix Description: A resource leak happened if the H5Fget_access_plist() function was called. What was happening: the driver ID and info parts of the property list copied in H5Fget_access_plist were being overwritten, but those properties were copied initially, so we lost information. Solution: Before copying over those values, call the H5F_acs_close() function to close those values. Platforms tested: Modi4 (Parallel & Fortran) Arabica (Fortran) Verbena (Fortran & C++) Misc. update:
* [svn-r6711] Purpose:Albert Cheng2003-04-181-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug fix Description: Sometimes when H5detect fails (incorrect code, incorrect mpi launch command, insufficient resources,...), it generates an incomplete or even empty H5Tinit.c file. If the empty file is not removed but the make is run again, make will just use the empty file to generate the library which will have lots of missing routines. Make won't fail until much later and the missing routines would be puzzling to inexperienced users. Solution: If H5detect fails, the generated H5Tinit.c will be removed unless $HDF5_Make_Ignore is set. This is similar to removing .o file if the compile fails. Platforms tested: Copper (parallel) which has a condition causing H5detect to fail. That verified the change works. Eirene (parallel) in which H5detect runs well. This verified the change works in normal conditions too. Did not do the h5committest because this is just a makefile change and the above two tests covered it well. Misc. update:
* [svn-r6708] Purpose:Albert Cheng2003-04-181-43/+319
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug fixes/API changes Description: Previously, the Communicator and Info object arguments supplied to H5Pset_fapl_mpio() are stored in the property with its handle values. This meant changes to the communicator or the Info object after calling H5Pset_fapl_mpio would affect the how the property list function. This was also the case when H5Fopen/create operated. They just stored the handle value. This is not according to the MPI-2 defined behavior of how Info objects should be handled. (MPI-2 defines Info objects must be parsed when called.) The old design was trying to avoid numerous duplicates of the same information (e.g., every property object holds one version, every file opened holds another version, when all of them are referring to the same original version.) Nevertheless it is safer to implement it according to MPI-2 definition. Futhermore, the library often needs to do message passing using the supplied communicator. Using the same communicator as the application version may result in some messages mix up. Solution: H5Pset_fapl_mpio now stores a duplicate of each of the communicator and Info object. H5Pget_fapl_mpio returns a duplicate of its stored communicator and Info object. It is now the responsibility of the applications to free those objects when done. H5Fopen/create also stores a duplicate of the communicator and Info object supplied by the File Access Property list. H5Fclose frees those duplicates. There are a few more internal VFL call back functions that they follow this "make duplicates" requirement. Platforms tested: "h5committested". What other platforms/configurations were tested? Eirene (mpicc), sol(mpicc), copper(parallel) Misc. update:
* [svn-r6707] Purpose:MuQun Yang2003-04-171-1/+2
| | | | | | | | | | | | | | | | | | | | A compiling error fixed for windows only Description: Use file handler instead of file stream at H5FDstdio.c when using getfileHandle function of windows. Solution: see above, however; stdio driver tests failed on windows. I am still investigating the bug. The current check will not fix the failure of stdio driver test on windows. The good news is that it won't affect the release since the default driver used for test is sec2 driver and all tests passed for sec2 driver on windows. Platforms tested: windows 2000 and confirmed at Linux. Since the only change is two-line code inside #ifdef WIN32 #endif macro block, it is not necessary to test all UNIX platforms. Still confirmed at eirene. Misc. update:
* [svn-r6689] Purpose:Quincey Koziol2003-04-162-19/+41
| | | | | | | | | | | | | | Bug fix. Description: The stdio filer driver is not reducing the file's size in the manner that the sec2 driver does. Solution: Copy code from the sec2 for handling this properly. Platforms tested: h5committested
* [svn-r6672] Purpose:Bill Wendling2003-04-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | Bug Fix Description: When calling "H5F_get_access_plist" after setting the FAPL to a multi driver, and then trying to get the multi driver back, it resulted in returing a "NULL" value instead of the driver. Solution: The stuff at the location pointed to by the driver was being stored into the property list and not the pointer to the driver itself. Changed the "H5P_set" code so that it stores the pointer instead of the driver...(Added an "&" in from of the "driver_info" variable). Platforms tested: Arabica (Fortran) Burrwhite (Fortran & C++) Modi4 (Fortran & Parallel) Misc. update:
* [svn-r6659] Purpose:Quincey Koziol2003-04-1414-6/+22
| | | | | | | | | | | | | | | | New feature, sorta Description: Track changes to various internal APIs Platforms tested: FreeBSD 4.8 (sleipnir) w/C++ Linux 2.4 (burrwhite) w/FORTRAN Solaris 2.7 (arabica) w/FORTRAN IRIX64 6.5 (modi4) w/parallel & FORTRAN (h5committest not run due to my ongoing difficulties with C++ on burrwhite).
* [svn-r6658] Purpose:Quincey Koziol2003-04-144-18/+308
| | | | | | | | | | | | | | | | | | | | New feature Description: Track changes in the internal metadata API with clearing the metadata dirty flag without flushing object. Added ability to delete an object header in the file and restore all the space referenced by various header messages. Platforms tested: FreeBSD 4.8 (sleipnir) w/C++ Linux 2.4 (burrwhite) w/FORTRAN Solaris 2.7 (arabica) w/FORTRAN IRIX64 6.5 (modi4) w/parallel & FORTRAN (h5committest not run due to my ongoing difficulties with C++ on burrwhite).
* [svn-r6657] Purpose:Quincey Koziol2003-04-142-40/+235
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code cleanup, bug fix & new feature. Description: The local heaps were missed in the last changes to the metadata "dirty" flag, making them operate incorrectly in the metadata cache. Fixed by changing to use "cache_info.dirty" flag instead. Track changes for internal metadata API, regarding marking metadata as clean without flushing it to the file. Added ability to delete a local heap in the file. Added ability to reduce the size of a local heap if there is a free-space block at the end of the heap and the free-space block is over half the size of the local heap. Some migration of package-specific information out of the private header and into the code module as well. Platforms tested: FreeBSD 4.8 (sleipnir) w/C++ Linux 2.4 (burrwhite) w/FORTRAN Solaris 2.7 (arabica) w/FORTRAN IRIX64 6.5 (modi4) w/parallel & FORTRAN (h5committest not run due to my ongoing difficulties with C++ on burrwhite).
* [svn-r6656] Purpose:Quincey Koziol2003-04-141-10/+42
| | | | | | | | | | | | | | | | | | | | | | | | Bug fix & new feature. Description: The global heap 'dirty' flag was missed in the last round of changes to the metadata cache and was not using the new "cache_info.dirty" flag. Solution: Switched to using correct flag for marking dirty objects in the metadata cache. Also, added new metadata callback for marking a piece of metadata as clean without writing it back to the file. Platforms tested: FreeBSD 4.8 (sleipnir) w/C++ Linux 2.4 (burrwhite) w/FORTRAN Solaris 2.7 (arabica) w/FORTRAN IRIX64 6.5 (modi4) w/parallel & FORTRAN (h5committest not run due to my ongoing difficulties with C++ on burrwhite).
* [svn-r6655] Purpose:Quincey Koziol2003-04-143-100/+239
| | | | | | | | | | | | | | | | | New feature. Description: Added ability to release space used for storing symbol table entries and nodes when a group is deleted in a file. Platforms tested: FreeBSD 4.8 (sleipnir) w/C++ Linux 2.4 (burrwhite) w/FORTRAN Solaris 2.7 (arabica) w/FORTRAN IRIX64 6.5 (modi4) w/parallel & FORTRAN (h5committest not run due to my ongoing difficulties with C++ on burrwhite).
* [svn-r6654] Purpose:Quincey Koziol2003-04-142-6/+4
| | | | | | | | | | | | | | | | | | | | Code cleanup Description: Stop using hard-coded constant for the initial size of the root group's symbol table local heap and use macro. Also, changed existing (unused) macro for the initial heap size to be the same as the hard-coded constant. Platforms tested: FreeBSD 4.8 (sleipnir) w/C++ Linux 2.4 (burrwhite) w/FORTRAN Solaris 2.7 (arabica) w/FORTRAN IRIX64 6.5 (modi4) w/parallel & FORTRAN (h5committest not run due to my ongoing difficulties with C++ on burrwhite).
* [svn-r6653] Purpose:Quincey Koziol2003-04-145-305/+528
| | | | | | | | | | | | | | | | | New feature. Description: Added ability to free space used for storing raw data for both contiguous and chunked datasets. Platforms tested: FreeBSD 4.8 (sleipnir) w/C++ Linux 2.4 (burrwhite) w/FORTRAN Solaris 2.7 (arabica) w/FORTRAN IRIX64 6.5 (modi4) w/parallel & FORTRAN (h5committest not run due to my ongoing difficulties with C++ on burrwhite).
* [svn-r6652] Purpose:Quincey Koziol2003-04-141-1/+2
| | | | | | | | | | | | | | | | New feature. Description: Update prototypes for recent internal API addition. Platforms tested: FreeBSD 4.8 (sleipnir) w/C++ Linux 2.4 (burrwhite) w/FORTRAN Solaris 2.7 (arabica) w/FORTRAN IRIX64 6.5 (modi4) w/parallel & FORTRAN (h5committest not run due to my ongoing difficulties with C++ on burrwhite).
* [svn-r6651] Purpose:Quincey Koziol2003-04-141-1/+61
| | | | | | | | | | | | | | | | | | New feature. Description: Mark an object in the "open object list" as deleted when it's reference count within the file is reduced to zero and it is only being held open by an ID in the user's application. Platforms tested: FreeBSD 4.8 (sleipnir) w/C++ Linux 2.4 (burrwhite) w/FORTRAN Solaris 2.7 (arabica) w/FORTRAN IRIX64 6.5 (modi4) w/parallel & FORTRAN (h5committest not run due to my ongoing difficulties with C++ on burrwhite).