Commit Graph

539 Commits

Author SHA1 Message Date
Quincey Koziol
5f2b8eee13 [svn-r5560] Purpose:
Bug Fix for bug #789

Description:
    Creating a 1-D dataset region reference caused the library to hang (go into
    an infinite loop).

Solution:
    Corrected algorithm for serializing hyperslab regions.

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-06-10 10:19:19 -05:00
Elena Pourmal
6eb49711cb [svn-r5525]
Purpose:
    Bug fix (#699), fix provided by a user, approved by Quincey
Description:
    When a scalar dataspace was written to the file and then
    subsequently queried with the H5Sget_simple_extent_type function,
    type was reported H5S_SIMPLE instead of H5S_SCALAR.
Solution:
    Applied a fix (see bug report 699) and modified out test program
    to exercise the case.
Platforms tested:
    Solaris 2.7 and Linux 2.2.18
2002-06-04 11:23:22 -05:00
Quincey Koziol
44a72a6777 [svn-r5502] Purpose:
Test Bug Fix

Description:
    Under certain [obscure] circumstances, an object header would get paged out
    of the metadata cache, and when it was accessed again and brought back into
    the cache, and immediately had additional metadata added to it (an
    attribute, usually, or perhaps adding an object to a group), and needed to
    be extended with a continuation message, but there was no room in any
    existing object header chunks for the continuation message and an existing
    object header message needed to be moved to the new object header chunk (I
    told you it was obscure :-), the object header message moved to the new
    chunk (not the new metadata being added) would get corrupted. *whew* :-)

Solution:
    Actually copy the "raw" object header message information of the object
    header message being moved to the new chunk, instead of relying on the
    "native" object header message information being re-encoded when the object
    header is flushed.  This is because when an object header is paged out of
    the metadata cache and subsequently brought back in, the "native"
    information pointer in memory is reset to NULL and only the "raw"
    information exists.

    [Actually, this additional testing doesn't trigger the bug, which needs
    _lots_ of objects to be created and accessed, but it does execise the
    object header continuation code more than other tests in the library.]

Platforms tested:
    Solaris 2.7 (arabica) & FreeBSD 4.5 (sleipnir)
2002-05-31 22:11:34 -05:00
Bill Wendling
4a3fa29c25 [svn-r5491] Purpose:
Feature Enhancement
Description:
    We can now set the MPI_Info object to more than one key/value
    pairing. By setting the HDF5_MPI_INFO environment variable to a
    semicolon separated list of "key=value" pairs, we can set the
    MPI_Info variable to them.
Platforms tested:
    Linux
2002-05-31 13:43:22 -05:00
Albert Cheng
770c707da1 [svn-r5481] Description:
Renamed pio_info_g as h5_io_info_g to better reflect its
    general purpose.
Platforms tested:
    eirene(pp)
2002-05-29 13:40:29 -05:00
Quincey Koziol
b13ea3cf07 [svn-r5468] Purpose:
Code cleanup.

Description:
    Included H5Eprivate.h for a couple of tests which needed it...

Platforms tested:
    IRIX64 6.5 (modi4)
2002-05-28 13:18:01 -05:00
Albert Cheng
c365ae1373 [svn-r5446] Purpose:
Feature
Description:
  moved the routines of setting up and dumping MPI-info object to
  test library so that it is avaiable for all tests too.
Platforms tested:
  modi4(pp), eirene (serial)
2002-05-21 13:49:44 -05:00
Quincey Koziol
03ab48c9c3 [svn-r5444] Purpose:
Code cleanup

Description:
    Clean up warnings on IRIX64 6.5 (modi4)

Platforms tested:
    IRIX64 6.5 (modi4)
2002-05-20 13:43:31 -05:00
Pedro Vicente Nunes
ce18afe663 [svn-r5313]
Purpose:
    added more tests to the H5set_extent function
Description:

 there was a bug in the H5S_select_fill call when the fill value was not defined
 added 2 more set of tests that call H5set_extent without the fill value being defined
 there are now 4 sets of tests:
 Test H5Dset_extent with chunks on the raw data cache, with and without fill value
 Test H5Dset_extent with chunks written to file (b-tree routines),  with and without fill value

