Commit Graph

633 Commits

Author SHA1 Message Date
Quincey Koziol
5560c64e25 [svn-r4747] Purpose:
Bug Fix.
Description:
    The H5Rget_object_type function could not get the object type for dataset
    region references.
Solution:
    Added a new function, H5Rget_obj_type, to replace H5Rget_object_type.
    The new function requires the reference type as an additional parameter,
    in order to allow queries on different reference types to be performed
    correctly.
Platforms tested:
    FreeBSD 4.4. (sleipnir)
2001-12-20 15:51:30 -05:00
Quincey Koziol
76034a33b2 [svn-r4737] Purpose:
Bug Fix
Description:
    Added regression test for proper library behavior when adding fields past
    the end of a datatype.
Platforms Tested:
    FreeBSD 4.4 (sleipnir)
2001-12-18 15:28:38 -05:00
Quincey Koziol
47d88766db [svn-r4706] Purpose:
Code cleanup
Description:
    Tweaked internal error handling macros to reduce the size of the library's
    object code by about 10-20%.

    Also cleaned up some compiler warnings...

Platforms tested:
    FreeBSD 4.4 (sleipnir)
2001-12-12 13:40:09 -05:00
Raymond Lu
d28fd08f4a [svn-r4696]
Purpose:
    Modify H5Fclose behavior
Description:
    The HDF5 actual file close behaves in several ways in terms of if there
    are still objects(dataset, group, datatype) opened in file.
Solution:
    Added a new file access property, file close degree.  It has four values,
	H5F_CLOSE_DEFAULT
	H5F_CLOSE_WEAK
	H5F_CLOSE_SEMI
	H5F_CLOSE_STRONG
    The way a file is closed is decided by these values.
Platforms tested:
    IRIX64 6.5, SunOS 5.6, FreeBSD 4.4
2001-12-11 14:53:44 -05:00
Quincey Koziol
3baaa562ee [svn-r4693] Purpose:
Bug Fix

Description:
    The code in H5Sselect_hyperslab_valid contained an fencepost error and is
    allowing selections which overlap the extent by exactly one element in any
    dimension to pass as valid instead of flagging the selection as invalid.

    This bug only affects hyperslabs which have been OR'ed together, not the
    selection from a single H5Sselect_hyperslab.

    This fixes bug #550.

Solution:
    Changed an '>' to an '>=' and added new regression test to check for error.

Platforms tested:
    FreeBSD 4.4 (sleipnir)
2001-12-11 13:26:40 -05:00
Quincey Koziol
7a30de3a2b [svn-r4680] Purpose:
Code cleanup
Description:
    Property that H5P(g|s)et_hyper_cache uses is no longer in use inside the
    library.
Solution:
    Removed H5P(g|s)et_hyper_cache API functions, except when backward
    compatibility is turned on.  When backward compatibility is turned on,
    the property is defined by the library, but unused internally.
Platforms tested:
    FreeBSD 4.4 (sleipnir)
2001-12-06 14:05:12 -05:00
Quincey Koziol
b46e905594 [svn-r4673] Purpose:
Backward Compatibility Fix
Description:
    H5Pset_fapl_log's parameters have changed from a simple "verbosity" level
    to bit-masked flags to enable various behaviors.
Solution:
    Added in v1.4 compat stuff, on the unlikely chance that others are actually
    using this code in some production way.

    There are no C++ or FORTRAN wrappers for this call.
Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-12-05 12:33:31 -05:00
Quincey Koziol
4886a6c447 [svn-r4670] Purpose:
Backward Compatibility Fix
Description:
    One of H5P[gs]et_sym_k's parameters changed between v1.4 and the development
    branch.
Solution:
    Added v1.4 compat stuff around H5P[gs]et_sym_k implementation and testing
    to allow v1.4.x users to continue to use their source code without
    modification.

    These changes are for everything except the FORTRAN wrappers - I spoke with
    Elena and she will make the FORTRAN wrapper changes.
Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-12-05 11:42:40 -05:00
Quincey Koziol
a9c747deba [svn-r4669] Purpose:
Backward Compatibility Fix
Description:
    One of H5P[gs]et_cache's parameters changed between v1.4 and the development
    branch.
Solution:
    Added v1.4 compat stuff around H5P[gs]et_cache implementation and testing
    to allow v1.4.x users to continue to use their source code without
    modification.

    These changes are for everything except the FORTRAN wrappers - I spoke with
    Elena and she will make the FORTRAN wrapper changes.
Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-12-05 11:12:32 -05:00
Quincey Koziol
e30b98d7fb [svn-r4665] Purpose:
Code cleanup
Description:
    Changed the logging file driver to use bitmasked flags for features to
    enable, instead of using a verbosity level.
Platforms tested:
    Solaris 2.6 (baldric)
2001-12-03 16:04:07 -05:00
Quincey Koziol
d456c2bb82 [svn-r4643] Purpose:
Code cleanup
Description:
    Windows is generating hundreds of warnings from some of the practices in
    the library.  Mostly, they are because size_t is 32-bit and hsize_t is
    64-bit on Windows and we were carelessly casting the larger values down to
    the smaller ones without checking for overflow.

    Also, some other small code cleanups,etc.

Solution:
    Re-worked some algorithms to eliminate the casts and also added more
    overflow checking for assignments and function parameters which needed
    casts.

    Kent did most of the work, I just went over his changes and fit them into
    the the library code a bit better.

Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-11-27 11:29:13 -05:00
Quincey Koziol
69575231ef [svn-r4614] Purpose:
Code cleanup
Description:
    Corrected header files needed.
Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-11-20 13:47:15 -05:00
Quincey Koziol
0001a13617 [svn-r4589] Purpose:
Code cleanup
Description:
    Clean up various compiler warnings from generic property updates.
Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-11-03 17:27:54 -05:00
Quincey Koziol
1a65aeeade [svn-r4587] Purpose:
Code speedups, etc.
Description:
    Add tests for new hyperslab API functions (currently ifdef'd out)
Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-11-02 15:32:11 -05:00
Raymond Lu
e9d955be61 [svn-r4585]
Purpose:
    Switch from old property list to new generic property list.
Description:
    Switch API function for the new generic property list.
Platforms tested:
    IRIX64 6.5, FreeBSD, SunOS 5.7.
2001-11-02 14:47:41 -05:00
Raymond Lu
b6da4ea427 [svn-r4569]
Purpose:
    Generic Property List Change
Description:
    Changed file access list to the new generic list.
Platforms tested:
    IRIX64, SunOS5.7, FreeBSD
2001-10-24 13:02:27 -05:00
Quincey Koziol
aef98c3b6f [svn-r4568] Purpose:
Code cleanup
Description:
    I had moved an fclose() in my earlier fix and it could lead to a resource
    leak in certain error conditions.

    Also, prepared file for Albert to expand to test with files larger than
    2GB... :-)
Solution:
    Moved fclose() call back to original position.

    Put in type cast for FAMILY_SIZE macro.

Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-10-23 16:38:21 -05:00
Quincey Koziol
b8a536b20b [svn-r4564] Purpose:
Bug fix
Description:
    'big' test was not detecting that the AFS quota had been hit when running
    under FreeBSD.
Solution:
    Amending quota checking code to detect errors on file closes as well as
    opens, seeks and writes.
Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-10-23 14:20:47 -05:00
Raymond Lu
a3dfc8e0c5 [svn-r4544]
Purpose:
    Changed the file creation property list to the new generic property list.
    Modified for new file creation property list.
Platform tested:
    IRIX64, SunOS5.7, FreeBSD
2001-10-15 14:38:51 -05:00
HDF Rational
7e811fe460 [svn-r4528] Purpose:
Code cleanup
Description:
    Purify detected an uninitialized memory read in test data.
Solution:
    Corrected parameters for initializing data array so entire array is
    initialized.
Platforms tested:
    Solaris 2.7 (arabica)
2001-10-05 17:30:27 -05:00
HDF Rational
d4df0d40dc [svn-r4527] Purpose:
Code cleanup
Description:
    Purify detected some resource leaks in the tests.
Solution:
    Released memory and property lists properly.
Platforms tested:
    Solaris 2.7 (arabica)
2001-10-05 17:29:20 -05:00
HDF Rational
4b3875ad58 [svn-r4526] Purpose:
Code cleanup
Description:
    Purify detected uninitialized memory being read.
Solution:
    Initialization array before writing to disk.
Platforms tested:
    Solaris 2.7 (arabica)
2001-10-05 17:27:58 -05:00
MuQun Yang
0ecc4709e9 [svn-r4524]
Purpose:
    refix tconfig.c
Description:
    Follow Robb's reminder, long_long is used to define __int64 in windows and long long for other platforms at H5private.h.
Solution:
     just change vrfy_ctype(long long....) into vrfy(long_long,.....) in the tconfig.c. Delete the previous
macro.
Platforms tested:
    windows 2000, linux
2001-10-05 13:39:36 -05:00
MuQun Yang
2f90a7ae41 [svn-r4522]
Purpose:
 bug fixed
Description:
    Windows doesn't recognize long long. Instead it uses __int64. So add a macro
like
#ifdef HAVE____int64 for windows-like platforms.
Solution:
 see above
Platforms tested:
eirene
2001-10-05 11:43:32 -05:00
Raymond Lu
e3a137f39e [svn-r4517]
Purpose:
    Changed to the new generic property list for dataset creation property
    list.
Platforms tested:
    Arabica, modi4 and Hawkwind
2001-10-03 12:57:56 -05:00
Quincey Koziol
bac55034d8 [svn-r4509] Purpose:
Test bug fix.
Description:
    When reading or writing to chunked datasets and the data needed datatype
    conversion, and the amount of data was more than one conversion buffer,
    data in the conversion buffer was getting corrupted.
Solution:
    Corrected error in advancing buffer pointer where it was being advanced
    by the number of elements instead of the number of bytes.
Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-10-02 11:58:16 -05:00
Quincey Koziol
7a96b1a0d2 [svn-r4482] Purpose:
Kludge
Description:
    Since we're only about halfway through converting the internal use of
    property lists from the "old way" to the generic property lists, we turned
    off snapshots to avoid exposing lots of API changes to users, until the
    APIs settled down.

    Getting the snapshots rolling again seems to have become a priority, so
    some changes are going to have to be made now that were going to be
    postponed until we were completely finished with the conversion.  This
    requires that the old API functions be able to deal with both the old
    and new property lists smoothly.

Solution:
    Kludge together the property list code so that they can transparently handle
    dealing with both the old and new property lists

Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-09-26 15:29:35 -05:00
Albert Cheng
2612814874 [svn-r4474] Purpose:
New feature.
Description:
    Added a test to verify the correctness of information provided by
    configure in H5config.h.  Some information, such as SIZEOF some
    types can be hardcoded by config/<machine>.  This test verified
    the information is indeed correct.
    Currenly, only size of C language types are verified.
Platforms tested:
    Eirene, regular, arabica.
2001-09-26 00:37:15 -05:00
Quincey Koziol
ed663577a5 [svn-r4473] Purpose:
Code cleanup for better compatibility with C++ compilers
Description:
    C++ compilers are choking on our C code, for various reasons:
        we used our UNUSED macro incorrectly when referring to pointer types
        we used various C++ keywords as variables, etc.
        we incremented enum's with the ++ operator.
