Commit Graph

6681 Commits

Author SHA1 Message Date
MuQun Yang
00d05eb3df [svn-r3191]
Purpose:
     a windows bug fix
Description:
    support > 2G file on windows NTFS
Solution:
    using fsetpos to seek the address

Platforms tested:
    windows 2000, confirmed on arabica and eirene.
2000-12-22 13:54:16 -05:00
Quincey Koziol
b191b2bb9d [svn-r3189] Purpose:
Changed version number to beta3, now that beta2 is out.
2000-12-22 09:48:36 -05:00
Albert Cheng
641f475af5 [svn-r3165] Increase subrelease string to beta2 to avoid confusion. 2000-12-20 12:19:03 -05:00
Quincey Koziol
9bdd63ada4 [svn-r3162] Purpose:
Bug Fix
Description:
    If the library was compiled with 'NDEBUG' defined, but the user's program
    (the fortran API in this case) was compiled with 'NDEBUG' not defined, the
    IDs returned from the library would appear to be incorrect.
Solution:
    Removed 'ifndef NDEBUG' from around "H5I_TEMPLAX_MAX" definition and error
    checking.
Platforms tested:
    Linux 2.2 (eirene) & FreeBSD 4.2 (hawkwind)
2000-12-20 11:10:56 -05:00
Albert Cheng
976700c212 [svn-r3161] Purpose:
Prepare for 1.4.0beta1 release

README:
src/H5public.h:
    Updated with 1.4.0beta1 version information.

configure.in:
    Changed default setting to --enable-production --disable-debug.

configure:
    Derived from configure.in via autoconf.

Platforms tested:
    Eirene (linux) running just the configure command and compared
    difference with previous configure output to verify expected
    difference.
2000-12-19 14:23:09 -05:00
HDF Admin
479c0a38d0 [svn-r3147] Snapshot version 1.3 release 36 2000-12-16 06:11:39 -05:00
Quincey Koziol
10c6d6d500 [svn-r3138] Purpose:
Bug Fix
Description:
    More descrimination is necessary for the type of background buffer needed.
    Compound types need H5T_BKG_TEMP and vlen & array types need H5T_BKG_YES.
Solution:
    Make the internal routine be more specific about the background type set.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2000-12-14 11:10:32 -05:00
Quincey Koziol
8653f01910 [svn-r3133] Purpose:
Bug fix
Description:
    Set the background buffer type to different values for compound vs. vlen
    & array datatypes.
Platforms tested:
    Cray J90 (killeen)
2000-12-13 19:35:07 -05:00
Quincey Koziol
1f4c821432 [svn-r3131] Purpose:
Bug fix
Description:
    Non-optimized conversions have a memory overwrite bug when the destination
    size of a compound datatype is greater than the source size.
Solution:
    Corrected direction of walking through the destination array for final
    copying.
Platforms tested:
    FreeBSD 4.2 (hawkwind) & Cray J90 (killeen)
2000-12-13 18:33:05 -05:00
Albert Cheng
b72e8ae6b9 [svn-r3120] Purpose:
Bug fix
Description:
    In H5FD_mpio_open, there was a mem-xfree of the file variable
    before it ever gets alloc'ed.  This is inside a failure condition
    that rarely happened.  But if it happens, it would be freeing
    a null pointer.
Solution:
    Removed the error code.
Platforms tested:
    Modi4 -64 parallel. (Everything still works. :-)
2000-12-12 18:20:09 -05:00
Quincey Koziol
be2d93daff [svn-r3110] Purpose:
Bug Fix
Description:
    Compound datatypes weren't reading background data properly when used
    with array or vlen fields.
Solution:
    Changed to always read background information from file in those situations.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2000-12-11 15:06:02 -05:00
HDF Admin
95fe1ec48e [svn-r3106] Snapshot version 1.3 release 35 2000-12-09 01:25:18 -05:00
Albert Cheng
8a3dc0fad8 [svn-r3070] Purpose:
Feature
Description:
    H5Eprint used to print "thread 0" even in MPI-application.
    Added code to print MPI-process rank ID (as in MPI_COMM_WORLD) to
    give more information of which process is printing the messages.
Platforms tested:
    IRIX64-64, both serial and parallel.
2000-12-02 17:53:02 -05:00
Quincey Koziol
74d5c6b757 [svn-r3065] Purpose:
Code cleanup
Description:
    Remove some warnings...
Platforms tested:
    FreeBSD 4.2 (hawkwind) & IRIX64 6.5 (modi4)
2000-12-02 10:11:57 -05:00
Quincey Koziol
26f011afb1 [svn-r3061] Purpose:
Bug fix.
Description:
    Cray T3E (and J90?) was failing on partial I/O tests.  The bug was in
    the optimized hyperslab routines for cases where a hyperslab filled the
    temporary datatype conversion buffer and the optimized hyperslab routine
    needed to start in the middle of a hyperslab.