Platforms tested:
    w2000
    linux
2002-05-01 10:54:56 -05:00
Raymond Lu
2d2e785e2d [svn-r5293]
Purpose:
    Bug Fix
Description:
    Using "grp1", "grp2" variable names conflicts Windows' internal variable
    definition.
Solution:
    Rename them.
Platforms tested:
    Linux 2.2
2002-04-30 12:09:35 -05:00
Quincey Koziol
05e8b74a20 [svn-r5290] Purpose:
Bug Fix

Description:
    Corrected int vs. unsigned short error that only showed up on big-endian
    machines.

    Also, add more testing to verify that the coordinates reported for each
    element iterated through with H5Diterate are correct.

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-04-30 09:46:18 -05:00
Quincey Koziol
a88d81f4ba [svn-r5286] Purpose:
Bug Fix

Description:
    Selection offsets were not being used correctly when iterating through
    all hyperslabs selections and point selections.

Solution:
    Use the selection offset appropriately.

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-04-29 15:27:31 -05:00
Albert Cheng
73683e4380 [svn-r5278] Purpose:
Migrate from configure macros of XYZ_ABC to H5_XYZ_ABC
Description:
    configure generates many macros definitions on the fly and
    were stored in src/H5config.h which is included by H5public.h.
    But other software that uses hdf5 may also run their own configure.
    There can be a clash in macro name space.  We decided awhile ago
    to prepend all generated macros with "H5_" to avoid conflicts.
    The process has started and this commit completes it (at least attempt
    to).
Solution:
    Many macros symbols (e.g. SIZEOF_xxx and HAVE_xxx were changed to
    H5_SIZEOF_xxx and H5_HAVE_xxx).  Then H5private.h no longer includes
    H5config.h.  This cuts H5config.h away from HDF5 source code.
Pending issues:
    The module of fortran and pablo are to be resolved in a different
    commit.
Platforms tested:
    eirene (parallel), arabica (solaris 7 --enable-fortran, --enable-cxx)
2002-04-28 03:34:17 -05:00
Raymond Lu
94f11385a6 [svn-r5273]
Purpose:
    New feature
Description:
    Allow H5Glink and H5Gmove to handle links across different locations.
Solution:
    Added H5Glink2 and H5Gmove2 functions with new parameter of destination
    location.
Platforms tested:
    Linux 2.2(eirene)
2002-04-26 15:34:46 -05:00
Quincey Koziol
80043b04c0 [svn-r5271] Purpose:
Bug Fix.

Description:
    When the fill value for a dataset is not set, the size is set to zero,
    causing problems with filling unused areas in previously defined chunks
    (i.e. when the dataset shrinks in size)

Solution:
    Use the size of the elements in the dataset directly, instead of relying on
    the size of the fill value (which must be the same size).

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-04-26 07:38:50 -05:00
Quincey Koziol
fd6731e7cd [svn-r5260] Purpose:
Code cleanup

Description:
    Previously, the I/O pipeline (pline), external file list (efl) and fill-
    value (fill) structs were passed down the raw data function call chain,
    even into and/or through functions which didn't use them.  Since all three
    of these pieces of information are available from the dataset creation
    property list, just pass the dataset creation property list down the
    function call chain and query for the information needed in a particular
    function.

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-04-25 13:02:17 -05:00
Albert Cheng
112fb8d45c [svn-r5257] Purpose:
Bug fix
Description:
    $(LT_RUN) was used to execute ./H5detect in src/Makefile.in.
    $RUNTEST was set to $(LT_RUN) which was used to execute sequential
    executable.  $(LT_RUN) is "../libtool --mode=execute".  But libtool
    invokes some commands that are not supported in the Tflops machine.
    That caused failures during the build and check processes.
Solution:
    Upon investigation, there does not seem to be need to use $(LT_RUN)
    any more.  The "libtool --mode=link" now generates a "fake" executable
    that is actually a command-script file that can regenerate the real
    executable with dynamic libraries hooks setup properly.
    Undo all those $LT_RUN substitute and let $RUNSERIAL execute those
    sequential executables.