Solution:
    Changed variables, etc.to avoid C++ keywords (new, class, typename, typeid,
        template)

    Fixed usage of UNUSED macro from this:
        char UNUSED *c
    to this:
        char * UNUSED c

    Switched the enums from x++ to x=x+1
Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-09-25 12:46:32 -05:00
Bill Wendling
09f30c6f45 [svn-r4464]
Purpose:
    Bug Fix
Description:
    The error codes checked for were hardcoded into the program.
Solution:
    Used the "enum" names instead.
Platforms tested:
    Linux
2001-09-18 15:12:37 -05:00
Bill Wendling
a34af05801 [svn-r4419]
Purpose:
    Bug Fix
Description:
    The table of error messages was updated in H5E.c. The change wasn't
    reflected in this test because, sadly, we use hardcoded numerical
    values for the "error" we want to check for and not the symbols.
Solution:
    Bumped up the error number from 32 to 34 to coincide with the error
    we expect.
Platforms tested:
    Linux
2001-09-04 12:37:10 -05:00
Albert Cheng
34b8cca115 [svn-r4364] Purpose:
cleanup
Description:
    chunk, iopipe, overhead have been moved to perform/.
Platforms tested:
    eirene(parallel).
2001-08-16 00:27:33 -05:00
Quincey Koziol
e87fc517b8 [svn-r4355] Purpose:
Code cleanup (sorta)