Solution:
    Corrected code to detect the situation and read in the correct amount of
    elements in the hyperslab.
Platforms tested:
    Cray T3E (mcurie.nersc.gov)
2000-12-01 17:47:34 -05:00
Thomas Radke
14e987f40c [svn-r3059]
Purpose:
    Bugfix
Description:
    Under SunOS 5.5 the symbol FIONBIO wasn't known.
Solution:
    Include <sys/filio.h> which defines this symbol under Solaris.
    Also put the UNUSED qualifier in the right place in a function
    argument list (gcc 2.7.2 didn't like it before the type name).
Platforms tested:
    SunOS 5.5 (hatteras), SunOS 5.6 t(thor.sistec.kp.dlr.de)
2000-12-01 17:03:45 -05:00
Thomas Radke
0473d1c822 [svn-r3058]
Description:
    Added the HAVE_SYS_FILIO_H define for the configure check for <sys/filio.h>.
2000-12-01 16:59:31 -05:00
Robb Matzke
bad9e4d4a1 [svn-r3050] ./hdf5/src/H5.c
2000-12-01 Robb Matzke
        *: Removed empty lines from end of file?
2000-12-01 13:25:05 -05:00
Quincey Koziol
166ae9dabe [svn-r3041] Purpose:
Bug fix
Description:
    Compiler on Cray T3E has a weird problem with operations on size_t
    variables.
Solution:
    Change comparison to make Cray T3E happy.
Platforms tested:
    Cray T3E (mcurie)
2000-11-30 15:33:09 -05:00
Quincey Koziol
22303f9d3f [svn-r3027] Purpose:
Bug fix
Description:
    "UNUSED" macro was in wrong place for older versions of gcc
Solution:
    Moved the "UNUSED" macro to the right of the H5FD_t type declaration and
    the compiler was happy...
Platforms tested:
    Solaris X86 2.5 (hatteras)
2000-11-29 16:28:31 -05:00
MuQun Yang
1424415b7d [svn-r3025]
Purpose:
    fix a bug
Description:
    add <windows.h> for WIN32
Solution:
     Add the following lines at the beginning of the file
     #ifdef WIN32
      #include <windows.h>
      #endif
Platforms tested:
     NT4.0,5.0, and LINUX
2000-11-29 15:06:33 -05:00
MuQun Yang
c05f6477e0 [svn-r3024]
Purpose:
    Fix a bug on windows
Description:
    add windows.h for WIN32
Platforms tested:
     windows NT5.0,4.0, eirene
2000-11-29 15:04:32 -05:00
Quincey Koziol
19d811532a [svn-r3020] Purpose:
Code addition
Description:
    The dumper needs to know when a datatype needs to be reclaimed, so I
    added a small helper function to detect if a particular datatype is or
    contains a particular class of datatypes.
Platforms tested:
    Linux 2.2.16-3smp (eirene)
2000-11-29 12:38:19 -05:00
Quincey Koziol
ad731c2c1b [svn-r3019] Purpose:
Patch on the patch of my code cleanup... :-)
Description:
    Fix compiler problems with previous code patching...
Platforms tested:
    Linux 2.2.16-3smp (eirene)
2000-11-29 11:52:42 -05:00
Quincey Koziol
dd6d6f7b45 [svn-r3015] Purpose:
Bug fixes
Description:
    Patch things back up from incompletely changing some variables in
    yesterday's code cleanup, this should fix the compiler errors that Kent
    and Bill have found in the CVS version of the code.

    Also, fix a bug buried in the datatype conversions when compound datasets
    were nested inside an array or variable-length datatype.  Internally
    require that any datatype which contains a compound datatype sets the
    "need_bkg" conversion flag so a background buffer to pass to the compound
    datatype conversion is allocated.

Platforms tested:
    FreeBSD 4.2 (hawkwind) & Solaris 2.6 (baldric)
2000-11-29 10:47:23 -05:00
Quincey Koziol
ac955b2ccc [svn-r3013] Purpose:
Code cleanup
Description:
    Cleaned up a few warnings which cropped up with different configure
    switches.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2000-11-28 15:09:36 -05:00
Quincey Koziol
c4162e5ce5 [svn-r3010] Purpose:
Bug fix
Description:
    When the v1.2 compatibility code was turned on, internal functions in the
    library were getting confused.
Solution:
    Separated guts of H5Pget_driver call into an API function (the definition
    of which depends on the compatibility switch) and an internal function
    which always behaves like the v1.3/4 function.  Replaced API function calls
    in the library code with the internal function.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2000-11-28 11:38:39 -05:00