Platforms tested:
    Eirene(serial), modi4(parallel)
2002-04-25 09:48:52 -05:00
MuQun Yang
1da400ea6b [svn-r5245]
Purpose:
    windows support of socket function
Description:
     gethostname is treated as socket function in windows and
     it is defined at winsock.h.
     for every windows socket function to be called, it must start
    with WSAStartup and end with WSACleanup
Solution:
     Add WSAstartup and WSACleanup with WIN32 macro.
Platforms tested:
windows 2000, confirmed at linux 2.2.18
2002-04-24 09:58:26 -05:00
Quincey Koziol
e5fc40662c [svn-r5219] Purpose:
Code cleanup

Description:
    Clean up warnings from gcc 3.1

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-04-22 12:48:24 -05:00
Albert Cheng
7527ed7d6f [svn-r5218] Purpose:
New feature
Description:
    Added h5_show_hostname to display the hostname of the host in
    which the process runs.  It can help identify location of process
    in multiple processes or batch launching environments.
Platforms tested:
    Eirene (pp)
2002-04-22 12:12:14 -05:00
Albert Cheng
5369181ba3 [svn-r5207] Purpose:
Feature
Description:
    Added option -c to allow skipping file system Checking.  This allows
    users to run the test even if the program thinks it may fill up the
    file system.
Platforms tested:
    eirene
2002-04-19 13:54:51 -05:00
Albert Cheng
f5d5e9e2ff [svn-r5205] Purpose:
Code cleanup
Description:
    Platform dependent code related to the struct stat and fstat
    calls polluted source codes.  Hard to maintain.
Solution:
    Platform dependent code are moved to H5private.h and then internal
    code can #include H5private.h.  Repeat those macro definition for
    the stdio and multi drivers since they area examples for writing
    a virtual file driver.  They must not use any internal code.
Platforms tested:
    eirene (parallel), modi4 (serial including gass driver.)
2002-04-19 02:20:41 -05:00
Quincey Koziol
ef9c40754b [svn-r5200] Purpose:
Code Cleanup

Description:
    Clean up compiler warnings from the last bunch of checkins

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-04-18 09:05:38 -05:00
Quincey Koziol
fa314a767e [svn-r5191] Purpose:
Bug fix

Description:
    When several level deep nested compound & VL datatypes are used, the data
    in the nested compound datatypes is incorrectly sharing the same "background
    buffer", causing data corruption when the data is written to the file.

Solution:
    Allocate a separate background buffer for each level of the nested types
    to convert.  (Also allocate temporary background buffers for array
    datatypes, where this sort of problem could occur also)

    Added more regression tests to check for these errors.

Platforms tested:
    FreeBSD 4.5 (sleipnir) & Solaris 2.6 (baldric)
2002-04-17 11:47:47 -05:00
Pedro Vicente Nunes
8e166139de [svn-r5186]
Purpose:
    added a new file
Description:
   new file that contains the framework for a new test, regarding a new ID to name
   function. for the moment the program does nothing
Platforms tested:
    w2000
2002-04-16 12:39:38 -05:00
Albert Cheng
adae346075 [svn-r5182] Purpose:
Feature
Description:
     Added test to verify H5_MALLOC_WORKS (malloc zero byte) macro
Platforms tested:
    Eirene
2002-04-13 20:15:45 -05:00
Raymond Lu
55486f1418 [svn-r5180]
Purpose:
    Bug Fix
Description:
    Reading fill_old.h5 from fillval.c has problem to find from building
    directory.
Solution:
    prepend source directory into file name.
Platforms tested:
    Linux 2.2
2002-04-12 16:08:48 -05:00
Pedro Vicente Nunes
4a77525456 [svn-r5177]
Purpose:
    added 2 files to remove by set_extent test
2002-04-12 11:11:15 -05:00
Raymond Lu
6d211545b6 [svn-r5171]
Purpose:
    New feature
Description:
    Fill-value's behaviors for contiguous dataset have been redefined.
    Basicly, dataset won't allocate space until it's necessary.  Full details
    are available at http://hdf.ncsa.uiuc.edu/RFC/Fill_Value, at this moment.
    These two file test backward compatibility with 1.4.