Description:
    When the first versions of the HDF5 library were designed, I remembered
    vividly the difficulties of porting code from a 32-bit platform to a 16-bit
    platform and asked that people use intn & uintn instead of int & unsigned
    int, respectively.  However, in hindsight, this was overkill and
    unnecessary since we weren't going to be porting the HDF5 library to
    16-bit architectures.

    Currently, the extra uintn & intn typedefs are causing problems for users
    who'd like to include both the HDF5 and HDF4 header files in one source
    module (like Kent's h4toh5 library).

Solution:
    Changed the uintn & intn's to unsigned and int's respectively.

Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-08-14 17:09:56 -05:00
Quincey Koziol
d24ae52673 [svn-r4326] Purpose:
Code cleanups, mostly..
Description:
    Work on pacifying the SGI compiler to get the generic properties working
    correctly with --enable-parallel and --enable-fortran.  It's not quite
    fixed yet, but I need to head home and these patches help... :-/
Platforms tested:
    IRIX64 6.5 (modi4)
2001-08-10 17:30:01 -05:00
Quincey Koziol
95862451f7 [svn-r4324] Purpose:
New Features!
Description:
    Start migrating the internal use of property lists in the library from the
    older implementation to the new generic property lists.

    Currently, only the dataset transfer property lists are migrated to the
    new architecture, all the rest of the property list types are still using
    the older architecture.

    Also, the backward compatibility features are not implemented yet, so
    applications which use dataset transfer properties may need to make the
    following changes:
        H5Pcreate(H5P_DATASET_XFER) -> H5Pcreate_list(H5P_DATASET_XFER_NEW)
            and
        H5Pclose(<a dataset transfer property list>) -> H5Pclose_list(id)

    This still may have some bugs in it, especially with Fortran, but I should
    be wrapping up those later today.

Platforms tested:
    FreeBSD 4.4 (hawkwind)
2001-08-10 15:47:05 -05:00
Quincey Koziol
41529d180e [svn-r4312] Purpose:
Feature shift
Description:
    Take out the v1.2.x compatibility stubs and put in the hooks for v1.4.x
    compatibility when needed.
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-08-06 11:01:44 -05:00
Bill Wendling
b5d11111b0 [svn-r4292]
Purpose:
    Bug Fix
Description:
    The way we were generating Dependencies and .depend files was broken.
    If the $srcdir or other macros began with a ".", then it would match
    anything and cause problems since it would then overwrite the
    beginning of the header file's path.
Solution:
    Wrote a Perl script which can handle this type of weirdness better.
    It's only used when the environment is a GNU one with a GCC
    compiler...
Platforms tested:
    Linux
2001-08-01 16:00:25 -05:00
Quincey Koziol
bbae8bfdcd [svn-r4281] Purpose:
Additional test
Description:
    Added metadata cache abuser code to the 'timings' target in the tests.
Platforms Tested:
    FreeBSD 4.3 (hawkwind)
2001-07-30 15:03:25 -05:00
Quincey Koziol
990fadfbe5 [svn-r4181] Purpose:
Bug Fix, Code Cleanup, Code Optimization, etc.
Description:
    Fold in the hyperslab speedups, clean up compile warnings and change a
    few things from using 'unsigned' or 'hsize_t' to use 'size_t' instead.
Platforms tested:
    FreeBSD 4.3 (hawkwind), Solaris 2.7 (arabica), Irix64 6.5 (modi4)
2001-07-10 16:19:18 -05:00
Quincey Koziol
0c1c23245d [svn-r4180] Purpose:
Documentation
Description:
    Accommodate v1.2.x behavior when --enable-hdf5v1_2 is enabled.
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-07-10 15:18:52 -05:00
Pedro Vicente Nunes
f9f0de7aa0 [svn-r4099]
Purpose:
    Code Cleanup
Description:
    Updating CodeWarrior Port
Solution:
    Move around some Windows and Metroworks ifdefs, etc.
Platforms tested:
    Solaris 2.7 (arabica) Linux 2.2 (eirene)
2001-07-03 09:49:03 -05:00
Thomas Radke
69b26f8ecb [svn-r4091]
Purpose:
    Use port hunting to test the Stream VFD
Description:
    The stream driver is tested by streaming data
    between two different processes on the local
    machine on a given default port.
    If this port is already is use, port hunting
    should find the next available port to use.
    The hostname/port information which is actually
    used by the sender is written to a temporary
    file which is then read by the receiver process
    to connect to the sender's port.

    For the purpose of testing I switched back
    the default port to use from 10007 to 5678
    which is at least already used by another
    service on modi4.
Platforms tested:
    x86 Linux, Irix 32/64 bit (modi4), Dec Alpha,
    Unicos on T3E, Hitachi SR8000, AIX on SP2
2001-07-02 08:05:50 -05:00
Quincey Koziol
8c2c4cd51c [svn-r4088] Purpose:
Code cleanup
Description:
    Recent CodeWarrior patches have broken the Unix builds and moved code
    around in non-portable ways.
Solution:
    Patched things back up to try to accomodate CodeWarrior and still let the
    Unix builds work correctly.
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-06-29 14:49:53 -05:00
Pedro Vicente Nunes
098ed81ec8 [svn-r4083]
code warrior support
and some clean up
the macros file_seek and file_offset_t that were repeated over sevral files were put only in
H5private.h
H5private .h was updated for win32


vthe
Description:
Solution:
Platforms tested:
2001-06-29 10:27:15 -05:00
Quincey Koziol
8a71bdcfde [svn-r4069] Purpose:
Code cleanup...
Description:
    Took out Windows ifdef and switched back to just using HDmkdir
2001-06-22 16:54:07 -05:00
MuQun Yang
a3b9db81d1 [svn-r4047]
Purpose:
      bug fix for windows
Description:
     adding various windows macros
Solution:
     see above
Platforms tested:
     windows 2000, confirmed on linux.
2001-06-21 15:06:32 -05:00
Quincey Koziol
d41b9fffdf [svn-r4012] Purpose:
Clean up compiler warnings.
Description:
    Just code neatening mostly, some casts, etc.
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-06-18 15:22:10 -05:00
Quincey Koziol
b1fa7d9e9e [svn-r4003] Purpose:
Regression check added
Description:
    Added regression check to verify that the array reading code is now working
    correctly for small data transfer buffers.
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-06-14 15:12:09 -05:00
Pedro Vicente Nunes
504bc34f60 [svn-r3974] code warrior port 2001-06-07 11:03:02 -05:00
Quincey Koziol
a780719ff4 [svn-r3962] Purpose:
Code cleanup
Description:
    Incremented error count when error conditions occur.
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-06-05 17:59:47 -05:00
Bill Wendling
07b035e2d4 [svn-r3944] Purpose:
Fixlet
Description:
    Some variables weren't being assigned before being used.
Solution:
    Initialized with '\0'.
Platforms tested:
    Linux
2001-05-25 16:00:41 -05:00
Bill Wendling
c604072c6f [svn-r3941] Purpose:
Small Fix
Description:
    Don't delete the /tmp/${USER,LOGIN} directory when we're done with
    it. Also, only do the /tmp/${USER,LOGIN} if this is a parallel
    configured library.
Solution:
    Removed the removal of the /tmp/${USER,LOGIN} directory and added
    checks to determine if we're in a parallel configured library before
    munging the filename...
Platforms tested:
    Linux
2001-05-25 15:01:38 -05:00
Bill Wendling
3b252585d0 [svn-r3936] Purpose:
Feature Add
Description:
    Added the feature (not a bug, a FEATURE!) that, if the person has the
    env variables USER or LOGIN set, then it will place the temporary
    files in the "/tmp/$USER" or "/tmp/$LOGIN" directory (in that order).
    This is only if the prefix the user gives is the default one "/tmp".

    After the tests are finished, it will remove the directory for the
    user.
Platforms tested:
    Linux
2001-05-22 18:27:38 -05:00
Quincey Koziol
19fef59d90 [svn-r3833] Purpose:
More tests
Description:
    Added test to verify non-zero userblocks working correctly with dataset I/O
    code.
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-04-23 15:05:15 -05:00
Bill Wendling
d8bf299873 [svn-r3779] Purpose:
Update
Description:
    Updated from the new Dependencies generation stuff.
Platforms tested:
    Linux
2001-04-05 12:06:56 -05:00
Bill Wendling
bfd983e7f4 [svn-r3770] Purpose:
Update
Description:
    Changed includes of the form:

            #include <hdf5_file.h>

    to

            #include "hdf5_file.h"

    so that gcc can pick them up easier without including the system
    header files since we don't care about them.
Platforms tested:
    Linux
2001-04-03 13:09:16 -05:00
Quincey Koziol
59f299b826 [svn-r3747] Purpose:
Portability tweaks
Description:
    Certain features (signal for FPE, some assertions, etc) used in testing
    are not available in certain non-UNIX platforms.
Solution:
    Ifdef'd out the test code on the platforms which don't have that support.
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-03-31 22:29:33 -05:00
Quincey Koziol
4650caa3a6 [svn-r3746] Purpose:
Code tweak
Description:
    Large data arrays were being created on the stack.
Solution:
    Hoisted the data variables out of the function(s) and make into static
    variables.
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-03-31 22:27:34 -05:00
Quincey Koziol
e7e8b02c3a [svn-r3745] Purpose:
Code Tweaks
Description:
    "FILE" macro for file names was getting confused with Standard C __FILE__
    macro on certain platforms.
Solution:
    Changed "FILE" macro usage to "DATAFILE"
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-03-31 22:25:53 -05:00
Quincey Koziol
b2bfb5ebc0 [svn-r3744] Purpose:
Code cleanup
Description:
    Code had ifdef's instead of using standard macro wrappers for getpid()
    call.
Solution:
    Took out ifdef's and changed to use standard H5getpid() macro.
Platforms tested:
    FreeBSD 4.3 (hawkwind)
2001-03-31 22:23:49 -05:00
Albert Cheng
cb876a28a1 [svn-r3677] Purpose:
Bug fix (sort of)
Description:
    The RCSID string in H5public.h was causing the C++ code problem as it
    was included multiple times and C++ did not like multiple definitions
    of the same static variable.
Solution:
    Since we don't really make use of the RCSID strings as we have not
    installed it in all source files, we decided to remove it.
Platforms tested:
    eirene (linux), modi4 (IRIX64-64) both serial and parallel modes.
2001-03-20 16:32:24 -05:00
Quincey Koziol
09a8e85f27 [svn-r3652] Purpose:
Code cleanup
Description:
    Binh-Minh found several places where parameters and/or return-values in the
    tests were not matching the current parameters for functions in the library.
Solution:
    Walked through the code and aligned the parameters and return-values with
    the current functions.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2001-03-16 13:17:25 -05:00
Quincey Koziol
50caed33bd [svn-r3521] Purpose:
Test checkpoint
Description:
    Checkpointing generic property tests before removing the older [non-generic]
    property list implementation and switching all the property lists to use
    the generic code.

    Generic properties are feature complete and as fully tested as I can
    determine.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2001-02-27 17:27:45 -05:00
Quincey Koziol
bc3d5215ab [svn-r3480] Purpose:
Bug Fixes
Description:
    Wrote test to exercise hyperslab I/O on chunked datasets where the
    hyperslabs aren't aligned on exact dimension boundaries.
Platforms tested:
    FreeBSD 4.2. (hawkwind)
2001-02-21 16:26:23 -05:00
Albert Cheng
f61b3fa137 [svn-r3379] Purpose:
"Bug fix"
Description:
    It could not create the stream file in modi4 because port 5678 is used by
    a recently installed application in modi4.  But the reading side just
    waited there and the two test processes have to be killed by hand.
Solution:
    Changed to use port 10007 instead, hoping less chance of conflict
    with other applications.  Just a short-term solution.
Platforms tested:
    modi4.
2001-02-08 11:58:55 -05:00
Quincey Koziol
a319837a4f [svn-r3326] Purpose:
Clean up warnings
Description:
    The "FAILED" macro is defined by Windows and is causing warnings and
    potential errors when compiled on that platform.
Solution:
    Change our macro from FAILED to H5_FAILED.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2001-01-25 12:03:29 -05:00
Quincey Koziol
7c935bbd09 [svn-r3307] Purpose:
Code cleanup
Description:
    File was being opened around several dataspace operations which don't
    need the file to be open.
Solution:
    Removed file open/close around the dataspace operations.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2001-01-19 13:47:24 -05:00
Quincey Koziol
7921315a33 [svn-r3304] Purpose:
Code update
Description:
    Remove ragged array code & tests from library before release.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2001-01-18 18:30:23 -05:00
Quincey Koziol
0059525322 [svn-r3303] Purpose:
Additional testing
Description:
    Added another random hyperslab test with smaller strip-mine buffers to
    force more errors conditions (if they exist).
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2001-01-18 17:02:15 -05:00
Quincey Koziol
7656baeed9 [svn-r3292] Purpose:
Comment fix
Description:
    Comment describing test was misleading
Solution:
    Corrected description of type of test being performed.
Platforms tested:
    Eyeballed...
2001-01-16 13:11:54 -05:00
Quincey Koziol
7bdd4ed41f [svn-r3281] Purpose:
Bug fix
Description:
    Datasets were allowed to be created with chunks larger than the maximum
    dimension for each dimension.
Solution:
    Wrote test to verify new error checking is working correctly.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2001-01-12 14:57:33 -05:00
MuQun Yang
4ce7a7ad80 [svn-r3275]
Purpose:
    windows bug fix
Description:
    using HDopen and HDclose at this file, including H5private.h for windows specific headers.
Solution:
Platforms tested:
    win 2000, confirmed at eirene
2001-01-12 01:45:40 -05:00
Quincey Koziol
35bc545296 [svn-r3252] Purpose:
Code cleanup.
Description:
    Fixed _lots_ (I mean _tons_) of warnings spit out by the gcc with the
    extra warnings.  Including a few show-stoppers for compression on IRIX
    machines.
Solution:
    Changed lots of variables' types to more sensible and consistent types,
    more range-checking, more variable typecasts, etc.
Platforms tested:
    FreeBSD 4.2 (hawkwind), IRIX64-64 (modi4)
2001-01-09 16:22:30 -05:00
MuQun Yang
ea158f0f66 [svn-r3242]
Purpose:
     bug fix for windows
Description:
      in windows use _getpid instead of getpid
Solution:
Platforms tested:
     windows 2000
2001-01-04 18:52:03 -05:00
Quincey Koziol
ad08120b6d [svn-r3237] Purpose:
Bug fix.
Description:
    Properly detect whether the library has compression support and skip
    tests (with messages) if there is no compression.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2001-01-03 20:32:22 -05:00
MuQun Yang
d3301180f5 [svn-r3234]
Purpose:
    a bug fix
Description:
    without explicitly including stdio.h in this file, it will fail in compiling
    at the first time of building up the library. It needs to be recompiled separetely. Now it can work. The real reason is to be investigated.
Solution:
     adding include <stdio.h> for win32.
Platforms tested:
    win 2000
2001-01-03 18:41:45 -05:00
Quincey Koziol
d120946643 [svn-r3140] Purpose:
Added testing
Description:
    Since I accidentally checked in some bug-fixes for the generic property
    code in my last checkin, I thought it would be a good idea to check in the
    tests for them also.  If these cause problems, I'll back them out of the
    CVS tree...
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2000-12-14 11:45:14 -05:00
Quincey Koziol
e974009fd6 [svn-r3132] Purpose:
More tests
Description:
    Added regression test for non-optimized compound datatype conversion fix.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2000-12-13 18:33:57 -05:00
Quincey Koziol
6cfbe1f0c7 [svn-r3111] Purpose:
Additional test
Description:
    Exercise reading background buffer from file when reading only one field
    from a compound datatype which has array fields.
Platforms tested:
    FreeBSD 4.2 (hawkwind)
2000-12-11 15:07:04 -05:00
Quincey Koziol
5c25be11a2 [svn-r3018] Purpose:
Bug fix
Description:
    Had incorrect logic in testing for file families when v1.2 compatibility
    was enabled..
Solution:
    Corrected to match non-compatibility code.
Platforms tested:
    Linux 2.2.16-3smp (eirene)
2000-11-29 11:35:19 -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
MuQun Yang
0cf81a0aa8 [svn-r3001]
Purpose:
    Fix a bug caught by debug version of windows 2000 at test_compound_5(struct optimization converter).
Description:
    free memory of a variable before checking the result by using that variable.
Solution:
    put free(buf) and free(bkg) after the following block:

     /* Check results */
    if (memcmp(src[1].name, dst[1].name, sizeof(src[1].name)) ||
        src[1].tdim!=dst[1].tdim ||
        src[1].coll_ids[0]!=dst[1].coll_ids[0] ||
        src[1].coll_ids[1]!=dst[1].coll_ids[1] ||
        src[1].coll_ids[2]!=dst[1].coll_ids[2] ||
        src[1].coll_ids[3]!=dst[1].coll_ids[3]) {
        FAILED();
        return 1;
    }

Platforms tested:
    windows 2000 and confirmed at LINUX(eirene).
2000-11-25 17:30:59 -05:00
Quincey Koziol
cfac5f773e [svn-r2974] Purpose:
Code bullet-proofing
Description:
    There were several hard-coded values in various places in this test and
    it wasn't checking for out-of-memory conditions very robustly.
Solution:
    Changed hard-coded values to be computed values and performed better
    checking for out-of-memory situations.
Platforms tested:
    SGI O2K (modi4) and Solaris 2.6 (baldric)
2000-11-17 16:12:23 -05:00
Quincey Koziol
5387697213 [svn-r2955] Purpose:
Code checkpoint
Description:
    More generic property testing.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-16 16:00:28 -05:00
Quincey Koziol
e46bc7f206 [svn-r2912] Purpose:
Code checkpoint
Description:
    More code testing for generic property lists.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-15 10:33:00 -05:00
Quincey Koziol
d272434f02 [svn-r2910] Purpose:
Code checkpoint
Description:
    More generic property functionality tested
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-14 21:27:15 -05:00
Quincey Koziol
6ff7489679 [svn-r2900] Purpose:
Code development
Description:
    Adding more generic property list tests for new functions.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-14 18:13:36 -05:00
Quincey Koziol
f71306c9d8 [svn-r2893] Purpose:
Code development
Description:
    Starting to implement actual tests for generic property lists.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-13 19:06:14 -05:00
Quincey Koziol
bf9a8a39c8 [svn-r2887] Purpose:
Backward compatibility additions
Description:
    Test HDF5 v1.2 compatibility API functions (H5Tget_member_dims &
    H5Tinsert_array) when they are built into the library.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-13 16:26:56 -05:00
Quincey Koziol
6c603f3e77 [svn-r2875] Purpose:
Code cleanup
Description:
    Eliminated some warnings on O2K platform.
Platforms tested:
    SGI O2K (modi4)
2000-11-13 12:03:59 -05:00
Quincey Koziol
7a4d4b9aa2 [svn-r2872] Purpose:
Code update
Description:
    Added stub for generic property testing, although it doesn't do anything
    yet.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-11 19:10:08 -05:00
Quincey Koziol
04223a18f4 [svn-r2866] Purpose:
Code cleanup
Description:
    Found more "Have_foo" usage and converted them to "H5_HAVE_foo"
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-11 10:58:12 -05:00
Quincey Koziol
b20fa011c2 [svn-r2864] Purpose:
Additional testing.
Description:
    Verify that calling H5Rget_obj_type with a region reference fails.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-10 19:12:21 -05:00
Thomas Radke
2047b4fc44 [svn-r2863]
Purpose:
    Bugfix
Description:
    Undo my last bugfix
Solution:
    Although changing 'return()' into '_exit()' for forked processes
    fixed core dumping of stream_test under Linux SMP it wasn't really
    a bugfix. In fact it still crashed on a T3E.
    Now it turned out that the bug was in some cleanup routine in H5FD.c.
    Since this has been fixed by Robb I can undo my (unneccessary) changes.
Platforms tested:
    Linux SMP (eirene)
    IRIX64 (modi4), IRIX32 (origin)
    T3E
2000-11-10 19:09:00 -05:00
Quincey Koziol
376d1b62d9 [svn-r2862] Purpose:
Bug fix.
Description:
    Had been using older-style "HAVE_foo" macros instead of newer "H5_HAVE_foo"
    macros.
Solution:
    Added a "H5_" to all the "HAVE_foo" macros.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-10 17:27:51 -05:00
Quincey Koziol
f178100d14 [svn-r2844] Purpose:
New Feature
Description:
    Added array datatype tests to the regression tests.  These datatype
    combinations are tested currently:
        1-D array of atomic datatypes
        3-D array of atomic datatypes
        array of array of atomic datatypes
        array of compound of atomic datatypes
        array of compound of array datatypes
        array of VL of atomic datatypes
        array of VL of array datatypes

    Also added a test to verify that the older style compound datatype with
    array fields works correctly.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-11-09 16:47:59 -05:00
Thomas Radke
025fb428a3 [svn-r2834]
Purpose:
    Bugfix
Description:
    The stream_test program reported an error under Linux SMP
    for testing the Stream VFD although everything seemed to be fine.
Solution:
    The sender and receiver process which are forked by main()
    called return(retcode) at exit which implies closing open file descriptors.
    Since these are shared this caused a SEGFAULT in either the sender
    or the receiver when exiting.
    Replacing return() by _exit() is the right way to terminate the forked
    processes in this case.
Platforms tested:
    Linux SMP (eirene)
2000-11-08 17:47:35 -05:00
Raymond Lu
3e9676aed5 [svn-r2801]
Purpose:
    Change to a more appropriate way.
Description:
    Change the port number from hard-coded to the one depending on
    the configure file ~/.srb/.MdasEnv.
Solution:
    [details about the changes, algorithm, etc...]
    [Please as detail as you can since your own explanation is
    better than others guessing it from the code.]
Platforms tested:
    [machines you have tested the changed version.  This is absolute
    important.  Test it out on at least two or three different platforms
    such as Big-endian-32bit (SUN/IRIX), little-endian-32(LINUX) and
    64-bit (IRIX64/UNICOS/DEC-ALPHA) would be good.]
2000-11-03 15:43:46 -05:00
Raymond Lu
86ba18c0a7 [svn-r2800]
Purpose:
    Fix a typo
Description:
    Just a typo in print output.
Solution:
    [details about the changes, algorithm, etc...]
    [Please as detail as you can since your own explanation is
    better than others guessing it from the code.]
Platforms tested:
    [machines you have tested the changed version.  This is absolute
    important.  Test it out on at least two or three different platforms
    such as Big-endian-32bit (SUN/IRIX), little-endian-32(LINUX) and
    64-bit (IRIX64/UNICOS/DEC-ALPHA) would be good.]
2000-11-03 15:41:13 -05:00
Thomas Radke
4b78390eda [svn-r2750]
Purpose:
    Port to Windows.
Description:
    The stream_test program now also compiles and can be run under Windows.
Solution:
    The problem was that fork(2) and waitpid(2) aren't available
    under Windows when using the MS compilers.
    So I test for both H5_HAVE_FORK and H5_HAVE_WAITPID.
    These are already checked fortunately during configuration.

    If they are not there the code just says
      printf ("Test skipped because this architecture doesn't provide "
              "fork(2) and waitpid(2)\n");

Platforms tested:
    Windows NT, both with MS Visual C++ and GNU cc
    Now you can build and run the Stream VFD testsuite under Windows
    when using GNU cc !!
2000-10-28 14:19:39 -05:00
Albert Cheng
493f90f74a [svn-r2725] Purpose:
Bug fix.
Description:
    Could not find the pre-created file for the H5S_MAX_RANK test
    when --srcdir option is used.  testhdf5 was looking for it
    in the currect directory only.
Solution:
    Make use of the value of the environment variable srcdir that
    is passed to the tests.  Compose the real location of the testfile
    in order to open it even from a remote build directory.
Platforms tested:
    Modi4, arabica, eirene
2000-10-24 13:58:31 -05:00
Quincey Koziol
51ba7ad48c [svn-r2717] Purpose:
Change test files for increased maximum dimension constant.

Description:
    space_overflow.c - added some simple error checking.

    th5s.c - corrected test case for maximem dimensions to use correct file
        and actually test what is supposed to be tested... :-)

    th5s.h5 - regenerated with increased dimensions.

