summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r7876] Purpose:Quincey Koziol2003-11-244-2/+210
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Omnibus floating-point bug fix changes Description: There are a number of problems in the floating-point conversion code that were exposed by Ray's recent int<->float checkin: - The 'my_isnan' code in test/dtypes.c was broken and would always return true. The meant that the actual values in the float<->float conversion tests were _never_ checked, hiding the other bugs included in this checkin. - A recent change I made to the type conversion code used "FLT_MIN" instead of "-FLT_MAX" for the most negative 'float' value for the double->float conversion, which meant that any the negative number that was converted from a double to a float would have been mapped to zero, essentially. - A change that Robb appeared to have made ~2.5 years ago to the "generic" float->float conversion routine appears to be incorrect and I've backed it out. - Floating-point conversions on SGI's which converted denormalized values would be mapped to zero instead of being propertly preserved in the new type. This was addressed by an SGI-specific system call to prevent the behavior. Solution: Described above, generally. Platforms tested: FreeBSD 4.9 (sleipnir) h5committest Misc. update: release_docs/RELEASE update forthcoming...
* [svn-r7874] Snapshot version 1.6 release 1 (post2)HDF Admin2003-11-241-2/+2
|
* [svn-r7861] Purpose:Quincey Koziol2003-11-204-0/+37
| | | | | | | | | | | | | | | | | Bug fix Description: Our previous "optimization" of metadata writing which only wrote metadata from one process was abusing MPI-I/O and after some consultation with Rob Ross and Rajeev Thakur, Albert & I have come up with a solution... Solution: Instead of only writing from one process, issue a collective write operation with all processes, for metadata writes. Platforms tested: FreeBSD 4.9 (sleipnir) h5committest
* [svn-r7855] Snapshot version 1.6 release 1 (post1)HDF Admin2003-11-171-2/+2
|
* [svn-r7846] 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-r7844] Purpose:Quincey Koziol2003-11-136-230/+454
| | | | | | | | | | | | | | | | | | | Bug fix Description: Variable length strings and sequences with NULL pointers were not handled by library, causing problems access the data. This also affected fill values for variable-length datatypes. Solution: Address the issues in the library by detecting NULL sequences/strings and avoid trying to convert them. Patched up dumper to display NULL sequences/strings. Platforms tested: FreeBSD 4.9 (sleipnir) h5committest
* [svn-r7837] Purpose:Quincey Koziol2003-11-121-12/+15
| | | | | | | | | | | Bug fix. Description: Skip over situation where malloc(0) might occur. Platforms tested: IBM p690 (copper) too minor to require h5committest
* [svn-r7830] Purpose:Quincey Koziol2003-11-085-15/+79
| | | | | | | | | | | | | | | | | Bug fix & code cleanup Description: Allowing the library to call malloc with a size of 0 bytes causes problems for some users, so we check for allocations of 0 bytes and disallow them now. Cleaned up some code which could call malloc with 0 size. Changed some code calling HDmalloc directly to call H5MM_malloc(), which allows us to check for 0 sized allocations. Platforms tested: FreeBSD 4.9 (sleipnir) too minor to require h5committest
* [svn-r7828] Purpose:Quincey Koziol2003-11-081-6/+6
| | | | | | | | | | | | Bug fix Description: Make --disable-hsizet work properly again by fixing a couple of tests and correcting the definition of SSIZET_MAX. Platforms tested: FreeBSD 4.9 (sleipnir) h5committest not used, as it doesn't test this configuration.
* [svn-r7825] Purpose:Quincey Koziol2003-11-071-53/+96
| | | | | | | | | | | | | | | Code optimization Description: Improved integer & floating-point datatype conversions by removing some corner cases. Got rid of algorithm which walked the buffer of elements to convert backwards, switching to algorithm which computes the non-overlapping space in the buffer and repeatedly converts it in the forward direction. Platforms tested: FreeBSD 4.9 (sleipnir) h5committest Cray SV1 & T3E (T90 is not accessible)
* [svn-r7821] Purpose:Quincey Koziol2003-11-061-8/+1
| | | | | | | | | | | | Bug fix Description: Don't check the number of szip parameters set during the "can apply" and "set local" callbacks, be safe about setting the parameters instead. Platforms tested: FreeBSD 4.9 (sleipnir) too minor to require h5committest
* [svn-r7819] Purpose:Quincey Koziol2003-11-062-4/+4
| | | | | | | | | | | Warning cleanup Description: Make a parameter 'const' to clean up a warning during compiles. Platforms tested: FreeBSD 4.9 (sleipnir) too minor to require h5committest
* [svn-r7808] Snapshot version 1.6 release 1 (post0)HDF Admin2003-11-031-2/+2
|
* [svn-r7795] Purpose:Quincey Koziol2003-10-301-203/+107
| | | | | | | | | | | | | | | | | | Code cleanup & simplification Description: Replace [non-working] code in routine to build up an MPI derived type for a hyperslab selection that was supposed to "flatten" out contigous blocks with code that uses a selection iterator (which _does_ have working "flattening" code). Remove "contiguous hyperslab" code for MPI selections as it is unnessary now. Platforms tested: FreeBSD 4.9 (sleipnir) w & w/o parallel Linux 2.4 (verbena) w/FORTRAN & C++ Solaris 2.7 (arabica) w/64-bit
* [svn-r7790] Purpose:Quincey Koziol2003-10-295-221/+68
| | | | | | | | | | | | | | | Bug fix & code cleanups Description: Change our use of MPI derived datatypes to not create datatypes with "0-sized" lengths, which causes the LANL Q machine to hang. Also, get rid of "prefer MPI derived datatypes" environment variable since it has no advantage. Platforms tested: FreeBSD 4.9 (sleipnir) w & w/o parallel h5committest
* [svn-r7768] Purpose:Quincey Koziol2003-10-281-36/+11
| | | | | | | | | | | | | Code cleanup Description: Untwist the last few sections of code before starting on fixing the problems with reading off the end of the file in earnest. Platforms tested: FreeBSD 4.9 (sleipnir) FreeBSD 4.9 (sleipnir) w/parallel h5committest not necessary - parallel only changes
* [svn-r7766] Purpose:Quincey Koziol2003-10-282-79/+105
| | | | | | | | | | | | | Code cleanup Description: More collective/independent cleanups to straighten out code contortions. Platforms tested: FreeBSD 4.9 (sleipnir) FreeBSD 4.9 (sleipnir) w/parallel Linux 2.4 (verbena) w/fortran & C++ Solaris 2.7 (arabica) w/64-bit extensions enabled
* [svn-r7764] Purpose:Quincey Koziol2003-10-284-8/+12
| | | | | | | | | | | | | | | | | Bug fix Description: Code was using an internal DXPL with collective I/O turned on during independent I/O operations to fill dataset on disk. Solution: Switched to internal DXPL with independent I/O Platforms tested: FreeBSD 4.9 (sleipnir) FreeBSD 4.9 (sleipnir) w/parallel Linux 2.4 (verbena) w/fortran & C++ Solaris 2.7 (arabica) w/64-bit extensions enabled
* [svn-r7760] Purpose:Quincey Koziol2003-10-281-2/+2
| | | | | | | | | | | | | | Fix serial build Description: I accidentally put the "use_par_opt_io" variable in an #ifdef PARALLEL section. Solution: Hoist it out of parallel section Platforms tested: Eyeballed it - very trivial
* [svn-r7755] Purpose:Quincey Koziol2003-10-274-34/+64
| | | | | | | | | | | | | Code cleanup Description: Straighten out more goofiness in the MPI code dealing with collective I/O transfers - mostly make certain that a view is set if-and-only-if collective I/O is occurring on raw data (and vice versa for views and independent I/O) Platforms tested: FreeBSD 4.9 (sleipnir) w/parallel too minor to repquire h5committest
* [svn-r7747] Purpose:Quincey Koziol2003-10-272-116/+0
| | | | | | | | | | | | Code cleanup Description: Remove collective parallel I/O checking code, now that it's impossible to get into this code with collective access enabled. Platforms tested: FreeBSD 4.9 (sleipnir) too minor to require h5committest
* [svn-r7745] Purpose:Quincey Koziol2003-10-271-108/+54
| | | | | | | | | | | | | | Code cleanup Description: More refactoring on setup of MPI-IO parameters: hoisted the code to change the transfer mode from collective to independent up into the H5D_read and H5D_write routines, instead of duplicating it inside each of the chunk/contig read/write routines. Platforms tested: FreeBSD 4.9 (sleipnir) too minor to require h5committest
* [svn-r7743] Purpose:Quincey Koziol2003-10-272-87/+61
| | | | | | | | | | | | Code cleanup Description: Clean up setup code for collective I/O transfers to make the logic more obvious. Platforms tested: FreeBSD 4.9 (sleipnir) too minor for h5committest
* [svn-r7735] Purpose:Quincey Koziol2003-10-251-30/+44
| | | | | | | | | | | | | | | | | Bug fix Description: Single hyperslab selections (which were set with only one call to H5Sselect_hyperslab) that had dimensions that could be "flattened" but were interspersed with dimensions that could not be flattened were not correctly handled, causing core dumps. Solution: Re-work "flattening" code to handle this case properly. Platforms tested: FreeBSD 4.9 (sleipnir) h5committest
* [svn-r7726] Purpose:Quincey Koziol2003-10-245-209/+316
| | | | | | | | | | | | Code cleanup Description: Refactored handlier of VFL drivers in file access and data transfer property lists in order to simplify and unify the code dealing with them. Platforms tested: FreeBSD 4.9 (sleipnir) too minor to require h5committest
* [svn-r7723] Purpose:Quincey Koziol2003-10-241-2/+2
| | | | | | | | | | | | Bug fix Description: Change "H5_HAVE_PARALLEL" to "H5_HAVE_FPHDF5" around VFL ID, to prevent daily builds from failing. Platforms tested: FreeBSD 4.9 (sleipnir) w/parallel too specialized to require h5committest
* [svn-r7681] Purpose:Quincey Koziol2003-10-211-209/+164
| | | | | | | | | | | | | | | Bug fix Description: Remove the [duplicated] native C9x datatype initializatin code from H5T.c and let the automatically generated code in H5Tinit.c handle initializing them, if they are allowed by the compiler. Platforms tested: FreeBSD 4.9 (sleipnir) Linux 2.4 (verbena, eirene) probably should be h5committested, but it's late and I'm fairly certain this will fix the problem... :-/
* [svn-r7676] Purpose:Quincey Koziol2003-10-201-2/+2
| | | | | | | | | | | | | | | Bug fix Description: Avoid "OPAQUE" symbol in template macro invocation, since it's already defined as a macro on Windows. Solution: OPAQUE -> OPAQ Platforms tested: FreeBSD 4.9 (sleipnir) Windows ? (Pedro's machine :-)
* [svn-r7672] Purpose:Quincey Koziol2003-10-203-1654/+688
| | | | | | | | | | | | | | Code cleanup/refactoring/potential bug fix Description: Migrate "template macro" changes from development branch back into this branch, since they give about a 20% speedup for integer & floating-point type conversions. The also avoid a potential alignment bug on the Crays... Platforms tested: FreeBSD 4.9 (sleipnir) h5committest not necessary, since the changes are already verified in the development branch.
* [svn-r7670] Purpose:Quincey Koziol2003-10-201-12/+8
| | | | | | | | | | | | | | | | | | Bug fix Description: In certain [very rare] circumstances, the object header for a named datatype can preempt the object header for the dataset using the named datatype, causing the library to die an ugly death. Solution: "Protect" the object header for the dataset (taking it out of the cache) before getting the information about it's named datatype, avoiding the cache deadlock. Platforms tested: FreeBSD 4.9 (sleipnir) Windows ? (at Boeing site)
* [svn-r7661] Purpose: Maintenance after 1.6.1 releaseElena Pourmal2003-10-171-2/+2
| | | | | | | | | | | Description: Changes version to 1.6.1-post0 and updated RELEASE.txt and HISTORY.txt filese fro the new version. Solution: N/A Platforms tested: N/A Misc. update:
* [svn-r7659] Purpose: MaintenanceElena Pourmal2003-10-171-2/+2
| | | | | | | | | | | | Description: I run bin/release to create an hdf5-1.6.1 release tar ball. Now I am checking in modified files before tagging the release. Solution: N/A Platforms tested: N/A Misc. update:
* [svn-r7633] Purpose: MaintenanceElena Pourmal2003-10-151-2/+2
| | | | | | | | | | Description: Bumped the version number to 1.6.1-pre2 after creating a tar ball for the third round of testing Platforms tested: bin/h5vers -s 1.6.1-pre2 on eirene Misc. update:
* [svn-r7632] Purpose:Albert Cheng2003-10-141-3/+3
| | | | | | | Changed version to 1.6.1-pre1 to prepare for release. Platforms tested: "h5committested"
* [svn-r7625] Purpose: MaintenanceElena Pourmal2003-10-141-2/+2
| | | | | | | | | | | Description: Bumped up the version number after creating a tar ball for the second round of testing Solution: N/A Platforms tested: done with bin/h5vers on eirene Misc. update:
* [svn-r7624] Purpose:Quincey Koziol2003-10-142-181/+63
| | | | | | | Updated dependencies and tracing information Platforms tested: Not necessary.
* [svn-r7608] Purpose:Quincey Koziol2003-10-131-0/+1
| | | | | | | | | | Bug fix Description: Add MPE "color" for new H5Fget_freespace() API function. Platforms tested: None - just eyeballed - too minor to require testing.
* [svn-r7594] Purpose:Quincey Koziol2003-10-101-9/+11
| | | | | | | | | | | | | | | | | | | | | Bug fix Description: The 'char *' type is one of the "strongly" aligned types on Crays, but a 'void *' is "weakly" aligned. So, assigning a 'void *' (pointing to a location to place a 'char *') to a 'char **' can change the pointer value during the assignment. Solution: Don't alias the 'void *' where the variable-length information ('char *' or 'hvl_t') will go. Use a temporary variable on the stack to build up the information about the VL string or sequence and then memcpy() the temporary variable directly to the location pointed to with the 'void *' Platforms tested: FreeBSD 4.9 (sleipnir) Cray SV1 (wind) specific to Cray problems, h5committest not necessary.
* [svn-r7592] Purpose:Quincey Koziol2003-10-101-3/+1
| | | | | | | | | | | | Bug fix Description: Correct the size of the buffer needed for the destination value to use the actual destination type size. Platforms tested: FreeBSD 4.9 (sleipnir) too minor to require h5committest
* [svn-r7579] Purpose:Quincey Koziol2003-10-091-10/+13
| | | | | | | | | | | | | | | | | Bug fix Description: The VL type conversion routine attempt to align it's destination buffer to an offer that will work for both hvl_t and char * types, but the algorithm used fails to work correctly on Cray machines. Solution: Give up on attempting to align the buffer when it's allocated on the stack. Just dynamically allocate it instead. Platforms tested: FreeBSD 4.9 (sleipnir) Cray SV1 (wind)
* [svn-r7573] Purpose:Quincey Koziol2003-10-081-30/+35
| | | | | | | | | | | | | | | | | Bug fix Description: When too many messages were inserted into an object header, the library had an internal pointer to the "new message" that was pointing to the incorrect location when the array of messages was re-allocated. In the worst case, this could cause a file to be corrupted. Solution: Update the internal pointer when the array is re-allocated. Platforms tested: FreeBSD 4.9 (sleipnir) Too small to require h5committest
* [svn-r7563] Purpose: MaintenanceElena Pourmal2003-10-071-2/+2
| | | | | | | | | | Description: Increased version number to 1.6.0-post11 after creating a tar ball for testing Platforms tested: eirene Misc. update:
* [svn-r7562] Purpose:Quincey Koziol2003-10-075-2/+76
| | | | | | | | | | | | Feature add Description: Add a few new fields to the H5G_stat_t structure, to allow more information about the object header to be retrieved. Platforms tested: FreeBSD 4.9 (sleipnir) h5committest
* [svn-r7560] Purpose:Quincey Koziol2003-10-074-0/+88
| | | | | | | | | | | | | | Add feature Description: Add H5Fget_freespace() routine, to check the amount of free space in a file. This information is only valid until the file is closed currently, however (until we start recording the free space information in the file itself). Platforms tested: FreeBSD 4.9 (sleipnir) h5committest
* [svn-r7554] Purpose:Quincey Koziol2003-10-061-79/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | Improved algorithm (bug fix, sorta) Description: The internal algorithm for adding new IDs in the ID manager code (H5I) was adding new IDs to the front of the linked list and never adjusting the order of the items on the list (unless an ID was deleted). If many new objects were created, they would push earlier ones _way_ down the list (especially if the objects were being leaked in the application, as they appear to be in the current HDF-EOS5 library) and would cause O(n) search time for items on the list. The ID caching code in the ID manager was avoiding this behavior sometimes, but it was adding IDs that were looked up to the very tail of the cache and they would frequently leave the cache before helping. Solution: Implemented a "move to front" scheme for the linked list of IDs, which improves the lookup situation for frequently accessed objects. Removed ID caching code now, as the "move to front" algorithm actually works better. Platforms tested: FreeBSD 4.9 (sleipnir) too minor to require h5committest
* [svn-r7552] Purpose:Quincey Koziol2003-10-061-8/+0
| | | | | | | | | | | | | | Bug/feature fix. Description: Relax restriction on parallel writing to compact datasets to allow partial I/O. Updated reference manual mentioning the issues involved. Platforms tested: FreeBSD 4.9 (sleipnir) too minor to require h5committest
* [svn-r7543] Purpose:Quincey Koziol2003-10-0524-293/+916
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug fixes and code cleanup Description: Lots of changes here: - Fixed bug #691 - when shared datatypes are used in attributes they are incorrectly copied into the attribute instead of referring the the named datatype in the file. This required bumping the version of the attribute message. The new version of the attribute message is only written out when a shared datatype is used in the attribute. [Also, this format change made the size of the attribute smaller.] - Added information to attribute debugging routine so that shared datatypes are displayed correctly with the h5debug tool. - Refactored the H5O* routines to extract code that was common to several routines into subroutines to call. - Added 'link' method for H5O message sub-classes, which increments the link count on shared objects when a message is created which shares them. - Corrected [unreported] bug where the link count was not being decremented on the shared object when a object header message with a reference to that object was deleted from the file. - Reduced size of shared message from 49 bytes (which was incorrect anyway and should have been 48 bytes) to 10 bytes, which required bumping the version of "shared" messages. - Refactored some of the shared datatype routines to allow for easier queries of "committedness" internally to the library and also added routine to easily increment/decrement the reference count of a shared datatype. Platforms tested: FreeBSD 4.9 (sleipnir) h5committest
* [svn-r7531] Elena Pourmal2003-10-011-2/+2
| | | | | | | | | | Purpose: Maintenance Description: Changed version to 1.6.0-post10 after creating a release tar ball for a Fortran user. Misc. update:
* [svn-r7503] Snapshot version 1.6 release 0 (post8)HDF Admin2003-09-221-2/+2
|
* [svn-r7486] Purpose:Quincey Koziol2003-09-171-2/+2
| | | | | | | Bump version # after creating bugfix snapshot Platforms tested: None necessary.