Platforms tested:
    Linux 2.2.
2002-04-11 17:53:26 -05:00
Pedro Vicente Nunes
19c8cfa861 [svn-r5169]
Purpose:
    test for the H5Dset_extent API function
Description:

there are 2 types of tests:
Test H5Dset_extent with chunks on the raw data cache
Test H5Dset_extent with chunks written to file


Platforms tested:

    Windows 2000
    SUN( arabica)
    LINUX (eirene)
    IRIX64 (modi4)
2002-04-11 16:30:42 -05:00
Pedro Vicente Nunes
03520e73ed [svn-r5167]
Purpose:

turned temporarely off this test, while the rest of the code is not checked in
2002-04-11 10:54:39 -05:00
Bill Wendling
421a88fd45 [svn-r5159] Purpose:
Updated
Description:
	Regenerated Dependencies file for addition of set_extent.c file
2002-04-10 10:38:05 -05:00
Bill Wendling
6febdcf5fc [svn-r5158] Purpose:
Update
Description:
	Changed set_extend to set_extent to reflect the change in the
	filename...
2002-04-10 10:35:27 -05:00
Pedro Vicente Nunes
4b8ccc422d [svn-r5154]
Purpose:

Renamed the all the functions "set_extend" to "set_extent".
Renamed the test file accordingly
2002-04-09 12:31:21 -05:00
Quincey Koziol
1ffe083f61 [svn-r5152] Purpose:
New Feature

Description:
    Added new H5Dfill() routine to fill the elements in a selection for a
    memory buffer with a fill value.  This is a user API wrapper around some
    internal routines which were needed for the fill-value modifications
    from Raymond as well as Pedro's code for reducing the size of a chunked
    dataset.

Platforms tested:
    FreeBSD 4.5 (sleipnir) [and IRIX64 6.5 (modi4) in parallel, in a few
    minutes]
2002-04-09 07:47:34 -05:00
Raymond Lu
242d36d263 [svn-r5147]
Purpose:
    New feature
Description:
    Added a query function H5Tget_member_index for compound and enumeration
    data types, to retrieve member's index by its name.
Platforms tested:
    Linux 2.2
2002-04-05 17:31:20 -05:00
Quincey Koziol
d2232a345f [svn-r5130] Purpose:
Bug Fix & Feature

Description:
    The selection offset was being ignored for optimized hyperslab selection
    I/O operations.

    Additionally, I've found that the restrictions on optimized selection
    I/O operations were too strict and found a way to allow more hyperslabs
    to use the optimized I/O routines.