Platforms Tested:
    FreeBSD 4.1.1 (hawkwind)
    Solaris 2.5 (baldric)
2000-10-20 15:57:56 -05:00
Quincey Koziol
114ac60d1b [svn-r2708] Purpose:
Add test case for contiguous hyperslabs.
Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-10-19 15:53:07 -05:00
Quincey Koziol
95445613ca [svn-r2699] Purpose:
Bug fix
Description:
    "Time" datatypes (H5T_UNIX_D*) were not being stored and retrieved in
    the datatype object header message correctly.
Solution:
    Store endian-ness and precision in the datatype object header message and
    added test to continue to track them working correctly.

    This fixes bug #512.

Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-10-19 11:42:33 -05:00
Quincey Koziol
2011215517 [svn-r2689] Purpose:
Bug fix.
Description:
    Previously, it has been possible to dereference deleted objects in a file.
    Obviously, this is incorrect and could cause all sorts of problems if the
    object being dereferenced had been partially over-written with other
    information.  - This is documented in Bug #493.
Solution:
    Check the link count for objects being dereferenced and don't allow any
    objects with link counts of zero to be dereferenced.

    This fixes bug #493.

Platforms tested:
    FreeBSD 4.1.1 (hawkwind)
2000-10-17 15:46:57 -05:00
Quincey Koziol
123072a922 [svn-r2653] Purpose:
No change.
Description:
    Must've added some debuging printf's and then took them out in a way which
    triggered CVS.
Platforms tested:
    Solaris 2.6 (baldric) & FreeBSD 4.1.1 (hawkwind)
2000-10-10 02:44:33 -05:00
Albert Cheng
0c492a236d [svn-r2650] Purpose:
Bug fix
Description:
    The predefined HDF5_PARAPREFIX has a trailing slash.  The parallel
    testfile names end up with two adjacent slashes that made some system
    unhappy.
Solution:
    Removed the trailing slash.
Platforms tested:
    Arabica (solaris 2.7).
2000-10-09 23:35:39 -05:00
Robb Matzke
f2caef690b [svn-r2573] Purpose:
Fix Irix pmake bugs
Description:
	Build fails on Irix when builddir != srcdir
Solution:
	* acconfig.h
	* src/H5config.h.in			[REGENERATED]
		Added definition for HAVE_STREAM

	* config/conclude.in
	* config/depend1.in
	* config/depend2.in
	* config/depend3.in
	* config/depend4.in
		The `Dependencies' file is located in the source
		tree. This fixes bugs for Irix pmake when compiling
		outside the source tree.  Hopefully it still preserves
		Albert's changes which allow concurrent compilations
		to not stomp on each other's Dependencies files.


	* examples/Dependencies			[REGENERATED]
	* src/Dependencies			[REGENERATED]
	* test/Dependencies			[REGENERATED]
	* tools/Dependencies			[REGENERATED]
		Regenerated for testing purposes.
Platforms:
	i686-pc-linux
	mips-sgi-irix6.5
	sparc-sun-solaris2.6
2000-09-19 12:04:46 -05:00
Thomas Radke
2fdf107b64 [svn-r2562] Purpose:
Added test program to verify the Stream Virtual File Driver.

Description:
    This program tests the functionality of the Stream Virtual File Driver.

      1. It spawns two new processes, a sender and a receiver.
      2. The sender opens an HDF5 file for writing and writes
         a sample dataset to it.
         On closing the file the Stream VFD would send the file
         contents to any connected client.
      3. The receiver serves as a client attempting to open an
         HDF5 file for reading. On opening the file the Stream VFD
         would establish a socket connection to the sender process,
         identified by its hostname (which is localhost in this example)
         and a port number, and read the file contents via this socket.
         Aftwerwards the dataset is read from the file into memory
         and verified.
      4. The main program waits for termination of its two child
         processes and returns their exit code.

Platforms:
     Tested so far under Linux, Irix 32/64bit, OSF1, Solaris, Cray Unicos,
     Hitachi SR8000, IBM AIX.
     Not tested under Windows yet.
2000-09-15 06:59:35 -05:00
Thomas Radke
90a95467e6 [svn-r2561] Purpose:
Add the Stream VFD test program to the 'make check' targets.

Description:
     Added stream_test to the TEST_PROGS variable and a rule to build it.
2000-09-15 06:54:06 -05:00
Quincey Koziol
51e91feba8 [svn-r2547] Changed hyperslab definition to generate one 6x6 hyperslab instead of 36 1x1
hyperslabs.
2000-09-13 18:50:39 -05:00
Quincey Koziol
6a3bebec59 [svn-r2545] Updated some printfs to be more informative when failures occur. 2000-09-13 16:58:44 -05:00
Bill Wendling
7bedd301a0 [svn-r2539] Removed the -R$(ZLIB_DIR) flag since that is now being taken care of much
more nicely in the config/commence file...
2000-09-12 02:55:38 -05:00
Bill Wendling
a33e9619aa [svn-r2533] Rolled back the changes I committed since Albert fixed the problem with
FILENAME being extern global...
2000-09-11 13:44:36 -05:00
Bill Wendling
7fd9e85f62 [svn-r2532] Added a trivial FILENAME definition to those programs linked with
h5test.o, which requires the definition to work...
2000-09-11 11:07:59 -05:00
Albert Cheng
dd4203674a [svn-r2531] Description:
The "FILENAME" declared extern in h5test.h is not always used.
    It was used in h5_cleanup to remove temporary files created
    during tests.  Not all tests codes have used this routine.
    Indeed, quite a few of test programs do "#define FILENAME ".
    Also, h5_cleanup needs to work in tandem with h5_fixname.
    h5_fixname accepts an explicite base_name argument instead
    of using the global variable FILENAME.  That is cleaner.
Solution:
    Added char *base_name[] as a new argument to h5_cleanup, in
    the same style as h5_fixname.  Removed "extern char *FILENAME..."
    from use.  Also, undo some unnecessary declaration of "char *FILENAME"
    from some tests which don't use it at all (yet).
Platforms tested:
    modi4-64(irix64), arabica(solari2.7), eirene(linux)
    (arabica could not launch tests automatically.  I had to hack
     in LD_LIBRARY_PATH to make them run.)
2000-09-09 19:08:27 -05:00
Bill Wendling
32bdf68ff8 [svn-r2529] Added a -R<directory> flag to the LT command line. If we compile with
zlib, and zlib isn't in our LD_LIBRARY_PATH or in a standard system
library place (/usr/lib or /lib), then the tests can't run. This fixes it
if the person configures the source with the flag:

	--with-zlib=/usr/fnord/include,/usr/fnord/lib

This only works if you're pointing to the shared library version in the
above flag...
2000-09-08 18:02:10 -05:00
Bill Wendling
ed2e87dc71 [svn-r2528] Linking errors occured with these files. They link with libh5test, but
libh5test wants FILENAME to be defined. I have no clue why this was
working before...
2000-09-08 17:58:59 -05:00
Bill Wendling
c9d0be431e [svn-r2468] Changed type of variable to long since that's what it should hold after a
call to the strtol() function.
2000-08-04 17:20:47 -05:00
Bill Wendling
3775ed521d [svn-r2466] Added return statement to the main function to prevent some compiler
warnings. It's not a meaningful addition, since it happens right after an
_exit() statement.
2000-08-04 17:02:32 -05:00
Bill Wendling
a72e85d52a [svn-r2463] Fixed a comparison between unsigned and signed value. Cast both to
unsigned long. Hope this is enough :).
2000-08-04 15:48:09 -05:00
Robb Matzke
4aa0e950f9 [svn-r2411] Added support for log VFL driver. 2000-06-23 12:46:17 -05:00
Quincey Koziol
befd08fb80 [svn-r2320] Patched "print_stats" routine parameters for machines with no getrusage() call.
(Like the Crays)
2000-06-02 09:31:04 -05:00
Quincey Koziol
ecb52e75d3 [svn-r2317] Close a small memory leak in the test program (not library). 2000-06-01 18:42:25 -05:00
Patrick Lu
7e2890384e [svn-r2289] changed the macro for the file to be FILENAME. caused compilation errors on windows with the
old name
2000-05-25 10:53:22 -05:00
Bill Wendling
35fe1e2847 [svn-r2287] Changed ttsafe_* test files so that they create their own HDF5 file (they
were only creating one for all of them). Also changed so that, if they
got an error, it actually specifies that the tests failed on the screen
instead of succeeded ;-)
2000-05-19 18:00:03 -05:00
Quincey Koziol
670770900a [svn-r2273] Used updated data structure names... 2000-05-19 09:50:01 -05:00
Chee-Wai Lee
45ff8f35b8 [svn-r2268] updated comments for the test for attribute creation for threadsafe hdf-5. 2000-05-18 16:44:13 -05:00
Robb Matzke
14fc9bb100 [svn-r2266] Minor change for 64-bit libs 2000-05-18 14:47:04 -05:00
Chee-Wai Lee
e26f4e5eed [svn-r2264] Added Thread-safe feature. This is the phase 1 implementation
that all HDF5 API functions are protected by a mutex lock. Basically,
serialized all API calls.  To use it, use
configure --enable-threadsafe --with-pthread
2000-05-18 14:13:33 -05:00
Robb Matzke
bc520e88b4 [svn-r2262] * 2000-05-18
** src/H5Tconv.c
** src/H5Tpkg.h
** src/H5Tpublic.h
	The H5T_conv_struct_opt() function had a design flaw -- it
	didn't keep information about the stride to use to step
	through the temporary/background-value buffer and thus nested
	invocations would clobber each other's temp buffers.  This was
	fixed by splitting the `stride' argument into `buf_stride' and
	`bkg_stride' arguments for all the conversion functions. THIS
	IS AN API CHANGE, but users will get a compiler warning when
	they pass their conversion function pointer to H5Tregister().

** src/H5T.c
** src/H5Tprivate.h
	Added a bkg_stride argument to the H5T_convert() definition in
	order to fix a bug related to the optimized compound datatype
	conversion function.

** src/H5T.c
** src/H5A.c
** src/H5D.c
** src/H5Ofill.c
** src/H5P.c
	Added bkg_stride=0 argument to the H5T_convert() calls.

** test/dtypes.c
	Added a test for the H5T_conv_struct_opt() bug fixed above.

** src/H5FL.c
	The H5FL_term() function should return non-zero even when it
	couldn't free all the free lists do to their being used by
	some other package.  When that other package terminates it
	will return non-zero, causing H5FL_term() to be called
	again. This fixes some of the `infinite loop closing library'
	messages.