Quincey Koziol
51f5bbc54f [svn-r3008] Purpose:
Code cleanup
Description:
    Several places in the code were using -2 as a default value for various
    features.  However, when a default value is returned from a function that
    is supposed to return negative on failure, it was causing confusion and
    extra work for users to check for the special value.
Solution:
    Replaced hard-coded -2 values in the code with symbolic names, then changed
    symbolic names to 0 instead of -2.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2000-11-28 11:18:42 -05:00
Albert Cheng
480acbf3c9 [svn-r3006] Purpose:
Bug fix
Description:
    Fixed some typo that cause compiling errors in parallel mode.
    Also added a default case in the H5Pget_xfer code to catch
    potential future added data transfer mode.
Platforms tested:
    IRIX64-64, parallel.
2000-11-28 08:52:34 -05:00
Quincey Koziol
0726621eaa [svn-r3005] Purpose:
Backward compatibility code
Description:
    Add in code to allow the library to emulate the v1.2 API and behavior.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2000-11-27 18:01:48 -05:00
Albert Cheng
fb7987e708 [svn-r3003] Purpose:
Bug fix
Description:
    The optimized MPI-IO calls, H5S_mpio_spaces_write/H5S_mpio_spaces_read,
    are changed for collective data transfer only since they
    call H5FD_mpio_setup to do setup to eveually call MPI_File_set_view
    in H5FD_mpio_read or H5FD_mpio_write.  MPI_File_set_view is a
    collective call.  Letting independent data transfer use this
    route would result in hanging.
Solution:
    For now, the checking is being done in
    H5D_write and H5D_read before H5S_mpio_spaces_write/H5S_mpio_spaces_read
    is called because the checking code in H5S_mpio_spaces_xfer, though with
    the right idea, is not correct yet.
Platforms tested:
    IRIX64-64 parallel.
2000-11-27 13:25:18 -05:00
Albert Cheng
f0b45019bb [svn-r3002]
Purpose:
    Bug fix
Description:
    H5S_mpio_spaces_xfer() did not do clean up all the times especially
    the MPI_type freeing.
Solution:
     Include the MPI_type freeing as part of cleanup code.  Replaced
     most HRETURN_ERROR(...) with HGOTO_ERROR so that cleanup code
     will be executed.
Platforms tested:
    IRIX64-64.
2000-11-26 01:56:29 -05:00
MuQun Yang
203ea84431 [svn-r3000]
Purpose:
    make mtime test available on windows
Description:
    calculating time zone difference on windows
Solution:
    1.Use /#if WIN32 #endif/ to make sure the modification will not affect other platforms.
    2. use <sys/types.h> and <sys/timeb.h> on NT to obtain time zone difference.

Platforms tested:
     windows 2000
2000-11-25 17:24:42 -05:00
HDF Admin
f91568ce9b [svn-r2998] Snapshot version 1.3 release 34 2000-11-25 01:58:04 -05:00
HDF Admin
c19e71dd3e [svn-r2995] Snapshot version 1.3 release 33 2000-11-22 12:09:53 -05:00
Albert Cheng
91da899a1f [svn-r2990] Purpose:
Bug fix (feature, kind of)
Description:
    The library used to hang if a collective dataset read/write request
    does not have the same number of eventual MPIO request.  Part of the
    reason is that H5FD_read/H5FD_write immediately returns succeess
    if it sees the request size is 0.  This caused problem since other
    processes with I/O to do would be hanging by waiting for the early
    returned process(es).
Solution:
H5FD.c: disable the early return code in parallel mode.  Make it
    go on even with "nothing" to transfer.
H5D.c: the optimized MPIO xfer routines can handle collect calls correctly
    when the condition is right (e.g., no conversion).  When the COLLECTIVE
    request cannot be handled correctly without the risk of hanging, the
    COLLECTIVE is changed to INDEPENDENT calls for the eventual MPIO
    calls.
Platforms tested:
    IRIX64 parallel (-64, n32), IRIX64 -64 sequential, Linux sequential.
2000-11-21 15:55:48 -05:00
Quincey Koziol
9a9b10235e [svn-r2962] Purpose:
Code cleanup
Description:
    Changed another hard-coded '32' into H5S_MAX_RANK
Platforms tested:
    Eyeballed...
2000-11-17 08:42:39 -05:00
Albert Cheng
c385fd2a47 [svn-r2960] Purpose:
Code cleaning
Description:
     Replaced hard coded dimension size with H5S_MAX_RANK.
     Cleanup couple minor type cast mismatch.
Platforms tested:
    modi4 -64 parallel.
2000-11-16 23:48:58 -05:00
Quincey Koziol
ac4ee38811 [svn-r2954] Purpose:
Code checkpoint
Description:
    More generic property coding.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-16 16:00:18 -05:00