Solution:
    Incorporate the selection offset into the selection location when performing
    optimized I/O operations.

    Allow optimized I/O on any single hyperslab selection and also allow
    hyperslab operations on chunked datasets.

Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-04-02 15:51:41 -05:00
Raymond Lu
1c1653aa40 [svn-r5123]
Purpose:
    Bug fix(#697)
Description:
    Variable-length string wasn't treated as string.
Solution:
    Added character set and padding into VL string type.
Platforms tested:
    FreeBSD
2002-03-29 18:46:56 -05:00
Albert Cheng
0a8228c4a9 [svn-r5113] Purpose:
feature
Description:
    Added -fsize <fsize> option which controls the family file size
    used.  This can be used to test the file size limits of a machine
    or file system.
Platforms tested:
    modi4 (passed even 20GB file size).
    Eirene (started to fail when 2GB is used.  Expected since linux 2.2
    does not support large than 2GB file size.)
    burrwhite (passed up to 4GB. Expected since Linux 2.4 supports larger
    than 2GB file size.)  Then it failed at 4GB and beyond.  This is
    probably a bug in the family file driver.
2002-03-28 18:46:55 -05:00
Robb Matzke
97d0dc22ee [svn-r5111] ./hdf5-devel/test/stab.c
Merge of name component length limit bugfix from 1.4 branch.
A couple of very minor typos fixed.
2002-03-28 14:27:45 -05:00
Quincey Koziol
0cb78c2087 [svn-r5097] Purpose:
Bug Fix

Description:
    Regression test for following bug:

    The H5Gget_objinfo() function was not setting the 'fileno' field in the
    H5G_stat_t struct passed in.

Solution:
    Added a "file serial number" to each file currently open in the library
    and put that in the 'fileno' field.  If a file is opened twice (with
    H5Fopen) and the VFL driver detects that it is the same file (i.e. the
    two file structures have the same "shared file info" in the library's
    memory structures), they will have the same serial number.

    This serial number has two drawbacks:
        - If a VFL driver doesn't/can't detect that two calls to H5Fopen with
            the same file actually _are_ the same file, each will get a
            different serial number
        - If the same file is closed and re-opened, the serial number will be
            different.

    It is be possible to fix the second drawback for many VFL drivers, but it
    would be a lot of effort and probably isn't worth it until we've got a
    good reason to do it.  Dunno if we'll ever be able to fix the first
    drawback...

Platforms tested:
    FreeBSD 4.5 (sleipnir)
VS: ----------------------------------------------------------------------
2002-03-27 15:25:48 -05:00
Quincey Koziol
e23792a3f0 [svn-r5083] Purpose:
Bug Fix

Description:
    Regression test for following bug:

    When reading a contiguous hyperslab that spanned the entire dataset and
    was larger that the type conversion buffer, the hyperslab routines need
    to fill the type conversion buffer and then return to the I/O routines.

    When the I/O routines resume the hyperslab operation, it was possible to
    have a combination of coordinates which caused the hyperslab iterator
    to incorrectly advance in the file, causing some data to be re-read or
    re-written.

Platforms tested:
    Linux (eirene)
2002-03-26 14:55:44 -05:00
Pedro Vicente Nunes
34880b42a0 [svn-r5065]
Purpose:
    test the H5Dset_extend function
Description:
    changed the example for more easy debugging
Platforms tested:
    w2000, linux
2002-03-14 12:54:34 -05:00
Quincey Koziol
b8dbd390db [svn-r4978] Purpose:
Code cleanup
Description:
    Cleanup compiler warnings found by the SGI compiler and gcc 3.0
Platforms tested:
    FreeBSD 4.5 w/gcc 3.0 (hack) && IRIX64 (modi4)
2002-02-16 21:51:21 -05:00
Quincey Koziol
5883b9d67d [svn-r4965] Purpose:
Bug Fix
Description:
    If a non-zero fill-value is used for a chunked dataset, any non-existent
    chunked read with an "all" selection (or a contiguous hyperslab selection)
    will return zero for those instead of the user's fill-value.
Solution:
    Fixed I/O code to pass down fill-value to "optimized" I/O routines, so it
    will be available to fill the user's buffer with.
Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-02-14 10:57:48 -05:00
Pedro Vicente Nunes
93ac2c571b [svn-r4950]
Purpose:
    fixed a bug that made a failure on H5Screate_simple, a 1D dimemsion array was declared instead of a 2D array


Platforms tested:
w2000  octopus
linux eirene
sun   arabica
IRIX64 modi4
2002-02-13 14:28:37 -05:00
Bill Wendling
f1bfb5ce8f [svn-r4943] Purpose:
Cleanup
Description:
	Added set_extend.h5 file to the CLEANUP macro in the Makefile so that
	it'll be removed when the other temp files are removed.
Platforms tested:
	Linux
2002-02-12 14:08:10 -05:00
Bill Wendling
f81bca3fc6 [svn-r4942] Purpose:
Feature Add
Description:
	Added set_extend to the MANIFEST and test/ directory Makefile.
2002-02-12 11:20:56 -05:00
Pedro Vicente Nunes
ec0cd59fe8 [svn-r4941]
Purpose:
    added a new test file for the new function H5Dset_extend
Platforms tested:
    windows2000
2002-02-12 11:16:34 -05:00
Quincey Koziol
d8626dd40f [svn-r4920] Purpose:
Bug fix
Description:
    Correct inefficient property copying when using derived property list
    classes.
Platforms tested:
    FreeBSD 4.5 (sleipnir)
2002-02-07 14:55:43 -05:00