** tools/pdb2hdf
	Uses print_version() instead of doing that itself.

** src/H5Ppublic.h
	Renamed H5Pget_gc_reference() declaration to make it match the
	definition.

** src/H5FDlog.c
	Added API tracing macros.

	Removed `const' qualifier from a `char*' member of a struct
	which was allocated on the heap.

** src/H5TB.c
	Added curly braces to a couple deeply-nested `if' statements
	to make them clearer and to shut up the increadibly stupid and
	just plain incorrect gcc warning about ambiguous `else'.

** test/titerate.c
	Removed incomplete initialization in favor of memset() for one
	auto variable to stop compiler warnings.

** tools/Depencencies
	Regenerated to remove references to h5dumputil.c
2000-05-18 11:40:20 -05:00
Quincey Koziol
04152995a9 [svn-r2222] Added TBBT testing code. 2000-05-08 18:09:09 -05:00
Robb Matzke
82431da792 [svn-r2179] *** empty log message *** 2000-04-21 14:27:50 -05:00
Raymond Lu
0a77488511 [svn-r2146] Comments. 2000-04-14 10:32:11 -05:00
Quincey Koziol
ccca207708 [svn-r2142] Re-added titerate.c to makefile... 2000-04-13 12:03:59 -05:00
Raymond Lu
10a6fb73ee [svn-r2138] Add SRB as a new VFL, these are its testing programs. 2000-04-13 10:17:14 -05:00
Quincey Koziol
43017c3d9a [svn-r2132] Tested H5Screate_simple & H5Sset_extent_simple disallowing
size 0 dimensions without corresponding unlimited dimension.
2000-04-12 17:02:26 -05:00
Quincey Koziol
099f9e72c5 [svn-r2125] Changed test slightly to reflect change in return type for H5Aiterate. 2000-04-12 16:10:05 -05:00
Quincey Koziol
99f5644383 [svn-r2118] Added test for error in which groups with more than one level of B-tree nodes
and callback functions which returned non-zero were not working correctly.
2000-04-12 10:44:48 -05:00
Quincey Koziol
ae68f0c63e [svn-r2112] Added random generator of 5-D hyperslabs to tests. 2000-04-11 13:24:08 -05:00
Quincey Koziol
423d36e616 [svn-r2099] Added test to check for correct staggered hyperslab iteration. 2000-04-07 15:40:24 -05:00
Quincey Koziol
1300bf5d8c [svn-r2082] Added additional group & attribute iteration tests. 2000-04-05 15:51:44 -05:00
Quincey Koziol
02e4ee5edf [svn-r2073] Added free-list code to the library and took out the older "temporary buffer"
code, since the functionality was superceded.  See the followup document for
details on the free-list code.
2000-04-04 16:00:31 -05:00
Raymond Lu
612f41f987 [svn-r2069] change URL to a valid one. 2000-04-04 11:50:35 -05:00
Raymond Lu
395da6090f [svn-r2034] Switch testing web server to paz.ncsa.uiuc.edu for gass_read; still comment out gass_write and gass_append because they depend on web server. 2000-03-14 14:30:42 -05:00
Raymond Lu
1bc06c5e0b [svn-r2028] Switch to HTTP protocal testing for read, compress write and append testings. 2000-03-13 14:35:41 -05:00
Albert Cheng
b70c49d253 [svn-r1995] configure.in:
Makefile.in:
acconfig.h:
src/H5F.c:
src/H5FDdpss.c:
src/H5FDdpss.h:
src/H5config.h.in:
test/dpss_read.c:
test/dpss_write.c:
    Changed the name DPSS to GRIDSTORAGE since that is the real name
    of the API from ANL.  DPSS is just one of the protocols it can use.
    Changed a bug in the --with-ssl option.

Makefile.in:
    Removed the copying of Makefile.dist since it caused problems
    when doing a make distclean in a --srcdir configured directory.
2000-03-01 18:56:22 -05:00
Albert Cheng
f938b6efe3 [svn-r1946] Added a the PARA-Prefix for parallel test files for the needs that
serial and parallel test files are tested in different file systems.
Added the global variable, paraprefix, so that it can be set via
command line option.
2000-01-25 23:20:36 -05:00
Quincey Koziol
af56f616e4 [svn-r1945] Add tests for "H5S_SELECT_PREPEND" and "H5S_SELECT_APPEND" operations to point
selections.
2000-01-21 17:43:11 -05:00
Raymond Lu
ce29075d9e [svn-r1926] Macros HAVE_GASS and HAVE_DPSS are changed to H5_HAVE_GASS AND H5_HAVE_DPSS. 1999-12-21 17:54:43 -05:00
Raymond Lu
173c0b6fe5 [svn-r1925] DPSS is checked in. 1999-12-21 17:17:55 -05:00
Albert Cheng
bacc13b59a [svn-r1879] Changed the test host from eirene to which. (Got to change this
to be run time input somehow.)
1999-12-17 09:34:30 -05:00
Robb Matzke
60cab76b78 [svn-r1859] * 1999-12-09
** src/H5FDpublic.h
	Added a #define for H5_HAVE_VFL to make life easier for application
	programmers.

** config/depend1
	A minor tweak to the way GNU systems generate file dependencies for
	the Makefiles.

** src/H5T.c
	Fixed a bug with enumeration types not having the correct object
	header pointer.
1999-12-09 06:10:24 -05:00
Robb Matzke
9c40226b31 [svn-r1848] *** empty log message *** 1999-11-23 14:37:53 -05:00
Patrick Lu
81d7be5acc [svn-r1841] changed the #includes to the new ones defined in H5pubconf.h. 1999-11-19 10:45:46 -05:00
Patrick Lu
a71edc1314 [svn-r1840] update the #includes so it would use the new ones defined in the H5pubconf.h
file. didn't compile otherwise.
1999-11-19 10:41:51 -05:00
Quincey Koziol
9648d22f5f [svn-r1837] Cleaned up a few warnings from the SGI compiler. 1999-11-17 17:00:15 -05:00
Robb Matzke
4b2dbd5651 [svn-r1832] * 1999-11-16
** configure.in
** configure				[REGENERATED]
** src/H5private.h
** src/H5public.h
** src/Makefile.in
	Generates an H5pubconf.h file which is just like H5config.h except all
	the preprocessor symbols have `H5_' prepended. This was done so that
	the configuration results can be used in public header files without
	polluting the namespace.

** src/H5.c
	Added H5I_REFERENCE and H5I_VFL to the API tracing code so their names
	are printed instead of just numbers.

** src/H5FDstdio.c
** tools/h5import.c
** tools/h5repart.c
** tools/pdb2hdf.c
	Changed to use the `H5_' versions of configure results since these
	files include only the public API.

** test/big.c
	Removed a compiler warning.

** test/h5test.c
	Removed unused code.
1999-11-16 14:08:14 -05:00
Robb Matzke
ae62eb223c [svn-r1806] * 1999-11-02
** bin/rpmsync
** config/depend1.in
	Tweaks for versions of `make' that can't search directories.

** examples/Dependencies
** src/Dependencies
** test/Dependencies
** testpar/Dependencies
** tools/Dependencies
	Regenerated all these with more complete path names.
1999-11-02 12:29:33 -05:00
Robb Matzke
eb8747499d [svn-r1802] Changes since 19991019
----------------------

./MANIFEST
./configure.in
./configure			[REGENERATED]
	Added more checking for `make' features.

./Makefile.in
./doc/Makefile.in
./doc/html/Makefile.in
./doc/html/Tutor/Makefile.in
./examples/Makefile.in
./pablo/Makefile.in
./src/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
./config/commence.in
./config/conclude.in
./config/depend.in		[REMOVED]
./config/depend1.in		[NEW]
./config/depend2.in		[NEW]
./config/depend3.in		[NEW]
./config/depend4.in		[NEW]
./config/dependN.in		[NEW]
	The directory search stuff was moved into commence.in, thereby
	shortening the Makefile.in prologues.

./doc/html/Dependencies		[NEW]
./doc/html/Tutor/Dependencies	[NEW]
./examples/Dependencies		[NEW]
./src/Dependencies		[NEW]
./test/Dependencies		[NEW]
./testpar/Dependencies		[NEW]
./tools/Dependencies		[NEW]
	The `.distdep' files were all renamed to `Dependencies' to make them
	more obvious. They are required (but may be empty) in every directory
	that has a Makefile.in that ends with @CONCLUDE@ (you'll get an
	obvious error from make if you forgot to create one).

./bin/trace
./src/H5.c
	Added H5E_major_t and H5E_minor_t although tracing only prints the
	integer value.

./src/H5E.c
./src/H5Epublic.h
	Added tracing information.

./src/H5FDcore.c
./src/H5FDfamily.c
./src/H5FDgass.c
./src/H5FDmpio.c
./src/H5FDsec2.c
./src/H5FDstdio.c
	Fixed places where FUNC_LEAVE() evaluated it's argument more than
	once.

	Added tracing information.

	Wrapped long lines.

./config/gnu-flags
	Fixed a syntax error when we don't have a gnu compiler.
1999-11-01 10:21:16 -05:00
Albert Cheng
e8c278dc98 [svn-r1798] Changed the URL to use a gass-signon. 1999-10-28 13:27:12 -05:00
Albert Cheng
2de64cfcb1 [svn-r1794] Snapshot version 1.3 release 3 1999-10-26 15:02:05 -05:00
Albert Cheng
72ca1d50eb [svn-r1789] Changed the ftp test site to a different machine. The
previous machine is retired.
1999-10-22 22:00:08 -05:00
Quincey Koziol
361897d767 [svn-r1786] Added stdio VFL driver to the list of VFL drivers the user can test. 1999-10-20 12:51:27 -05:00
Robb Matzke
34e44e399e [svn-r1753] Changes since 19991007
----------------------