Quincey Koziol
388980ad3a [svn-r2953] Purpose:
Small code optimization
Description:
    Changed alloc/free's of H5T_path_t to use a free-list.
Platforms tested:
    Solaris 2.6 (baldric)
2000-11-16 15:37:04 -05:00
Quincey Koziol
b909264b79 [svn-r2952] Purpose:
Small code optimization
Description:
    Statistics on the amount of times a datatype conversion required alignment
    were being kept in all case, even though they are only used when H5T_DEBUG
    is turned on.
Solution:
    Build some extra macros so that the statistics are only kept when the
    H5T_DEBUG macro is defined.
Platforms tested:
    Solaris 2.6 (baldric)
2000-11-16 15:36:13 -05:00
Quincey Koziol
62d8226406 [svn-r2951] Purpose:
Bug fix
Description:
    Previous re-arrangement of FUNC_ENTER macro was a _little_ too agressive
    about not re-checking for library or interface re-initialization.  Although
    it happens very rarely that the library is shut down and then re-started
    the library & interface initialization functions weren't getting run in
    that case.
Solution:
    Separated out the library, interface & function checks again.  This version
    is still a little faster than the previous way things were being done.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-16 15:10:25 -05:00
Quincey Koziol
4fe7973b5c [svn-r2947] Purpose:
Code optimization
Description:
    Re-vamped FUNC_ENTER macro to remove as many of the if's as possible and
    also to only check once if any given function is an API function.

    This improves the performance of the hyperslab I/O benchmark (h5hypers)
    that I've been testing with by another 5%.  All library functions should
    be 5-15% faster, depending on how many times they are called and what
    percentage of the function's time was spent in the FUNC_ENTER macro vs.
    the percentage of time in the main body of the function.
Platforms tested:
    Solaris 2.6 (baldric)
2000-11-16 12:32:46 -05:00
Quincey Koziol
eddfdc1274 [svn-r2946] Purpose:
Small code optimzation
Description:
    Removed some unnecessary calls to H5MM_xfree
Platforms tested:
    Solaris 2.6 (baldric)
2000-11-16 12:29:26 -05:00
Quincey Koziol
b39c60db45 [svn-r2945] Purpose:
Small code optimization
Description:
    Removed some unnecessary buffer assignments.
Platforms tested:
    Solaris 2.6 (baldric)
2000-11-16 12:28:08 -05:00
Quincey Koziol
b524625fcb [svn-r2942] Purpose:
Bug fix
Description:
    When performing I/O on the entire dataset for datasets with the maximum
    number of dimensions, H5S_MAX_RANK, (32 currently), the dimension
    information was getting corrupted internally and causing no data to be
    actually written to the file.
Solution:
    Changed the internal array sizes from H5S_MAX_RANK to H5O_LAYOUT_NDIMS,
    which is one element larger to accomodate the size of the elements
    themselves.
Platforms tested:
    Solaris 2.7 (arabica)
2000-11-15 17:47:59 -05:00
Albert Cheng
e1cd6bcb61 [svn-r2935] Purpose:
Bug fix
Description:
    The optimized MPIO code was not working with the TFLOPS machine.
    It kept reporting "can't convert from size to size_i" errors in
    H5FD_mpio_write() and H5FD_mpio_read().
Solution:
    The error was actually in H5S_mpio_spaces_xfer() in H5Smpio.c
    in which the variable mpi_count was declared as size_t (only
    4 bytes big in TFLOPS) when it should be hsize_t (8 bytes big in TFLOPS).
    Corrected and also changed to use the (hsize_t) to case size_i in
    H5FD_mpio_write() and H5FD_mpio_read() since that is what it should
    be.
Platforms tested:
    TFLOPS and modi4 (-64, parallel)
2000-11-15 14:59:44 -05:00
Bill Wendling
1af9fe5775 [svn-r2928] Purpose:
Buglet fix
Description:
	Get rid of compiler warnings. The HGOTO_RETURN was returning NULL
	when it should have returned FAIL.
Solution:
	Swapped the two.
Platforms tested:
	Linux
2000-11-15 12:46:52 -05:00
Quincey Koziol
8ff45a787d [svn-r2911] Purpose:
Bug fix and code checkpoint
Description:
    HP's compilers didn't seem to like comparing function pointers with '<'
        & '>', so I've changed how the function pointers are compared to aviod
        those operations.  This should fix last night's daily test failures on
        opus and sangamon.

    Also, more code development for generic property lists.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-15 10:32:47 -05:00
Quincey Koziol
d6b0ddc5e7 [svn-r2909] Purpose:
Code checkpoint
Description:
    More generic property functionality added and debugged.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-14 21:27:03 -05:00