./configure.in
./src/H5config.h.in	[REGENERATED]
	The /usr/ncsa/{include,lib} directories are only added if they
	actually exist. This fixes a warning on some systems.

	Checks for the <pdb.h> header file and also for either the PDB or Silo
	library, and if found prepares to compile the pdb2hdf program.

./config/distdep
	Relative path names for include files are changed to base names since
	the makefile contains the logic for searching and since it's likely
	that building the .distdep files happed from a location other than
	where they would be used in the file system.

./config/conclude.in
	Fixed shell errors when `for' loops iterate over nothing for the
	`uninstall' target.

./src/H5D.c
./src/H5Oefl.c
	File names for the external files are added to the heap when the
	dataset is created instead of when the object header is written. This
	fixes a rare infinite recursion bug.

./src/H5FD.c
./src/H5FDpublic.h
	Optimization to the free list causes H5FD_alloc() usage to go from >10
	seconds to <0.4 second for one example (converting a 30MB equation of
	state file from PDB to HDF5 format). The optimization is to simply
	keep track of the largest item in the free list and not search the
	free list when the largest item is not big enough to satisfy the
	request.

./src/H5FDcore.c
./src/H5FDcore.h
./test/h5test.c
	If the `backing_store' property is true then a flush causes the entire
	contents of memory to be written to the specified file. This is  in
	preparation for the ASCI/red optimizations and is currently tested by
	the pdb2hdf `--cached' switch.

./src/H5Odtypes.c
	Wrapped three long lines.

./tools/Makefile.in
./tools/pdb2hdf.c		[NEW]
	A PDB-to-HDF5 translator. It only translates meta data -- the
	resulting HDF5 points into the PDB file for the raw data.
1999-10-15 09:53:57 -05:00
Patrick Lu
58a685ac81 [svn-r1743] fixed some compilation errors on unix 1999-10-13 10:41:02 -05:00
Patrick Lu
478038d68d [svn-r1741] write 0f0f0f0f into the *a.raw and *b.raw files so if the os doesn't put 0's in
when it skips over part of the file the garbage is not left in there.
fixes problems with win 98
1999-10-13 10:09:30 -05:00
Quincey Koziol
6f649e66b2 [svn-r1730] Close & re-open the file to make certain that the VL datatype information is
being written correctly.
1999-10-06 13:12:19 -05:00
Robb Matzke
bdf0dbf7ed [svn-r1697] Changes since 19990915
----------------------

./src/H5public.h
	We undefine a bunch of things that could get redefined in the config
	file because some customers have applications that include headers
	from multiple packages, all of which might be using autoconf.

	Include <stdint.h> for the C9x types.

./test/h5test.h
	More flushing of stdout for when testing is redirected down a pipe.

./tools/h5ls.c
	Added a `-S' or `--simple' switch which causes the output to be
	simplified somewhat for easier parsing by other scripts. For instance,
	characters are escaped using a very simple mechanism instead of C's
	more complicated backslash notation, data doesn't have `{}' or `[]'
	characters interspersed for compound and array types, and data is
	printed with exactly one element per line.  This switch is now used by
	an HDF5-to-HTML CGI script being developed for the DMF people.

./tools/h5tools.c
./tools/h5tools.h
	The repeat threshold which controls how strings are printed when a
	character repeats a bunch of times is now settable at runtime instead
	of compile time. The default is to show all characters, like

	   "abceeeeeeeeeeeeeeeeeeeeeeeeeeeeeefgh"

	But if you set it to something like 5 then any sequence of 5 or more
	characters is replaced by something shorter, like:

	   "abc" 'e'x30 "fgh"	  or

	Added an `str_locale' property which describes how to escape special
	characters in strings. The default is C-like escapes but an
	alternative is ESCAPE_HTML which replaces all non-alphanumeric
	characters with a 3-character HTML escape of the form `%XX'

	Fixed a bug where empty strings didn't even have the quote characters
	printed. Now empty strings show up as `""' instead of absolutely
	nothing.

	Added a `per_line' property which controls the maximum number of
	elements which will appear per line of output. The default is infinity
	but in practice the right margin causes line breaks. By setting the
	`per_line' value to one and the right margin to a very large value one
	can achieve output with exactly one element per line.
1999-09-30 11:14:14 -05:00
Quincey Koziol
523f5cebb2 [svn-r1690] Added VL string test code. 1999-09-28 19:30:47 -05:00
Quincey Koziol
eea89e1e6c [svn-r1651] Fold in J90 changes 1999-09-24 17:35:30 -05:00
Patrick Lu
d6d756ef96 [svn-r1634] fixed the compilation error where the H5P_DATASET_CREATE and H5P_DATA_XFER
were using the old names.
1999-09-08 15:07:40 -05:00
Albert Cheng
06c8da20b1 [svn-r1621] Added GASS driver. Coded by Saurabh Bagchi, bagchi@uiuc.edu.
Minor changes done to test/gass_xxx.c so that they print the
test skip message when GASS driver is not available.

This change is the implementation of GASS within HDF5-1.3 (HDF5 with Virtual
File Layer). The GASS driver gives the facility of accessing HDF files on
remote ftp servers. To use the GASS driver, the option --with-gass=<GASS path>
shoud be specified with configure. An example of the command line used to
test the distribution was:
./configure --disable-shared --without-hdf4
--with-gass=/afs/ncsa/projects/hdf/v5/bagchi/globus/GLB/development/sparc-sun-solaris2.6_nothreads_standard_debug/include,/afs/ncsa/projects/hdf/v5/bagchi/globus/GLB/development/sparc-sun-solaris2.6_nothreads_standard_debug/lib
--disable-parallel

The user should change the path to point to his local GASS installation.

Documentation about the features of GASS and the HDF-GASS design is available
separately and till it is put up on the official web site, anyone interested
may contact me.

Test programs to read, write or append remote files have been provided in the
test directory as "gass_read.c", "gass_write.c", "gass_append.c". The test
programs have the ftp site to access #define-d at the top of the file which
the user can change accordingly.

./src/H5Epublic.
	Added new error type for file close.
./src/H5F.c
	Added hooks for the GASS driver.
./src/H5public.h
	Added header files for GASS & Globus.
./src/Makefile.in
	Added dependancy on GASS driver in LIB_SRC.
./src/hdf5.h
	Included header file for GASS driver.
./src/H5FDgass.c	[NEW]
	Routines for the GASS driver.
./src/H5FDgass.h	[NEW]
	Header file for the GASS driver.

./test/Makefile.in
	Added dependancy on the gass test routines.
./test/gass_read.c
	File to test remote file reading using GASS.
./test/gass_write.c
	File to test remote file writing using GASS.
./test/gass_append.c
	File to test remote file appending using GASS.
1999-08-30 23:55:00 -05:00
Robb Matzke
99d84a8f4c [svn-r1619] ./src/H5O.c [1.2, 1.3]
Fixed a read-uninitialized-memory error that resulted in the
	file containing small amounts (<8 bytes each) of uninitialized
	data. These padding areas (which are never read by hdf5) are
	initialized to zero now.

./MANIFEST
./src/H5Z.c
./src/H5Zdeflate.c			[NEW]
./src/H5Zprivate.h
./src/H5Zpublic.h
./src/Makefile.in
	The zlib filter was moved to a separate file but is still
	automatically defined.
1999-08-30 14:59:37 -05:00
Quincey Koziol
399bab4bf9 [svn-r1613] Added check for reading an attribute immediately after writing it. 1999-08-27 17:07:00 -05:00
Robb Matzke
cd917cd14b [svn-r1593] *** empty log message *** 1999-08-25 09:04:33 -05:00
Robb Matzke
296d9cf766 [svn-r1585] Changes since 19990820
----------------------

./src/H5D.c
	Added additional elements to a variable initializer in
	H5Dvlen_get_buf_size() to shut up a warning message. Also
	added the API tracing call.

./src/H5F.c
	Added file opening optimizations. If the driver doesn't
	support the ability to determine when two file handles refer
	to the same file (like MPIO and GASS) then H5F_open() makes
	fewer calls to the driver's open callback.  Also, if the
	tentative file access flags are the same as the original flags
	then H5F_open() makes fewer calls to the file device.

./src/H5FD.c
./src/H5FDprivate.h
./src/H5FDpublic.h
	Added H5FD_get_class() so the library can get information
	about what file driver callbacks are defined. This will be
	useful when more optimization functions are added to the VFL,
	such as for MPIO derived datatype I/O.

./src/H5FDcore.c
./src/H5FDfamily.c
./src/H5FDmpio.c
./src/H5FDmulti.c
./src/H5FDsec2.c
	The driver symbols (like H5FD_CORE, etc) are actually function
	calls. The functions were fixed to return correct values even
	after calling H5close().

./src/H5FDmulti.c
./src/H5FDmulti.h
	Added support for opening a file when parts are missing (only
	if the caller explicitly allows that in the file access
	property list).

	Moved some common code sequences into macros or functions.

	Added better support for reopening files.  All the application
	has to know is that the file is a multi file and the base name
	from which all the member names are created.

	More debugging output when the file is opened with the
	H5F_ACC_DEBUG flag.

	Fixed various bugs.

./src/H5Fistore.c
	Chunked raw data was accidently allocated as meta data instead
	of raw data.

./src/H5I.c
	The H5Iget_type() function fails when invoked with an old
	object ID (an ID which has been closed down).

./test/h5test.c
	Added an extra argument when setting the multi file access
	property lists so the test fails if it can't open one of the
	sub-files.

./tools/h5ls.c
	Improved the algorithm for deciding what file driver to
	use. It basically tries all of the predefined drivers and is
	now able to open family, split, and multi files without
	looking for special characters in the file name.

	Added `-e' and `--errors' switches which cause errors from
	libhdf5 to be reported on stderr in addition to the simple
	error message displayed by h5ls.
1999-08-24 07:52:10 -05:00
Quincey Koziol
ae45f73e6a [svn-r1577] Added test for H5Dvlen_get_buf_size function. 1999-08-19 13:50:30 -05:00
Robb Matzke
cc89b8a605 [svn-r1572] Changes since 19990810
----------------------

./MANIFEST
./src/H5FDmulti.c		[NEW]
./src/H5FDmulti.h		[NEW]
./src/Makefile.in
./src/hdf5.h
	The split driver was reimplemented as a more general "multi"
	driver which is capable of splitting data into multiple files
	like the family driver except the partioning is done by memory
	usage type instead of address. The H5Pset_fapl_split()
	function just calls H5Pset_fapl_multi() with arguments which
	prepare to split the address space into two files: meta and
	raw data.

	This is the first version. I plan to allow the open() call to
	relax a bit which would allow one to open an hdf5 file when
	only the meta-data file is present. This would allow a very
	large file to be split and stored on tape and the relatively
	small meta file to be mirrored on disk to allow limited
	browsing of the file (any request for raw data would fail).

./src/H5private.h
./src/H5F.c
./src/H5FD.c
./src/H5FDprivate.h
./src/H5FDpublic.h
./src/H5FDcore.c
./src/H5FDfamily.c
./src/H5FDmpio.c
./src/H5FDsec2.c
	Added the ability for a file driver to store information in
	the superblock which would be needed if the file were opened
	again later for reading.  The format is driver-defined which
	allows users to extend it however they like.

./doc/html/H5.format.html
	Added information about the new driver information block of
	the superblock. This is where file drivers store information
	they need in order to reopen the file later.


./src/H5F.c
./src/H5Fprivate.h
./src/H5FD.c
./src/H5FDprivate.h
./src/H5FDpublic.h
./src/H5FDcore.c
./src/H5FDfamily.c
./src/H5FDmpio.c
./src/H5FDsec2.c
./src/H5Fistore.c
./src/H5R.c
	The file access properties and the file access property list
	were decoupled, which allows the property list to more cleanly
	contain properties for various levels of the file and which
	allows the property list to be modified more cleanly when
	opening files.

./src/H5.c
./src/H5FDpublic.h
	Removed H5FD_MEM_META and H5FD_MEM_GROUP since they're never
	used.

./src/H5D.c
	Changed the way we detect the MPIO driver in all these special
	cases.

./src/H5F.c
./src/H5Rpublic.h
./test/tfile.c
	The default file sizeof(offset) was changed to be a function
	of haddr_t instead of hsize_t.

	THE H5RPUBLIC.H DEFINITIONS WILL HAVE PROBLEMS IF THE USER
	CREATES A FILE WITH NON-DEFAULT OFFSET AND SIZE SIZES!

./src/H5F.c
	Fixed an uninitialized memory access bug in file closing
	related to the VFL.

./src/H5T.c
./src/H5Tpublic.h
	Added an H5T_NATIVE_HADDR predefined datatype which
	corresponds to the `haddr_t' type.

./test/Makefile.in
	Reformatted long lines.

./test/big.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/extend.c
./test/external.c
	Removed the H5F_ACC_DEBUG flag from file creation/open calls.

./test/big.c
	Plugged a memory leak.

./test/h5test.c
	Added support for the `multi' driver.

	Removed #warning about not having the stdio driver. Plans are
	to not implement it since the sec2 driver serves the same
	purpose and testing didn't show any difference in execution
	times between the two.
1999-08-17 14:12:59 -05:00
Robb Matzke
cbf68fc824 [svn-r1568] Changes since 19990730
----------------------

This extensive change is the virtual file layer implementation. I've
ported and tested the sec2, family, and core drivers and only ported
the mpio driver (Albert will test it).  So if you need MPIO I would
recommend sticking with the previous version for a while.

You will get a few compile warnings about split and stdio drivers not
being implemented and possibly tracing information not inserted in
some of the drivers. You can safely ignore them but I plan to fix
them.

I'm still working on the split driver because I just realized that it
needs a part of the VFL that isn't written yet.

Documentation is being updated also because there were some minor
changes (mostly just name changes). It should be available on my web
site later this week.

./MANIFEST
./src/Makefile.in
./src/hdf5.h
./src/H5Flow.c			[REMOVED]
./src/H5Fstdio.c		[REMOVED]
./src/H5Fsec2.c			[REMOVED]
./src/H5Fsplit.c		[REMOVED]
./src/H5Fmpio.c			[REMOVED]
./src/H5Ffamily.c		[REMOVED]
./src/H5Fcore.c			[REMOVED]
./src/H5MFpublic.h		[REMOVED]
./src/H5FD.c			[NEW]
./src/H5FDcore.c		[NEW]
./src/H5FDcore.h		[NEW]
./src/H5FDfamily.c		[NEW]
./src/H5FDfamily.h		[NEW]
./src/H5FDmpio.c		[NEW]
./src/H5FDmpio.h		[NEW]
./src/H5FDprivate.h		[NEW]
./src/H5FDpublic.h		[NEW]
./src/H5FDsec2.c		[NEW]
./src/H5FDsec2.h		[NEW]
	Removed/added files for virtual file layer.

./bin/trace
./src/H5.c
	Removed unused public datatypes and added new VFL public
	datatypes.

	Changed an error message.

./config/BlankForm
./config/dec-flags
./config/gnu-flags
./config/hpux10.20
./config/hpux9.03
./config/irix5.x
./config/irix6.x
./config/solaris2.x
./config/unicosmk
	Removed the H5F_OPT_SEEK and H5F_LOW_DFLT constants from the
	configuration since they're no longer applicable. The default
	file driver is always the sec2 driver and it always optimizes
	calls to lseek() or lseek64().

./config/depend.in
	C preprocessor errors generated during automatic dependency
	building are sent to /dev/null to prevent them from appearing
	twice in the make output.

./src/H5AC.c
./src/H5B.c
./src/H5D.c
./src/H5F.c
./src/H5G.c
./src/H5Gent.c
./src/H5Gnode.c
./src/H5HG.c
./src/H5HL.c
./src/H5O.c
./src/H5Oattr.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Oshared.c
./src/H5T.c
./src/H5detect.c
./test/ohdr.c
	Changed H5F_ADDR_UNDEF to HADDR_UNDEF to be more consistent
	with the `haddr_t' datatype which is now a public type.

./src/H5D.c
./src/H5P.c
./src/H5Ppublic.h
./src/H5Tconv.c
./test/cmpd_dset.c
./test/dsets.c
./test/overhead.c
./test/tselect.c
./test/tvltypes.c
	The H5P_DATASET_XFER constant was changed to H5P_DATA_XFER
	because the properties apply to all types of I/O operations,
	not just datasets.

./src/H5B.c
./src/H5Bprivate.h
./src/H5D.c
./src/H5Dpublic.h
./src/H5F.c
./src/H5Farray.c
./src/H5Fistore.c
./src/H5Fprivate.h
./src/H5Fpublic.h
./src/H5Gnode.c
./src/H5Gpkg.h
./src/H5HG.c
./src/H5HL.c
./src/H5O.c
./src/H5R.c
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Smpio.c
./src/H5Spoint.c
./src/H5Sprivate.h
./test/big.c
./test/h5test.c
./test/istore.c
./testpar/t_dset.c
./testpar/t_file.c
./tools/h5debug.c
./tools/h5ls.c
	Modified to work with the virtual file layer by calling H5FD_*
	functions instead of H5F_low_* functions and by passing file
	access and data transfer properties by object ID instead of
	pointer.

	Changed H5D_transfer_t to H5FD_mpio_xfer_t since the
	COLLECTIVE vs. INDEPENDENT transfer mode is specific to the
	MPIO file driver.

	Moved MPIO-specific stuff into the MPIO driver.

./src/H5B.c
./src/H5D.c
./src/H5Fprivate.h
	The H5F_mpio_* private functions were renamed and placed in
	the H5FDmpio driver except those which appeared in H5Smpio.c.

./src/H5E.c
./src/H5Epublic.h
	Added major error number H5E_VFL for virtual file layer
	related errors.

./src/H5F.c
./src/H5Fprivate.h
	Changed the logic that controls whether the boot block is
	written. Instead of assuming that the first call to write the
	boot block is only to allocate space, I've added a function
	argument which makes this explicit.

	Changed the way files are compared so that a driver-defined
	comparison function can be called.  Files which belong to
	different drivers are always considered different.

	Removed H5F_driver_t since file drivers are now identified by
	object ID instead of a special non-user-extendible datatype.

	Removed all the hard-coded low-level file properties which
	have been replaced by the various file drivers.

./src/H5I.c
./src/H5Iprivate.h
	Added the H5I_inc_ref() which was removed a few months ago
	since we finally have a use for it.

./src/H5Ipublic.h
	Added the H5I_VFL object ID type to identify file drivers in
	the virtual file layer.

./src/H5MF.c
./src/H5MFprivate.h
	Moved all the allocation/deallocation code into the virtual
	file layer which allows file drivers to override much of it.

./src/H5P.c
./src/H5Ppublic.h
	Moved file driver-specific code into the various file driver
	files.

	The H5Pcopy() and H5Pclose() functions make calls into the
	virtual file driver to manage the memory for driver-specific
	file access and data transfer properties.

./src/H5private.h
./src/H5public.h
	The `haddr_t' type is now public.

./test/tfile.c
	Added a few more comments.
1999-08-10 15:21:32 -05:00
Robb Matzke
e4834c43ce [svn-r1548] Changes since 19990727
----------------------

./src/H5.c		[1.3]
./src/H5AC.c		[1.3]
./src/H5ACprivate.h	[1.3]
./src/H5B.c		[1.3]
./src/H5Bprivate.h	[1.3]
./src/H5D.c		[1.3]
./src/H5F.c		[1.3]
./src/H5Farray.c	[1.3]
./src/H5Fcore.c		[1.3]
./src/H5Ffamily.c	[1.3]
./src/H5Fistore.c	[1.3]
./src/H5Flow.c		[1.3]
./src/H5Fmpio.c		[1.3]
./src/H5Fprivate.h	[1.3]
./src/H5Fsec2.c		[1.3]
./src/H5Fsplit.c	[1.3]
./src/H5Fstdio.c	[1.3]
./src/H5G.c		[1.3]
./src/H5Gent.c		[1.3]
./src/H5Gnode.c		[1.3]
./src/H5Gprivate.h	[1.3]
./src/H5Gstab.c		[1.3]
./src/H5HG.c		[1.3]
./src/H5HGprivate.h	[1.3]
./src/H5HL.c		[1.3]
./src/H5HLprivate.h	[1.3]
./src/H5MF.c		[1.3]
./src/H5MFprivate.h	[1.3]
./src/H5O.c		[1.3]
./src/H5Oattr.c		[1.3]
./src/H5Ocont.c		[1.3]
./src/H5Odtype.c	[1.3]
./src/H5Oefl.c		[1.3]
./src/H5Olayout.c	[1.3]
./src/H5Oprivate.h	[1.3]
./src/H5Oshared.c	[1.3]
./src/H5Ostab.c		[1.3]
./src/H5P.c		[1.3]
./src/H5R.c		[1.3]
./src/H5Smpio.c		[1.3]
./src/H5T.c		[1.3]
./src/H5Tvlen.c		[1.3]
./src/H5private.h	[1.3]
./test/dtypes.c		[1.3]
./test/gheap.c		[1.3]
./test/istore.c		[1.3]
./test/lheap.c		[1.3]
./test/ohdr.c		[1.3]
./tools/h5debug.c	[1.3]
	File addresses (the `haddr_t' type) are passed by value
	instead of by reference. The type is no longer a struct. This
	is one of the preliminary changes needed for the Virtual File
	Layer stuff.

./src/H5Fprivate.h	[1.3]
./src/H5Flow.c		[1.3]
	Some address functions were rewritten as macros.
1999-07-28 13:25:43 -05:00
Quincey Koziol
ff6bfe4a2f [svn-r1536] Fixed alignment problems on DEC Alpha platform. 1999-07-23 16:20:07 -05:00
Robb Matzke
a5d799d351 [svn-r1533] ./test/dtypes.c [1.2, 1.3]
Fixed the decimal value which is printed for `dst' when an
	error is detected. The hexadecimal value was correct.
1999-07-23 14:50:00 -05:00
Robb Matzke
6470e417e8 [svn-r1515] Changes since 19990715
----------------------

./Makefile.in		[1.3]
./examples/Makefile.in	[1.3]
./pablo/Makefile.in	[1.3]
./src/Makefile.in	[1.3]
./test/Makefile.in	[1.3]
./testpar/Makefile.in	[1.3]
./tools/Makefile.in	[1.3]
./config/commence.in	[1.3]
./config/conclude.in	[1.3]
./config/depend.in	[1.3]
	Added a `.PATH' target for Irix pmake which is identical to
	the VPATH used by most other `make' programs. Irix 6.5 (or
	6.4?) and later `make' ignores VPATH.

	Started all beginning-of-line comments with `##' instead of
	just `#' because Irix `pmake' barfs on things like the
	following because it sees the `# if' as a directive:

		# make will barf on the following line
		# if running Irix pmake


./config/commence.in	[1.3]
	Added empty definitions for optional `make' macros because
	Irix pmake complains if it sees a macro which has never been
	defined. The main body of the Makefiles can redefine these
	macros to whatever they need.
1999-07-19 14:56:57 -05:00
Quincey Koziol
def04e3564 [svn-r1507] Uncommented VL datatypes in compound datatypes test, since it's working now.
Some other memory leaks in the tests fixed.
1999-07-17 19:00:22 -05:00
Quincey Koziol
74665d2a04 [svn-r1495] Corrections and small bugfixes to VL testing. 1999-07-16 13:12:34 -05:00
Patrick Lu
8524d06a4b [svn-r1481] reordered the tests in the test_vltypes function.
caused some strange problems on NT.  crashed if the test for the compound type
was second when called from the command line but not if i clicked on the icon.
strange but this seemed to make it better
1999-07-14 13:26:29 -05:00
Quincey Koziol
3bdafe922a [svn-r1419] Modified dtypes.c to add new dataset transfer property list ID in
H5Tconvert calls.
    Added tests to tvltypes.c which test arrays of VL compound datatypes,
array of compound datatypes with VL fields and arrays of nested VL sequences
of VL sequences of atomic types, all of which are working correctly.
1999-07-03 05:34:27 -05:00
Quincey Koziol
0aad682d19 [svn-r1387] Added tests for the "all" and "none" selection iterators. 1999-06-25 15:19:07 -05:00
Quincey Koziol
9039c9ecd9 [svn-r1386] Added tests to iterate through hyperslab and point selections. 1999-06-25 14:37:40 -05:00
Robb Matzke
c78a6aedaf [svn-r1371]
Changes since 19990618
----------------------

./configure.in
./configure		[REGENERATED]
	Now that compound struct conversions don't make so many calls
	to convert their members I turned the H5T debugging back on by
	default (it will still be disabled in a production version).

./src/H5AC.c
./src/H5B.c
	Made it possible to turn off messages about debugging these
	two packages using the same method as for all other
	packages. Just supply an invalid file descriptor number or use
	the shell to redirect said descriptor to /dev/null like this:

	    $ HDF5_DEBUG=99,ac,b 99>/dev/null a.out

./src/H5T.c
	Changed the name of the old compound conversion function from
	`struct' to `struct(no-opt)' to be more consistent with the
	new version named `struct(opt)'.

	Fixed a bug in H5T_cmp() that caused any two VL types to
	compare as being equal.

	Removed duplicate code for bitfield comparisons in H5T_cmp().

./src/H5Tconv.c
	Relaxed some constraints in the new compound conversion
	function so it applies to more cases.  Also eliminated a
	memcpy in a tight loop.

./test/cmpd_dset.c
	Added a `--noopt' command line switch which unregisters the
	optimized compound conversion so we can test the non-optimized
	version.
1999-06-23 11:16:51 -05:00
Robb Matzke
8baa675250 [svn-r1362]
Changes since 19990616
----------------------

./src/H5T.c
./src/H5Tconv.c
	All conversion functions take an extra argument called
	`stride' which is the number of bytes to advance the source
	and destination pointers after each element is converted. If
	the value is zero then the old behavior is preserved (source
	and destination values are packed). This feature was necessary
	to implement the compound datatype conversion optimizations
	and it causes a minor change to the API (application-defined
	type conversion functions take an extra size_t stride
	argument).

./src/H5Tconv.c
	An additional compound data type conversion function was added
	which is applied unless the destination type is larger than
	the source type. I'm measuring significant performance
	increases for certain operations:

	    Test Name    Struct-Conv    Noop-Conv
			 New(Old) MB/s  New(Old) MB/s
	    ----------   -------------  -------------
	    Reordering   2.062(0.3936)  54087(0.9047)
	    Subsetting   2.901(0.6581)  40192(1.1100)
	    Shrinking    1.976(0.3925)  33628(1.1500)
	    ----------   -------------  -------------

./test/dtypes.c
	Added various compound datatype conversion tests.

	Fixed return values from functions.

./src/H5T.c
	Conversion timers are updated only if H5T debugging is turned
	on a runtime (in addition to compile time). This allows the
	data type layer to be compiled with debugging support without
	having to pay a big runtime penalty if the debugging isn't
	actually used.

./src/H5A.c
./src/H5D.c
./src/H5Ofill.c
./src/H5P.c
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpkg.h
./src/H5Tprivate.h
./src/H5Tpublic.h
	Added the stride argument to the H5T_convert() calls. The
	stride is always zero, which means that the source and
	destination data values are packed.

./configure.in
./configure			[REGENERATED]
	If API tracing is turned off then libhdf5.settings will say
	`no' instead of nothing.

./test/flush1.c
./test/flush2.c
	Added better error messages in a couple places.
1999-06-18 10:12:18 -05:00
Robb Matzke
1c0597aa74 [svn-r1347]
Changes since 19990614
----------------------

./src/H5D.c
	Changed the way the plist_id argument of H5Dvlen_reclaim() is
	checked so that it's more specific and works when debugging is
	turned off.

./src/H5TB.c
	Removed an unused local variable.

./test/fillval.c
./test/h5test.c
./test/h5test.h
	Changed `basename' variables to `base_name' to prevent a
	warning about a global with the same name.

./tools/h5ls.c
	Changed `indent' variables to `ind' to prevent a warning about
	a global with the same name.

./tools/h5toh4.c
	Commented out declarations for things that normally appear in
	system header files since our definitions might be
	incompatible with the system and prevent h5toh4 from
	compiling.  If all looks good on other systems then we can
	permanently remove these declarations...
1999-06-15 09:58:25 -05:00
Robb Matzke
1c5f6ffb70 [svn-r1341]
Changes since 19990611
----------------------

./doc/html/H5.format.html
	Added documentation for opaque data types (bitfield types were
	already documented but they were out of order).

./src/H5E.c
	Fixed a bug with glibc2 on linux systems where `stdout' is an
	extern and can't be used to initialize static data.

./src/H5T.c
./src/H5Tpkg.h
./src/H5Tpublic.h
./src/H5detect.c
	Removed the `_T' from the new C9x types I just added so the
	names are consistent with existing types. Besides, the fact
	that something is a datatype is obvious because it starts with
	H5T_NATIVE_.

./tools/h5ls.c
	Added the new C9x data types. H5ls prints one of these types
	only if it doesn't match one of the builtin C types.

	Prints the OID for shared data types.

	Fixed a formatting bug with symbolic links which was
	introduced a few changes ago.

	The commandline has been changed so that objects from multiple
	files can be listed with a single command. Instead of
	specifying a file name and an optional list of objects, each
	thing to print is a file name and object concatenated. H5ls
	figures out how to devide the name into a file name and object
	name even when the file name part doesn't correspond to an
	actual Unix file.

	   Old syntax: h5ls [OPTIONS] FILE [OBJECTS]
	   New syntax: h5ls [OPTIONS] FILE[/OBJECT] [FILE[/OBJECT]]...

	   Example ({X,Y} is expanded by the shell)

	   Old command: h5ls -d ../test/x.data dir1 dir2
	   New command: h5ls -d ../test/x.data/{dir1,dir2}

	The filename is printed as part of the object name when full
	names are requested (--full or --recursive). If people really
	don't like this they can undefine a constant at the top of
	h5ls.

	Errors from the hdf5 library are turned off.

	Commandline switches of the form `--width 80' are accepted in
	addition to `--width=80'. This is more symmetric with
	single-letter switches that take two forms: `-w 80' and
	`-w80'.

./src/H5D.c
	Added tracing instrumentation for H5Dvlen_reclaim().

./src/H5private.h
	Added casts to int for the isalpha() et al macros to shut up
	solaris warnings about char subscripts.
1999-06-14 10:07:58 -05:00
Quincey Koziol
b487ccb9ee [svn-r1334] VL datatype testing file. Currently, only atomic datatype sequences are tested,
but I expect the others to work correctly also.  More tests on VL compound
and VL VL (atomic) types forthcoming.
1999-06-11 17:06:26 -05:00
Quincey Koziol
50133e2ff4 [svn-r1333] Added the test_vltypes() to the other tests. 1999-06-11 17:05:04 -05:00
Robb Matzke
58eb9c4aa0 [svn-r1311] Changes since 19990607
----------------------

./tools/h5ls.c
./tools/h5tools.c
	Added support for printing bitfields and opaque data.

./test/dsets.c
	Added bitfield and opaque datasets to the output file so h5ls
	has something interesting to print.

./test/trefer.c
	Resync'd

./src/H5Tconv.c
	Fixed bitfield conversion which resulted in possible garbage
	in high-order bits of destination when the destination type is
	larger than the source type. Thanks for spotting it, Quincey.
1999-06-07 15:20:32 -05:00
Robb Matzke
6881c423a1 [svn-r1309] Changes since 19990607
----------------------

./tools/h5tools.c
	Finished code which prints references (object and dataset
	region). Patrick, if you tell me how h5dump should (or might
	want to) print references I can make some changes to support
	various formats...

	You can try it out with:

	    cd test
	    env HDF5_NOCLEANUP=yes ./testhdf5
	    ../tools/h5ls -dvr trefer1.h5
	    ../tools/h5ls -dvr trefer2.h5

	(run h5ls with no arguments if you forgot what the switches do)


./test/trefer.c
	Call calloc instead of malloc in one place to prevent
	uninitialized data from being written into the file.
1999-06-07 13:19:30 -05:00
Robb Matzke
b98fcbf592 [svn-r1306] Changes since 19990602
----------------------

./doc/html/Datatypes.html
./test/dtypes.c
	Added documentation and tests for opaque types.

./tools/h5ls.c
	Added a `-x' or `--hexdump' argument which is not fully
	implemented (because I want to synchronize h5tools.c first)
	but which will eventually print raw data in hexadecimal format
	without any translation from disk. This would be useful for
	debugging references and VL types.

./tools/h5tools.c
	Added support for references (not quite finished yet, but
	compiles -- I wanted to sync up this file before Patrick and I
	got too far apart...)


./src/H5R.c
	Checked for error return value from H5R_get_object_type()

./src/H5A.c
./src/H5D.c
	Changed error return values from NULL to FAIL

./test/Makefile.in
./test/trefer.c
	Creates trefer1.h5 and trefer2.h5 so that the second test
	doesn't clobber the first file since the files might be useful
	for debugging.
1999-06-07 10:05:02 -05:00
Robb Matzke
e352d29757 [svn-r1292] Changes since 19990430
----------------------

Remove changes from CVS

./bin/release
	Added a `--nocheck' switch which causes the script to not
	check the contents of the MANIFEST file against CVS. This is
	sometimes useful when you need to make a quick snapshot but
	the MANIFEST file is not quite up to date.

./src/H5D.c
	Removed warnings for unused variables

./src/H5Fprivate.h
	Removed the WIN32 definition for `uint' and changed the data
	type for `eof_written' from `uint' to `uintn'. Shouldn't this
	really be `hbool_t'?

./src/H5Odtype.c
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpkg.h
./src/H5Tpublic.h
./test/dtypes.c
./doc/html/H5.format.html
	Added support for bitfields and opaque data types.
1999-06-02 08:59:35 -05:00