Commit Graph

635 Commits

Author SHA1 Message Date
Allen Byrne
fb762aa6b0 [svn-r21953] HDDFV-7560: h5dump refactoring
Tested: local linux
2012-02-17 16:41:58 -05:00
Allen Byrne
5b03d4b08d [svn-r21952] HDFFV-5874: -c and -k subsetting
Tested:local linux
2012-02-17 15:14:03 -05:00
Jonathan Kim
13ef2d1fbb [svn-r21890] Purpose:
Fix for HDFFV-7836 h5diff: displays error stack message for comparing the two dangling symlink with follow-symlinks option

Description:
  While ago, to improve performance, skipping same object checking 
  (h5tools_is_obj_same()) was added. 
  However the checking function doesn't understand about the dangling link and
  caused the issue. 
  Since handling dangling link code section already implemented, move the 
  checking function after handling dangling-links to address the problem.
  Test was added and tagged with jira#.


Tested:
  jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE),  Windows (32-LE cmake), Cmake (jam)
2012-01-24 15:39:59 -05:00
Allen Byrne
cc3eb8da73 [svn-r21804] Update CMake Required version in all folders to match current standard 2.8.6 2011-12-05 11:19:09 -05:00
Allen Byrne
4c5c484b99 [svn-r21715] Correct SET_TARGET_PROPERTIES commands 2011-11-04 12:31:32 -05:00
Dana Robinson
fa4ab23b9e [svn-r21664] Added solution folders for most of the projects. This still needs some polish - the solution folder assignment should go closer to the target declaration and not all projects are grouped (parallel, c++, fortran, hl, and a few others).
Tested on Windows.
2011-10-25 01:59:10 -05:00
Jonathan Kim
e54d15a26c [svn-r21658] Purpose:
HDFFV-7770 - h5diff segmentation fault on JPSS files

Description:
    Fixed segfault over non-comparable attribute with different dimention or
    rank, along with '-c' option to display details.

Tested:
 jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Windows, Cmake
2011-10-24 16:50:13 -05:00
Neil Fortner
395c1c7db5 [svn-r21603] Purpose: Add generic skip list implementation
Description:
Added new H5SL_TYPE_GENERIC skip list type, which uses void *'s as keys and a
client-supplied callback for key comparison.  This was added to support the
upcoming "merge named datatype" feature for H5Ocopy, but may be used in other
places as well.  Also added testing.

Also fixed a potential bug with the H5SL_TYPE_OBJ implementation, and added
testing for that.

Tested: jam, koala, heiwa (h5committest), durandal
2011-10-18 16:27:58 -05:00
Jonathan Kim
664c013fc7 [svn-r21586] Description:
Added a funtion to reset dataset & hyperslab buffer size for h5repack from an 
    environment variable.
    This is performance debugging purpose for now.

Tested:
 jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), Windows (32-LE), cmake
2011-10-14 17:44:11 -05:00
Jonathan Kim
86faf0b302 [svn-r21396] Purpose:
HDFFV-7693 - h5diff produces different behavior between versions: 1.8.3 and 1.8.6

Description:
    There were two issues on this. 
    One was not displaying all the comparable objects if non-comparable 
    object/attribute exist and compared before comparables ones. This issue
    occurred after 1.8.4 release. This is the issue from user.
    The other issue was not displaying all the comparable attributes, 
    if non-comparable object/attribute exist and compared ahead. This issue 
    were exist even before 1.8.4 release. So it's possible some attribute 
    comparison may have not displayed correctly in the past, if non-comparable 
    data were exist in common object.
    Fixed h5diff to display all the comparable object and attribute regardless 
    of non-comparables. 

Tested:
 jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake (jam, Windows)
2011-09-16 14:29:03 -05:00
Raymond Lu
64b1807783 [svn-r21378] The tools used "%hhd" to print signed char. But VMS doesn't know it. So I used H5_VMS to have a different way ("%hd") to print it.
Tested on jam.  Not tested on VMS yet.  Simple change.
2011-09-13 10:45:34 -05:00
Jonathan Kim
cf81925931 [svn-r21358] Purpose:
HDFFV-7712 - h5diff: segfault over combinations of complex container types (compound, array, vlen)


Description:
    - Fixed segfault over dataset with container types (array,lven) with multiple nested compound types. (ex: compound->array->compound, compound->vlen->compound)

Tested:
    jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake (jam)
2011-09-02 11:29:45 -05:00
Raymond Lu
d08f89f07d [svn-r21354] Issue 7674 - CLANG compiler complained about the line (about 800):
tempint = (tempint >> packed_data_offset) & packed_data_mask;
The right shift may cause undefined behavior if PACKED_DATA_OFFSET is 
32-bit or more. For every kind of native integers, I changed the code 
to make it zero if PACKED_DATA_OFFSET is greater than or equal to the
size of integer.

Tested on Mac OS Lion with CLANG compiler and jam, koala, and linew.
2011-09-01 15:51:43 -05:00
Scot Breitenfeld
9eb1d607d8 [svn-r21249] Description: Part II of F2003 branch merge into the trunk.
Ran bin/reconfigure to update the Makefile.in in directories not part of the fortran directory check=in. Updates Makefile.in due to changes made in configure.in for the Fortran 2003 additions.

Tested on all platforms run under daily tests.
2011-08-18 09:38:53 -05:00
Jonathan Kim
e703a6a2a4 [svn-r21236] Purpose:
Work for:
   HDFFV-7515 - GMQS: h5unjam - incorrect help page and should display when 
   no file is given.
   and
   HDFFV-5941 - h5jam: specifying a user block file with a proper HDF5 magic
   number will result in a corrupted HDF5 file.


Description:
   - Revised command help pages of h5jam and h5unjam. The descriptions
     were not up to date and some were missing. (HDFFV-7515)
   - Fixed h5jam not to allow specifying an HDF5 formatted file as input 
     file for -u (user block file) option, because the original HDF5 file 
     will not be accessible if allows. (HDFFV-5941)

Tested:
    jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake (jam, Wondows)
2011-08-16 15:41:47 -05:00
Allen Byrne
dd7693bde0 [svn-r21195] Correct windows exports for h5diff. 2011-08-08 16:59:09 -05:00
Allen Byrne
4eb2b76737 [svn-r21166] Remove subfolder in library install
Tested: local linux
2011-08-01 14:37:34 -05:00
Quincey Koziol
a777619a6b [svn-r21121] Description:
Switch from H5P_DATASET_ACCESS_DEFAULT to H5P_DEFAULT for calls to
H5Rdereference2().

Tested on:
    Mac OS X/32 10.6.8 (amazon) w/debug
    (too minor to require h5committest)
2011-07-18 18:12:28 -05:00
Raymond Lu
304f19d730 [svn-r21117] Issue 2763 - I added a new parameter of object access property list to the function H5Rdereference. It's called H5Rdereference2 now. H5Rdereference function has been deprecated to H5Rdereference1. I also added some test cases in trefer.c.
Tested on jam, heiwa, and koala.
2011-07-18 16:23:02 -05:00
Peter Cao
877b7aed1b [svn-r21105] Fixed two bugs:
- h5repack: h5repack failed to copy dataset if the layout is changed from chunked with
            unlimited dims to contiguous. (PC -- 2011/07/15)
     - h5diff: "--delta" option considers two NaN of the same type are different, which is wrong
            based on http://www.hdfgroup.org/HDF5/doc/RM/Tools.html#Tools-Diff. (PC -- 2011/07/15)
2011-07-15 18:02:50 -05:00
Jonathan Kim
83b77cb4eb [svn-r21014] Purpose:
HDFFV-5878 - GMQS: h5dump - incorrect output format for array type with multiple elements in an index

Description:
    Fixed h5dump to display the first line of each element into correct 
    position for multiple dimention array type.
    Before this fix, the first line of each element in array were displayed 
    after the last line of previous element without moving to the next 
    line (+indentation)

Tested:
    jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE),  Windows (32-LE)
2011-06-21 13:24:35 -05:00
Quincey Koziol
1d9307bd91 [svn-r20885] Description:
Bring Coverity changes back to trunk:

r20340:
Address coverity issue 248.  Set freed pointer to NULL if realloc fails, then check for NULL before attempting to close array of handles stored in memory addressed by pointer.

r20341:
Added initialization udata.path = NULL; udata.visited = NULL; to prevent unintialized use after done: label.

Do C-style initialization AFTER all variable definitions.

r20342:
Fix valgrind error in H5DUMP-XML-tall.h5

r20343:
Addressed Coverity issue 591 - check the return value of H5S_SELECT_ITER_RELEASE.

r20344:
Added initialization udata.path = NULL; to prevent uninitialized used after done: label

r20347:
Purpose: Fix memory leak in overhead.c

Description: Fixed leak in test() in overhead.c where array "had" was never
freed.


r20348:
Addressed Coverity issue 705 - added prototype for resize_configs_are_equal to cache_common.h.

r20392:
Purpose: Fix coverity issues 1677 and 1678

Description: Added return value checking for 4 funciton calls in
H5tools_get_symlink_info().

r20394:
Purpose: Fix coverity issues 1674 and 1675

Description: Modified H5Epush2() and H5E_printf_stack() to keep track of whether
va_start() has been called, and to call va_end() at the end if so.

r20395:
Should be H5MM_calloc(count * sizeof(void*)). Fixed --gh 

r20396:
Should be H5MM_calloc(count * sizeof(void*)). Fixed. --gh

Tested on:
    Mac OSX/32 10.6.7 (amazon) w/debug & production
    (h5committested on branch)
2011-05-20 17:04:03 -05:00
Jonathan Kim
b9e1b158a5 [svn-r20804] Purpose:
HDFFV-7594 - GMQS: h5dump shows wrong values for H5T_STD_I8LE dataset on Blue-gene (ppc64 linux BE +@)

Description:
    For the STD_I8 type data, updated to use 'signed char' instead of 'char' as
    'char' could be defined as unsigned on a certain system, which cause h5dump
    to display data values incorrectly.

Tested:
    jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE)
2011-05-12 18:12:29 -05:00
Allen Byrne
f49dc38127 [svn-r20796] Refactor print_data_region_blocks/ponts to remove context passed in by value. The print functions needed an independent context with only the current indent level passed in by argument. Also synched the two routines logical flows and corrected a mem_space error.
h5dump (and h5stat, h5jam/h5unjam) help option not tested. Added h5dump parse_command_line technique for h5stat and h5jam/unjam and created testfiles.

Tested: local linux
2011-05-11 15:45:54 -05:00
Allen Byrne
2e7d42a43c [svn-r20785] Revert region data print changes from yesterday 2011-05-10 08:52:13 -05:00
Allen Byrne
3b06122b50 [svn-r20783] correct type of variable for blkindx 2011-05-09 16:50:35 -05:00
Allen Byrne
8e30e8da7b [svn-r20781] correct typo of variable types for indx and jndx 2011-05-09 16:36:34 -05:00
Allen Byrne
a4c349dece [svn-r20776] Refactor print_data_region_blocks/ponts to remove context passed in by value. The print functions needed an independent context with only the current indent level passed in by argument. Also synched the two routines logical flows and corrected a mem_space error.
Tested: local linux
2011-05-09 14:56:32 -05:00
Jonathan Kim
054ca47350 [svn-r20767] Purpose:
HDFFV-5928 - GMQS: h5diff problem and improvement on comparsing the same objects

Description:
    Improved performance by eliminating duplicated action for getting object 
    information in half from the previous fixe when comparing group vs group. 
    This is addition to the previous commit r20676.

Tested:
  jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), cmake
2011-05-06 17:02:24 -05:00
Allen Byrne
84effee753 [svn-r20752] Windows does not have snprintf, need to use HDsnprintf. 2011-05-05 10:56:36 -05:00
Allen Byrne
c5e00232ff [svn-r20725] Add overlooked changes from part of coverity fix
Tested: local linux
2011-05-04 15:28:09 -05:00
Dana Robinson
fbba9db955 [svn-r20724] Purpose: Fix a bug in h5diff when enum values are compared that do
not represent a valid enum value.

Description:
The h5diff code compares enum values by converting them to strings and
then comparing them.  When the enum value is out of range and can't be
converted to an enum string representation, the comparison was skipped.

The code now flags differences when one of the two enum values is out
of range (two out of range values are compared in memory).  A test has
been added to the tools test script.

This fixes JIRA HDFFV-7527

Tested on: jam, koala, heiwa (h5committest)
2011-05-04 15:07:38 -05:00
Allen Byrne
2ee1841187 [svn-r20721] Refactor ext lib import and install.
Add SOVERSION for linux
2011-05-04 14:42:03 -05:00
Allen Byrne
907a5a1df0 [svn-r20713] Packed Bits Merge:
removed option defines and #ifdef/#endif
   refactored all printf to HDfprintf in h5dump.c
   formatted and indention improvements
   synched with 1.8 branch
   
Tested: local linux
2011-05-03 12:56:23 -05:00
Allen Byrne
87994982f9 [svn-r20677] Merge packed bits option from 1.8 branch to trunk. CMake only. Autotools merge to come.
Tested: local Linux
2011-04-29 13:38:41 -05:00
Jonathan Kim
170e7e53a5 [svn-r20676] Purpose:
- HDFFV-5928 - GMQS: h5diff problem and improvement on comparsing the same objects

Description:
    Fixed:
    1) adding h5tools_is_obj_same() function to check if two given IDs or paths point to the same object. This function can be very useful for other tools and applications.
    2) using h5tools_is_obj_same() at h5diff() and diff() in h5diff.c. If two paths point to the same object, there is no need to check the details of the object since we know there is no difference. The fix will increase the performance by skipping the content comparison. It also fixed the problem of reporting difference for some cases of comparing the same file, e.g. empty files or files with incomparable objects the same file.

    Test update:
    Updat prvious test cases (171, 172, 530) affected by this fix, so they
    still perfrom originally intended testing without bypassing.

Tested:
 jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), cmake
2011-04-29 12:02:31 -05:00
Raymond Lu
65794c39bf [svn-r20626] Albert's test on bp reveals that the dumper had assertion failure when it tried to display empty attribute data. I added
a check for empty attribute in h5dump.c. I also added a check for empty dataset in tools/lib/h5tools.c.

Tested on jam.  But I tested the same changes in 1.8 on jam, linew, and amani.
2011-04-25 11:59:51 -05:00
Quincey Koziol
53eb528071 [svn-r20539] Description:
Bring Coverity changes back to trunk:

r20276:
Add recursive is vlen string function.
Cleanup resource leaks for issues: 200,202,329,688,811,812


r20277:
Check types and close by adding error section: issue 687


r20278:
Replaced implicit pointer conversion with (ocrt_info.new_obj != NULL).


r20280:
Addressed coverity issues 927-929 & 583.  The real issue is failure to check 
file name length -- at least at the H5FD interface level.  This needs more work, but at least I have dealt with the issue in H5FDfamily.c


r20337:
H5O_type_t  obj_type = H5O_TYPE_UNKNOWN;


r20338:
Added udata.name = NULL; to prevent potential uninitialized use after done: label.


r20339:
coverity issues: 686,828,1670-1673,1707-1711


Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        FreeBSD/32 8.2 (loyalty) w/gcc4.6, in debug mode
        FreeBSD/64 8.2 (freedom) w/gcc4.6, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, w/threadsafe, in production mode
        Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
2011-04-18 05:18:47 -05:00
Quincey Koziol
9431c7a97e [svn-r20536] Description:
Clean up various warnings & code formatting issues.

	Bring changes from Coverity branch to trunk:

r20085:
Purpose: Fix coverity issue 793

Description: Modified H5S_hyper_project_simple_higher() to free the entire span
list in new_space on failure.


r20091:
This is a fix for coverity bug #1683.
Changed the two printfs to use %lu (unsigned long) for printing "dset_size".


r20162:
Purpose: Fix coverity issue 785

Description: Modified H5T_enum_nameof() to free "name" on failure if it was
allocated.  Also clarified some code in H5S_hyper_rebuild_helper().


r20189:
Addressed coverity defect 783.

H5SL_new_node() in H5SL.c was failing to free space allocated in its
first alloc if the second alloc failed.  Added a call to H5FL_FREE
to address this issue.

This is purely to keep coverity happy -- if this code is ever triggered,
we have much larger problems.

Note that this fix will trigger an unused return value complaint
from coverity next week.


r20190:
Fixed Coverity issues 1561 1565 and 1678 (UNUSED_VALUES) by moving checks of return values to after the function call.


r20191:
Fixed coverity issues 643 644 and 1678 (CHECKED_RETURN).


r20232:
Addressed coverity issues 923-925.  Replaced calls to sprintf with calls
to HDsnprintf.


r20233:
Fix coverity issue 662.  Don't try to sort 0 attributes in H5Aint.c.


r20234:
Fix coverity issue 664.  Check for NULL before dereferencing in H5Gdeprec.c.


r20271:
Purpose: Fix coverity issue 784

Description: Modified H5_debug_mask() to keep a list of files opened for use as
a debugging output stream, and modified H5_term_library to close these files on
exit.


r20272:
addressed coverity issues 838 & 955.  Issue was use of strcpy() -- existing
code was safe, but modified to use strncpy() to keep coverity happy.


r20273:
Addresed coverity issues 1388 and 1389.
Initialized sel_iter->type to NULL in H5S_select_iter_init.


r20275:
Purpose: Fix valgrind issue in mf.c

Description: Fixed bug (incomplete if statement) in test_mf_fs_alloc_free() so
the retrieved node gets freed.


Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, w/threadsafe, in production mode
        Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
2011-04-17 13:57:07 -05:00
Mike McGreevy
98362b664c [svn-r20504] Purpose:
General shared library improvements for CYGWIN / AIX

Description:

    Shared libraries are disabled on both CYGWIN and AIX due
    to inability to build them correctly. Part of the problem
    in both of these situations is the lack of the libtool
    flag -no-undefined, which tells libtool that all needed
    symbols are defined at link time (a requirement on these
    systems) and that it's okay to build shared libraries.

    Another problem are lack of dependencies between wrapper
    libraries and core C HDF5 library.

    This patch addresses both of these by fixing configure to
    add in -no-undefined flag for libtool during linking and
    adds automake dependencies in the Makefile.am files.

    After testing, both CYGWIN and AIX now generate shared
    libraries, but there are still some test failures in each.
    (cache_api, dt_arith, and testerror.sh on CYGWIN, and
    fortran tests on AIX).

    Even though the shared libraries are not quite perfect,
    this is a general improvement to what we had before, so
    I'm applying the patch anyways. Note that default behavior
    of shared libraries on these systems being disabled has
    NOT been changed and requires the use of the
    --enable-unsupported to attempt to build them.

    We will need to address the test failures in each
    architecture prior to formally supporting shared
    libraries on each.

Tested:

    h5committested & CYGWIN tested (on bangan)
    (AIX tested by Albert on bp-login2)
2011-04-14 16:21:59 -05:00
Mike McGreevy
a45c7424b2 [svn-r20502] Purpose:
Add "silent make" mode configure option.

Description:

    Automake 1.11 has a new option available that allows for a
    silent make mode. This functionality needs to be explicitly
    enabled in configure.in via the use of the automake macro
    AM_SILENT_RULES, which is what this commit is adding.

    This introduces a new configure option: 

        --{en|dis}able-silent-rules

    This option is on by default, and simplies compile and link
    line outputs when building the library. Disabling this option
    will print full "verbose" output (i.e., full compile and
    linking lines for each target).

Tested:

    This was tested on jam & h5committested
2011-04-14 14:45:57 -05:00
Quincey Koziol
e4c6ef2f06 [svn-r20480] Description:
Remove global variable for the path name in the group traversal code.  Also
clean up a bunch of compiler warnings.

Tested on:
    Mac OS X/32 10.6.7 (amazon) w/debug & production
    FreeBSD/32 6.3 (duty) w/debug
    FreeBSD/64 6.3 (liberty) w/debug
    Solaris/32 2.7 (linew) w/debug
2011-04-12 11:59:33 -05:00
Mike McGreevy
e006157deb [svn-r20475] Purpose:
- Revise shared Fortran library disabling scenarios in configure
    - Improve configure output summary

Description:

    Shared Fortran libraries are not supported on Mac, but were being
    disabled by configure in a way that also forced the C libraries
    to be static-only. This has been fixed, so now only shared Fortran
    is disabled while shared C can remain.

    This prompted two additional changes:

        1. While working on the check that addresses whether or not
           shared Fortran libraries are allowed, removed old and no
           longer needed check(s) that disable shared Fortran
           libraries with HP, Intel 8, PGI, and Absoft compilers.
           (Essentially, Mac is the only situation in which Fortran
           shared are disabled by configure.)

        2. Having two different states of libraries (i.e. shared C
           library with static-only Fortran library) was not apparent
           in the configure summary, which labeled all libraries as
           either shared and/or static. I've added lines to both the
           C++ and Fortran output sections to list shared/static-ness
           of these libraries specifically.

    Additionally, I've made sure that the new --enable-unsupported
    configure option correctly overrides configure if it tries to
    disable a shared library.

Tested:

    jam, fred, & h5committest
2011-04-11 16:00:38 -05:00
Jonathan Kim
553e452ce4 [svn-r20384] Purpose:
Fixed Bug 2184 - GMQS: h5diff - incorrect calculation code for 
    --use-system-epsilon option

Description:
    Merged from HDF5 1.8 branch r20369.
    Fixed h5diff for --use-system-epsilon option: the calculation changed
    from ( |a - b| / b ) to ( |a - b| ). This was decided for better 
    performance and was corrected only in HDF5 trunk, so 1.8 got updated.
    Also comments for equal_XXX() function were updated correctly. 
    Also help page and RM got updated correctly.
    Also add test cases for testing the differences w/wo the option.

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Windows (32-LE)
2011-03-31 16:43:46 -05:00
Jonathan Kim
4147de8d02 [svn-r20294] Purpose:
Fixed CHICAGO: Bug 2121 - h5diff - incorrect and lack of output for the 
    different set of attributes (different number and names)

Description:
    Previously h5diff compared attributes correctly only when two objects have 
    the same number of attributes and attribute names are identical.
    This fix covers all other cases.
    Also didn't display useful information about attribute difference.
    This fixes both issues.

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2011-03-22 10:47:07 -05:00
Jonathan Kim
f92d2371ff [svn-r20285] Purpose:
Improve the previous fix for Bug 2216 - GMQS: h5diff - memory leak when 
    compares vlen string in dataset or attributes

Description:
    Related to the previous checkin r20270 and r20266.
    Improve h5tools_detect_vlen() code for better performance. H5Tdetect_class
    already recusive on given type so don't need to be part of recusive call
    again. Also improve error handlings in h5tools_detect_vlen and 
    h5tools_detect_vlen_str functions.
    Also updated h5ls and h5dump code accordingly.

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake - jam
2011-03-21 18:02:31 -05:00
Jonathan Kim
f845e716bc [svn-r20274] Purpose:
Fixed Bug 2214 - GMQS: h5diff - memory leak in diff()

Description:
    Memory leaks occurred when accessing symbolic links with --follow-symlink
    option. 
    Test cases are in testing script. (400 - 456, 501 - 518)
    An example test : valgrind  --leak-check=full  h5diff --follow-symlinks -v h5diff_softlinks.h5 h5diff_softlinks.h5

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake - jam
2011-03-18 15:13:16 -05:00
Jonathan Kim
d697acbfb5 [svn-r20270] Purpose:
Improve the previous fix for Bug 2216 - GMQS: h5diff - memory leak when 
    compares vlen string in dataset or attributes

Description:
    Improve the fix along with the previous checkin r20266.
    Add a new function to tool lib, h5tools_detect_vlen_data() which return 
    TRUE if include any kind of vlen data all at once, either VLEN-data or 
    VLEN-string and so on.
    Also updated h5ls and h5dump code accordingly.

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake - jam
2011-03-18 13:50:19 -05:00
Jonathan Kim
e8d97aef7d [svn-r20266] Purpose:
Fixed Bug 2216 - GMQS: h5diff - memory leak when compares vlen string in 
    dataset or attributes

Description:
    Test for dataset : valgrind  --leak-check=full  ./h5diff -v h5diff_dset1.h5 h5diff_dset2.h5 /g1/VLstring
    Test for attr : valgrind --leak-check=full ./h5diff h5diff_attr1.h5 h5diff_attr2.h5
    Both test cases are in testing script.

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake - jam
2011-03-17 18:00:14 -05:00
Allen Byrne
5ed4eda59e [svn-r20247] Change name of new VLEN function from H5Tdetect_vlen_str to h5tools_detect_vlen_str to match other functions in tools lib.
Added back test for H5Tdetect_class of H5T_VLEN after each instance of above function to catch all VLEN types in h5dump.

Tested: local linux
2011-03-14 16:03:20 -05:00
Allen Byrne
1eedd5b750 [svn-r20222] Correct mistake by declaring indexing variable removed from for at top of function. 2011-03-10 08:27:29 -05:00
Allen Byrne
55cd5326f3 [svn-r20221] Remove rougue 'int' inside for loop (cut-paste error) - windows complained. 2011-03-10 07:10:36 -05:00
Allen Byrne
5b3223c7c5 [svn-r20216] Valgrind fix for memory leak in h5tools_dump_xxx which is fixed by adding a new function;
htri_t H5Tdetect_vlen_str(hid_t tid) to h5tools. This needs to be called before any H5Aread/H5Dread and if TRUE, then call vlen_reclaim function after the corresponding h5tools_dump_xxx().

Tested: local linux and valgrind
2011-03-09 15:00:20 -05:00
Peter Cao
a56b49aaba [svn-r20206] Updated manifest and source code for fixing h5dump -y -o problem 2011-03-09 08:07:38 -05:00
Jonathan Kim
0619b155aa [svn-r20188] Purpose:
Fixing Bug 2161 - GMQS: h5dump - only on Windows, skip displaying a data value every a certain lines in array type dataset

Description:
    Fixed h5dump for skipping some values for long array type dataset on 
    Windows. This issue only occurred on Windows due to the different 
    return behavior from _vsnprintf() funtion.
     
Tested:
 Windows, jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2011-03-04 11:21:26 -05:00
Jonathan Kim
bb294c2b1e [svn-r20108] Purpose:
Fixing Bug 2092 - h5dump does not display index for a dataset

Description:
    h5dump skip displaying array indices every certain number when the 
    array type dataset is relatively big. The certain number varies 
    according to the size of each array. 
    This checkin fix the skipping array indices problem. This fix also
    correct indentation of the dataset data output.
     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2011-02-15 14:28:48 -05:00
Quincey Koziol
2fbca68293 [svn-r20070] Description:
Switch order of system includes, to correct error on FreeBSD machines.

Tested on:
	FreeBSD/32 6.3 (duty) w/debug
2011-02-09 09:48:42 -05:00
Quincey Koziol
575469a6a7 [svn-r20065] Description:
Bring changes from Coverity branch to trunk:

r19975:
Fixed potential mem leak at H5O_attr_open_by_name

r19980:
Fix coverity issue 792.
Free tmp_env_prefix in H5Lexternal.c line 365 if it is not NULL but its contents are 0 when it goes out of scope.

r20039:
Eliminate warnings about nested extern and implicit declarations of parallel_print and address Coverity defects 712-781 by #including h5tools_utils.h in h5diff_array.c, h5diff_attr.c, h5diff_dset.c and h5diff_util.c.

r20046:
Purpose: Address TOCTOU warnings in h5jam and h5unjam

Description: Coverity is afraid that the state of the input file could change
between the call to stat() and the call to open().  This is called a time-of-
check time-of-use (TOCTOU) vulnerability.  Modified stat calls to fstat which
uses an open file pointer so it (hopefully) won't complain any more.

r20047:
Addressed coverity issues 135-137, 462-464.  Local pointers that needed to be freed in case of error were moved out of a switch statement in src/H5Tnative.c, set to NULL, and checked before freeing.

Tested on:
    Mac OS X/32 10.6.6 (amazon) w/debug & production
    (h5committested on Coverity branch)
2011-02-08 16:35:54 -05:00
Quincey Koziol
a6d5fa2c7d [svn-r20061] Description:
Bring changes from Coverity branch to trunk:

r19930:
Fix memory leaks involving VL attributes in h5repack and h5diff.  The buffers in
copy_attr and diff_attr were not checked for the presence of a vlen before being
freed, and vlen storage was never reclaimed.  Added checks and calls to
H5D_vlen_reclaim().

r19933:
Purpose: Fix memory leak in H5L_move_cb()

Description: H5L_move_cb copied the source link using H5O_msg_copy() but freed
it manually using H5MM_xfree().  Since H5O_link_copy allocates the link using
H5FL_MALLOC, this causes the link to be allocated from the free list but is
never put back on the free list when it is freed.  This prevents the link free
list from shutting down properly.  Modified H5L_move_cb() and H5L_move_dest_cb()
to free the link properly using H5O_msg_free().

r19973:
Fix resource leaks by freeing string created by HD5f2string

r19974:
Issue #345: Inialize buf variable to null

Tested on:
    Mac OS X/32 10.6.6 (amazon) w/debug & production
    (h5committested on Coverity branch)
2011-02-07 19:53:45 -05:00
Quincey Koziol
ff845ed8b1 [svn-r20052] Description:
Clean up Coverity warnings, and fix some style issues:

r19735:
Fix for memory leak in test/mf found by valgrind.

r19736:
Fix memory leak in h5repack.  The buffer in copy_objects, when copying the
entire dataset at once, was not checked for the presence of a vlen, and vlen
storage was never reclaimed.  Added check and call to H5D_vlen_reclaim().

r19772:
Change H5assert() to
   if (H5T_VLEN != src->shared->type || H5T_VLEN != dst->shared->type)
          HGOTO_ERROR(H5E_ARGS, H5E_BADTYPE, FAIL, "not a H5T_VLEN datatype")

r19774:
removed unused priv.

r19775:
removed unused variables

r19778:
Fix memory leak comparing for variable length data types.

r19834:
Fixed memory leaks found by valgrind.  Memory errors remain for another day.

Tested on:
    Mac OS X/32 10.6.6 (amazon) w/debug & production
    (h5committested on branch)
2011-02-05 22:24:42 -05:00
Allen Byrne
f3c2eb9acf [svn-r19918] Add hh modifier to signed char printf format string. Added h5dump test to verify that signed/unsigned datasets print correctly.
Bring solution from 1.8 packed bits fix which solved problem on heiwa with Signed char of 8 bits
Tested: local linux
2011-01-05 15:18:16 -05:00
Allen Byrne
02888be7f2 [svn-r19909] Change how LINK_FLAGS for fortran are appended on Windows
bring r19908 from 1.8 branch
2011-01-05 09:46:08 -05:00
Jonathan Kim
562ba69f35 [svn-r19892] Purpose:
Bug 2089 - GMQS: h5diff segfault on a compound dataset with fixed length + 
    vlen string type order

Description:
    This is fix for the segfault when h5diff compares a compound dataset with 
    combination of fixed length string types and vlen string types in certain 
    orders. Optimized vlariable length string handling codes. The fix is 
    referred from h5dump handling vlen strings. 
    For testing, several compound datasets were added with various combinations.
    Previous failed cases:
     - Vlen string, Fixed length string, Vlen string, Fixed length string
     - Fixed length string, Fixed length string, Vlen string, Vlen string
     - Fixed length string, Vlen string, Fixed length string, Vlen string
     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2010-12-28 13:08:40 -05:00
Larry Knox
72634b34e4 [svn-r19839] Updated to libtool v 2.4, autoconf 2.68 and m4-1.4.15.
Tested with h5committest on amani, heiwa, and jam.
2010-11-23 17:56:59 -05:00
Jonathan Kim
ed45b7472e [svn-r19759] Purpose:
Fix compile error for Windows from previous checkin r19757.

Description:
    Previous log:
    Improve h5diff performance.
    The following changes for improving h5diff performance:
    1) use HDmemcmp() before comparing each elements 
       (memcmp() is very fast at both linew and jam)
    2) replace the expensive H5Tequals() calls
    3) retrieve datatype information at dataset level not each element level 
       for compound datasets


Tested:
 jam (linux32-LE), Windows
2010-11-11 11:51:59 -05:00
Jonathan Kim
40d56dd20c [svn-r19757] Purpose:
Improve h5diff performance.

Description:
    The following changes for improving h5diff performance:
    1) use HDmemcmp() before comparing each elements 
       (memcmp() is very fast at both linew and jam)
    2) replace the expensive H5Tequals() calls
    3) retrieve datatype information at dataset level not each element level 
       for compound datasets


Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2010-11-11 10:23:44 -05:00
Jonathan Kim
e45cfcb9ee [svn-r19712] Purpose:
Fixed h5diff to handle variable-length strings in a compound dataset 
    correctly. Also variable-length string array in a compound dataset.
    Bug #1989.
    

Description:
    Garbage values were displayed when h5diff compared variable-length 
    strings (or string array) in a compound type dataset. 


Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (Mac32)
2010-11-02 11:39:42 -05:00
Quincey Koziol
ba66540462 [svn-r19654] Description:
Bring Coverity revisions from branch back to trunk, and clean up some other
misc. compiler warnings also.

r19500:
Fix coverity items 1446 and 1447.  Moved up calls to memset in test_cont in
ohdr.c so the test never tries to close uninitialized locations.

r19501:
Fix coverity items 1398-1445.  Various uninitialized variable errors in fheap.c.

r19502:
Fixed coverity issue 579 and some additional warnings in the file as well.

r19503:
Bug fix: This fix addressed the "RESOURCE_LEAK" problems #789 and 790, run 26

r19504:
minor mods to try to keep coverity from flagging false positives.

r19505:
Fixed coverity issues 566 - 571.  Declared variables that are passed to functions that use them as arrays to be arrays of size 1.


Tested on:
    Mac OS X/32 10.6.4 (amazon) w/debug, production & parallel
    (h5committested on trunk)
2010-10-21 08:08:44 -05:00
Larry Knox
155b00d8ff [svn-r19506] Bring changes from revisions 19408, 19421, and 19442 from branches/hdf5_1_8 to trunk. These revisions reorganize the compile scripts using h5cc.in, h5fc.in, and h5c++.in, add checks for installed examples to the scripts that run them after installation, and add DESTDIR for install as needed for RPMs.
Tested on amani, heiwa and jam by h5committest and with CYGWIN.
2010-10-04 12:15:30 -05:00
Jonathan Kim
04a7315138 [svn-r19443] Purpose:
Fix for group comparison with exclude-path case. Use relative path.

Description:
 Related to "1890:  h5diff excluding object for file comparison via command line" checkins. (r19406)

Tested:
 jam, amani and heiwa
2010-09-20 17:11:50 -05:00
Allen Byrne
b4be8ae3d5 [svn-r19434] Correct use of lib, include, bin in INSTALL commands to use proper variables.
Tested: local linux
2010-09-20 15:38:35 -05:00
Allen Byrne
8394d611f2 [svn-r19418] On windows, an include bypassed the WIN32_LEAN_AND_MEAN define. Moved the define up. Moved the h5dif.h to after the h5private include
Tested: Windows
2010-09-17 13:05:32 -05:00
Jonathan Kim
eb7b5b2cef [svn-r19406] Purpose:
Add --exclude-path option

Description:
 Specified path to an object will be excluded from comparing the two files or two groups. If group is specified all the member objects will be excluded.
 Related to "1890:  h5diff excluding object for file comparison via command line"

Tested:
 jam, amani and heiwa
2010-09-16 16:46:16 -05:00
Jonathan Kim
c561dc7183 [svn-r19400] Purpose:
Fix for Bug1975 h5diff - support recursive comparison on group when specified as an object

Description:
 Compare member objects and groups recursively when two files or groups are specified to be compared. Support parallel diff and handling symbolic links accordingly.

Tested:
 jam, amani, heiwa
2010-09-16 12:48:06 -05:00
Larry Knox
47c792faa0 [svn-r19366] Updated autoconf to version 2.6.7, libtool to version 2.2.10, and m4 to version 1.4.14. Also added m4 directory for m4 macros according to autoconf suggestion.
Tested with h5committest on amani, jam, and heiwa, and on linew.
2010-09-10 10:45:07 -05:00
Allen Byrne
e65aa8c365 [svn-r19325] Added parallel build commands.
Corrected use/name of source folder aliases.
Duplicated FindMPI.cmake so that non-c++ compiler is found first (recommemded commands did not work).

Tested: local linux with mpich
2010-08-31 15:15:13 -05:00
Allen Byrne
5c549a6345 [svn-r19300] BZ 1958: Add h5dump xml tests to CMake support
Tetsed: local linux
2010-08-25 17:33:59 -05:00
Quincey Koziol
0cd7123fb6 [svn-r19292] Description:
Merge r19290 & r19291 from 1.8 branch to trunk:

r19290:
Correct another error in metadata accumulator dirty region calculations
(this time with a corner case when freeing data in the file).

r19291:
Avoid getting object information for soft/external links if we aren't
going to traverse across the link itself.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, w/threadsafe, in production mode
        Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode
        Mac OS X/32 10.6.4 (amazon) in debug mode
        Mac OS X/32 10.6.4 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
        Mac OS X/32 10.6.4 (amazon) w/parallel, in debug mode
2010-08-24 16:03:32 -05:00
Allen Byrne
f4c75504d4 [svn-r19262] Undo r19261. 2010-08-20 10:48:12 -05:00
Allen Byrne
4050bd2422 [svn-r19261] Remove unused variables and allocation
Tested: local linux
2010-08-20 10:38:15 -05:00
Quincey Koziol
2f6e3cb5be [svn-r19252] Description:
Bring Coverity changes from branch to trunk:

r19161:
Fixed the part for matching the subset info with dataset

r19189:
BZ1646: h5dump does not check number of dimensions for subsetting parameters against the dataset

Changed subset_t structure from holding hsize_t pointers to holding new subset_d pointers, which hold the original hsize_t pointer + len. this len is then checked against dataset ndims in the handle_dataset function of h5dump.

Changed all references to use new data structure.

Added tests for each subset parameter.

r19190:
Added new h5dump ddl files

Tested on:
    Mac OS X/32 10.6.4 (amazon) w/debug & production
    (h5committested on branch)
2010-08-19 14:55:48 -05:00
Quincey Koziol
54d5a565f9 [svn-r19237] Description:
Clean up misc. compiler warnings.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        Mac OS X/32 10.6.4 (amazon) w/C++ & FORTRAN, w/threadsafe,
                in production mode
        Mac OS X/32 10.6.4 (amazon) w/parallel, in debug mode
2010-08-12 16:11:00 -05:00
Allen Byrne
eee9ca47a1 [svn-r19202] [BZ1953]implementation for the proposed changes suggested by the "h5dump_output_option" RFC. This required that the region reference code be duplicated and reduced to allow the do_bin_output() function to understand region references. The container type-id also needed to be propagated into the do_bin_output() function and functions referenced (render_bin_output*).
Existing tests tested the binary function, so only one test was added to test the region reference generated file.
Tested: local linux
2010-08-09 13:15:37 -05:00
Allen Byrne
6d22b60931 [svn-r19183] Corrected h5repack verbose test for windows
Updated tools/lib source dir variable for source list

Tested: local linux
2010-08-06 12:53:52 -05:00
Quincey Koziol
7fe87a2472 [svn-r19153] Description:
Bring changes on Coverity branch back to trunk:

r19040:
Fixed coverity #440 - NULL check after dereference.  We moved the NULL check up
into the IF block and changed it to assertion.

r19041:
Maintenance: Addressed Coverity issues 441 and 449 by initializing proper
variables

r19042:
In function H5O_chunk_protect (H5Ochunk.c):
 - Initialize H5O_chunk_proxy_t pointers chk_proxy and ret_value.
 - Free chk_proxy on error.

r19043:
Addressed coverity issues 442 - 448 by initializing pointers to NULL.

Tested on:
    Mac OS X/32 10.6.4 (amazon) w/debug & production
    (Too minor to require h5committest)
2010-07-29 14:07:26 -05:00
Larry Knox
10a8b060ca [svn-r19059] Brought changes from hdf5_1_8 to add version information for fortran and c++ compilers in libhdf5.settings file and configure output (r18836), to install examples as part of make install (r18680), and to provide scripts to compile and run the examples after they are installed (r18817).
Tested with new/h5committest on amani, heiwa, and jam.
2010-07-08 21:52:14 -05:00
Jonathan Kim
af749bafb7 [svn-r19051] Purpose:
Add --no-dangling-links option to h5ls. 

Description:
Related to "Bug 1830 - Following an dangling external link in h5ls should set non-zero return code."
If --no-dangling-links option is specified and any dangling link is found, return exit code 1 (error).

Tested:
 jam, amani and heiwa
2010-07-07 13:52:04 -05:00
Jonathan Kim
a5ca9e6ba9 [svn-r18873] Purpose:
Rename '--follow-links' to '--follow-symlinks' 

Description:
    The '--follow-links' option is to follow symbolic links (soft and external).
    Make the name more intuitive and specific to the feature.

Tested:
    jam, amani and linew
2010-05-21 15:12:22 -05:00
Allen Byrne
80e6dfe3ba [svn-r18856] Added CPack commands for installtion program
Tested: local linux and Windows
2010-05-19 15:11:00 -05:00
Allen Byrne
a6698e571c [svn-r18816] Move progname and d_status functions from h5tools to h5tools_util
Tested:
    linux and windows
2010-05-14 16:54:59 -05:00
Allen Byrne
ae06433ab0 [svn-r18793] Add files to support building library with CMake
Tested: Local linux
2010-05-13 11:01:50 -05:00
Allen Byrne
68fa42f336 [svn-r18759] pull r18757 from 1.8 branch
Enable tools lib to be built as a dll on windows. Added two get/set functions for progname and d_status.
Also add windows import/export declarations to functions.
Updated error_mesg() and warn_mesg() to remove progname argument and use get functions

Tested:
   Windows, linux
2010-05-11 15:10:25 -05:00
Mike McGreevy
f0ecd71307 [svn-r18709] Purpose:
Improve configure's large-file support control.

Description:

    Modified configure to now attempt to add defines necessary for
    supporting largefiles on all systems, instead of solely on linux. This 
    is in response to user requests to enable largefile support on Solaris 
    by default, as well as to give extra control on AIX (instead of just 
    jamming the necessary flag into the config files).

    The old --enable-linux-lfs flag has been removed in favor of the 
    --enable-largefile flag (enabled by default), which can be used on all
    platforms.

    On systems where large files cannot be supported in this manner,
    configure will report as such.

Tested:

    h5committest
    AIX (NCSA's blue_print machine)
    duty, liberty, and linew.
2010-05-05 12:34:26 -05:00
Jonathan Kim
249acc0355 [svn-r18614] Purpose:
Fix for bug 1817 : h5copy fail to copy dangling link by specifying 
    link path directly

Tested:
    jam, amani, linew
2010-04-22 13:17:35 -05:00
Mike McGreevy
0cf2a97cfb [svn-r18579] Purpose:
Autotool Upgrade / Libtool Bug Fix

Description:

    Updated autotools referenced in bin/reconfigure as follows:

    Autoconf 2.64 --> Autoconf 2.65
    Automake 1.11 --> Automake 1.11.1
    Libtool 2.2.6a --> Libtool 2.2.6b-mcg

    The referenced libtool version is a custom version of 2.2.6b. It 
    has been tweaked to fix a bug in libtool that occurs
    when using PGI 10.0 compilers. A check incorrectly categorizes
    the C++ compiler as version 1.0 instead of 10.0, and the link
    line is subsequently set up incorrectly and fails to compile.

    A patch has been made available and will be included in the next
    release of libtool, but in the meantime I've applied the patch to a custom
    installation as indicated above. This bin/reconfigure now references
    the custom installation, and the resulting configure script will correctly
    categorize the PGI 10.0 C++ compiler.

    Ran bin/reconfigure to regenerate configure and makefiles.

Tested:

    jam and amani with PGI 10.0 compilers.
    h5committest
2010-04-15 16:17:22 -05:00
Quincey Koziol
3dd92875b2 [svn-r18548] Description:
Minor cleanups to compile with PGI C compiler 10.x.

Tested on:
    Linux 2.4/32 (jam) w/PGI 10.x C and F90 compilers
2010-04-12 21:09:48 -05:00
Jonathan Kim
8c9b42fcf3 [svn-r18425] Purpose:
Fix for bug1814 - NPOESS: h5repack doesn't handle references to the groups 
    as an element of a dataset 

Description:
    handles object reference to named-datatype as well.
    Add test cases.

Tested:
    jam, amani, linew
2010-03-18 16:38:09 -05:00
Jonathan Kim
ee757e449b [svn-r18273] Purpose:
bugzilla 1754: h5diff: support comparing through links.

Description:
    Fix incorrect (or hanging) behavior in parallel mode when specifying 
    invalid combination of command options. 
    (ex: -v and -q , --no-dangling-links without --follow-links)
    Add relate test case
    Update h5diffgentest.c due to add test files this and previous time

Note:
    svn #18266 (prior to this)
    svn #18164 (original check-in)

Tested:
    h5committest (jam, amani and linew)
2010-02-18 11:51:12 -05:00
Jonathan Kim
ad9e876b0c [svn-r18266] Purpose:
bugzilla 1754: h5diff: support comparing through links.
    (original check-in svn revision #18164)
Description:
    fix the hang issue in parallel mode when compare external-link.
    add --no-dangling-links option. 
    add test cases (#450-#459) relate to the new option.
    improve test script to check exit code.
    update --help relate to the new options.
    correct some indentations.

Tested:
    h5committest (jam, amani and linew)
2010-02-16 14:43:05 -05:00
Quincey Koziol
fd70b2afa8 [svn-r18197] Description:
Trim trailing whitespace from source code files with this command:

find . \( -name "*.[ch]" -or -name "*.cpp" -or -name "*.f90" \) -print |xargs -n 1 sed -i "" 's/[[:blank:]]*$//'

Tested on:
    None - eyeballed only
2010-01-29 23:29:13 -05:00
Jonathan Kim
98639557ac [svn-r18166] Purpose:
Take care of test case fail for h5repack from checkin (r18164)

Description:
    Previous checkin didn't allow h5diff to return succeed when a link's 
    target object doesn't exist. Changed it to succeed with warning.
    (Need to discuss related feature)

Tested on Jam
2010-01-25 19:20:16 -05:00
Jonathan Kim
79cd5838d1 [svn-r18164] Purpose:
Add a feature to compare through links. Relate to bugzilla report 1754.

Description:
    Currently, h5diff command only compares the name(path) of target object 
    not the actual data. With this feature, h5diff will go through the link(s) 
    and figure out the actual object at the end of the link and compare data 
    if exist. Internally we have hard-link, soft-link, external-link (as part 
    of user_defined-link). This feature will provide a user transparent 
    experience when comparing link objects as the user can specify any of 
    those 3 type of links to be compared in any combination.

Tested on Jam.
2010-01-25 16:43:48 -05:00
Quincey Koziol
bb25c85e79 [svn-r18159] Description:
Bring Coverity fixes from 1/22/10 session to trunk:

r18137:
219: Initialized hid_t to -1 and added close to error block.
189-191: Initialized line to NULL and added free line, and close fp to error block.

r18138:
19: Moved code block for printing that the number of enums is empty to the error block. (Would never have been executed otherwise)

r18139:
Fix coverity item 58.  Moved code related to displaying the parent of a repeated
group to the else(isRoot) section, as the root group has no parent.

r18140:
218: Initialized ret_value variable to -1. Because of throw Exception in default case of switch, the coverity problem would not have executed anyway. Good pratice is to initialize variables.

r18141:
Fix coverity item 92.  Added code to H5E_register_class to free cls in case of
an error.

r18142:
Fix coverity item 91.  Added code to H5E_create_msg to free msg in case of an
error.

r18143:
fixed issue 14,
took away "if" and used #ifndef_xxx.

r18144:
Fix coverity item 110.   Added code to H5Eget_minor to free msg_str in case of
an error.

r18145:
fixed coverity #18 removed "aligned", it is always NULL.

r18146:
Fix coverity item 109.   Added code to H5Eget_major to free msg_str in case of
an error.

r18147:
Fixed coverity #81 and #82, Check for bad pointer(s), but can't issue error, just leave

r18148:
Fix coverity item 97.   Added code to H5FD_fapl_open to free copied_driver_info
in case of an error.

r18149:
Fix coverity item 96.   Added code to H5FD_dxpl_open to free copied_driver_info
in case of an error.

r18150:
Fix Coverity issue #29: Protected cache_ptr dereferences with "if(pass)"
block

r18151:
Fix coverity item 93.   Added code to H5FL_fac_init to free factory and new_node
in case of an error.

r18152:
Fix coverity items 98 and 99.   Added code free allocated space in case of
error.

r18155:
124: Freed head pointer before jumping to done. There was no error handling block and normal exit used same path out.
120-123: Freed list of lists in error handling block.

r18156:
Fix coverity issues 179, 180, 181, 182, 183, 184, 186, 320, 407.  These were resource leak issues where allocated memory was not freed, generally in the case of tests that failed.

Tested on:
    Mac OS X/32 10.6.2 (amazon) debug & production
2010-01-23 02:00:00 -05:00
Jonathan Kim
3c5dc1a808 [svn-r18134] Purpose:
Additional fix relted to the fix of bug1672.

Description:
    The fix of bug1672 caused some changes of output which required modifying
    some test cases.  After some discussion, restoring the changes of the test 
    cases was decided.  After many experiments for the solution, this fix was 
    made so the code which improved performance can stay.

Tested on Jam.
2010-01-21 15:01:42 -05:00
Jonathan Kim
a988519ad0 [svn-r18126] Fix for bug1749: Incorrect code in diff() function for links compare 2010-01-20 16:03:22 -05:00
Quincey Koziol
066294e321 [svn-r18109] Description:
Bring r18076-18096 from hdf5_1_8_coverity branch to trunk:

r18076:
Correct Coverity issue #1 by removing dead code

r18077:
Fix coverity item 142.  When an error occurred while copying a linked list in
H5S_point_copy, the library would not free the partially allocated list.  Added
code to free the list in this case.

r18078:
Correct Coverity issue #2 by removing impossible to reach code.

r18079:
Correct #3 by removing impossible to reach code.

r18080:
Correct Coverity issue #4 by removing impossible to reach code.

r18081:
fix coverity 26 , check (dblik->parent) before calls H5HF_man_iblock_detach().

r18082:
Fixed coverity issues 321 and 316.
    321: freed sm_buf in error handling to remove resource leak. 
        Also set sm_buf to NULL after other instances in which 
        it is freed to prevent double free.
    316: initialized nmembs to 0.

r18083:
Correct Coverity issue #6 by removing debugging knob from error reporting code.

r18084:
Fix coverity item 269 + others.  When a error occurred in a function using the
h5tools error framework, the "past_catch" variable would not be set to true
because that statement was before the label that goto jumped to.  This could
cause a failure in the cleanup section to go back to the start of the section,
freeing variables twice, etc.

Moved the label infront of past_catch=TRUE.

r18085:
fixed coverity #27, check if (heap) before use heap->obj....

r18086:
fixed coverity #28, check curr_span not null before use it at if(curr_span &&
    (io_bytes_left==0 || curr_seq>=maxseq))

r18087:
Correct Coverity issue #7 by cleaning up correctly on error

r18088:
Correct Coverity #8 by removing unchanged variable checking code.

r18089:
Correct Coverity issue #9 - remove impossible to reach code.

r18090:
Correct Coverity issue #11 by removing impossible to reach code.  Also clean
up some minor style issues.

r18091:
Fix coverity items 314 and 318.  Changed the improper assertion of the return
value of a library function to a check, and a return(void) on failure.

r18092:
Fix coverity item 70.  Changed the improper assertion of the return value of a
library function to a check, and a return(void) on failure.

r18093:
Correct Coverity issue #12 by removing dead code.

r18094:
Correct Coverity issue #16 by removing debugging code.

r18095:
Fixed coverity issue # 271.

Removed redundant checking and freeing of sm_buf1 and sm_buf2.

r18096:
Correct Coverity issue #17 by refactoring test to remove dead code.

    Also, removed previous "coverity" statements in comments, we'll review
those issues again and see if we can figure them out, now that we have more
experience with Coverity.

Tested on:
    Mac OS X/32 10.6.2 (amazon)
2010-01-14 22:05:59 -05:00
Albert Cheng
22da4232a4 [svn-r18107] bug 1673:
The mixed use of RUNTEST (original) and RUNTESTS (new) caused
confusion. E.g., the timings in test/ was still using the old
$RUNTEST.  It made more sense to use $RUNTEST which is used
by the dejagnu feature of automake.  So, I changed all
$RUNTEST or $RUNTESTS to $RUNEXEC.

config/commence.am & config/conclude.am are the two files
that got changes. Also fixed an error in test/Makefile.am.
The rest are changed by bin/reconfigure.

Tested: h5committested.
2010-01-12 18:58:30 -05:00
Quincey Koziol
9b2c4bea02 [svn-r18011] Description:
Bring Coverity changes into the trunk: (also other minor cleanups)

r17991:
Fix Coverity items 175 and 176.  Fixed memory leak on error in print_enum in
H5LT.c.

r17993: (r17992 was not a Coverity change)
Close Coverity issue #206: inconsistently checking whether dt->shared was
non-NULL after H5T_alloc() returned a valid 'dt' value (which should guarantee
that dt->shared is valid).

r17994:
Fix Coverity item 149.  Fixed file handle leak on error in H5FD_stdio_open.

r17995:
Fixed Coverity issues 154 to 161:

 Added H5MP_close routine to error handling in the event *mp has not been
 freed before error.

r17996:
Close Coverity issue #126: potentially leaking merged_spans on routine failure.

r17997:
Fix Coverity items 147 and 148.  Fixed resource leaks on error in H5FDloc.c.

r17998:
Coverity issue 269-272:
    Added integer result variable to functions that could return negative.
        Assigned to unsigned after checking.
    Added H5E_BEGIN_TRY block around H5Tclose and removed H5E_THROW in the
        catch block.
    Checked buffer is NULL before free. Changed HGOTO_ERROR outside of the if
        block to H5E_THROW.

r17999:
Close Coverity issue #127: release temporary spans in more generic manner.
(Also add error checking to previous fix)

r18000:
Resolved Coverity issues 211 and 212 in H5T.c. Added comments to ignore
Coverity warning regarding not checking pointer for NULL, as we are using
an assert which catches the issue.

r18001:
Fix Coverity item 146.  Fixed resource leak on error in H5O_layout_copy.

r18002:
Fix Coverity items 143 and 145.  Fixed resource leaks on error in
H5D_compact_copy and H5D_contig_copy.

r18003:
Close Coverity issue #192: close file on error

r18004:
Fix Coverity issue #125: release temporary spans on error

r18005:
Resolved Coverity issues 5, 25, and 83 (in H5T.c):

    Separated embedded functions in order to check for NULL on return of
        H5I_object before passing into H5T_copy.

    Check to see if new_dt is NULL within error handling before
        dereferencing it.

    Ignore Coverity's dead code warnings as the checks that lead to the code
        are machine dependent.

r18006:
Coverity 63,70,73:  Checked result of function before assigning to an unsigned
variable.

r18007:
Coverity 78,79:   added continue statement if H5Pget_filter2 returns negative.

r18008:
Fixed Coverity issue # 138:

    Added support in error handling to free dst pointer (if allocated) on error.

r18009:
Whitespace & coding style cleanup
2009-12-13 00:28:30 -05:00
Quincey Koziol
037dac6997 [svn-r17981] Description:
Abstract "print header" code into separate routine.

Tested on:
    Mac OS X/32 10.6.2 (amazon) w/debug
    (too minor to require h5committest)
2009-12-10 08:43:25 -05:00
Quincey Koziol
fb1059e507 [svn-r17953] Description:
Bring Coverity changes into the trunk:

r17877:
Error 266: Uninitialized memspace set to -1. Changed malloc and free to HDmalloc and HDfree. Removed unused dtype var.

r17878:
Error 265: Uninitialized mem_space set to -1. Changed malloc and free to HDmalloc and HDfree. 
Error 267: Uninitialized smspace set to -1. Changed malloc and free to HDmalloc and HDfree.

r17879:
Error 242: Uninitialized aid set to -1. 
Error 243: Uninitialized sid set to -1. 
Uninitialized tid set to -1 for consistency

r17880:
Error 242: reinitialized aid to -1 after close to be ready for reuse. 
Error 243: reinitialized sid to -1 after close to be ready for reuse. 
reinitialized tid to -1 for consistency after close to be ready for reuse.

r17881:
use valgrind to check there is a memory leak. The fix is to free ptrstr in line 5838 at xml_dump_group() of h5dump.c after it is used. run the valgrind after the fix, no memory leak for that part of the code.

r17882:
Fix Coverity items 256 and 269.

r17883:
Error 222-230: initialized hid_t vars to -1 after close to be ready for reuse. 
Also added H5Tclose for tid in gent_bigdims

r17884:
Bug fix (Coverity run2, view 23, dead code)
(this is pair-program done by Albert, Elena and Larry).

Confirmed and fixed the deadcode in hyperslab read branch of function
diff_datasetid.
(Discovered other bad code that diff_datasetid() should be recoded.  
Bug 1693 is entered for this.)

r17906:
Fix Coverity item 260.

r17907:
262: Initialized hid_t's dtype, dtype_tmp and file to -1. Initialized H5T_t * dt to NULL.

r17908:
Fix Coverity item 261.

r17909:
Fix Coverity item 248.

r17910:
Revise fix for Coverity item 248.

r17911:
Resolved coverity issues #s 263, 162, 163, 164. All issues in dsets.c. Initialized fid and did hid_t's. filter_corrupt function was returning in the middle of an if statement, bypassing free calls. Updated error handling to free buffers and hid_t's appropriately.

r17912:
(done by Larry and Albert)
Cleanup Coverity view warnings (#231-241) about
using uninitialized variables.  Initialized all
of them.

r17913:
Resolved issue 251 and 264. Initialized tid2 to -1 and initialized buffers that were freed in case of an error.

r17914:
Resolved coverity issues 66, 220, and 221: 

66: Negative Return assignment ignored

220,221: Initialized hid_t's.

r17915:
Fix Coverity item 247.

r17916:
Fix Coverity item 246.

r17917:
Fix Coverity item 245.

r17918:
Fix Coverity item 244.

r17919:
Coverity Issue #84: Moved asserts in H5T_cmp to the top of the function, and converted them to HDassert. Coverity complaining about using potentially NULL pointer without checking it. Want to see if Coverity will accept Assertions as acceptable checking before using the value. 

Tested on:
    FreeBSD/32 6.3 (duty) in debug mode
    FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
    Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
        w/C++ & FORTRAN, w/threadsafe, in debug mode
    Linux/64-amd64 2.6 (smirom) w/Intel compilers, w/default API=1.6.x,
        w/C++ & FORTRAN, in production mode
    Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
        w/szip filter, in production mode
    Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
        in production mode
    Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
    Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
    Mac OS X/32 10.6.2 (amazon) in debug mode
    Mac OS X/32 10.6.2 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
2009-12-03 14:11:29 -05:00
Jonathan Kim
77b493eea3 [svn-r17938] Purpose:
Fix potential problem similar to Bug1672 (getting garbage values)

Description:
    This will resolve the potential problem like Bug1672 when comparing 
    attributes. It improves the performance by not calling diff_array 
    twice. (diffing time in half). Little clean up on comment lines.
    Refer to the Bug fix 1672. (also svn revision 17905 on trunk) 
	
Tested on:
    linux32 (jam) , linux64 (almani), solaris (linew)
2009-11-30 16:25:41 -05:00
Jonathan Kim
8bcc914263 [svn-r17905] Purpose:
Fix Bug1672 - Display garbage value on LE machine for BE data.

Description:
	Casuing by calling diff_dataset twice when -r or no option was given.
	Change to call it once which fix the problem. 
	It also improves the performance. (diffing time in half)
	According further test, it also occurred on BE machine as well and it 
	seems occruing only with the BE data attached to Bugzilla. 
	Don't know how the file was created. Anyway this fix will prevent 
	from diffing with garbage values in similiar potential case. 
	
Tested on:
	linux32 (jam) , linux64 (almani), solaris (linew)
2009-11-20 13:56:01 -05:00
Peter Cao
a8aa10bd21 [svn-r17680] Use absolute comparison for use-system-epsilon and default option. 2009-10-19 09:50:02 -05:00
Mike McGreevy
7ec079a515 [svn-r17616] Purpose:
CFLAGS overhaul

Description:

    Modified the way configure handles CFLAGS.

    (note: all changes also apply to FCFLAGS, CXXFLAGS, CPPFLAGS, and LDFLAGS).

    1. The configure process will now always preserve a user's CFLAGS
    environment variable setup. Any additional flags necessary for compilation
    added at configure time will be passed into the Makefiles as AM_CFLAGS,
    which is an automake construct to be used in addition to CFLAGS.

    This will allow a user to have the final say, as CFLAGS will always appear
    later in the compile line than AM_CFLAGS. Additionally, setting CFLAGS
    during make will no longer completely erase all flags set by configure,
    since they're maintained in AM_CFLAGS.

    2. Additionally, where possible, flags previously being assigned directly
    into CFLAGS (and thus propagating into h5cc) have now been redirected into
    H5_CFLAGS, so they're used ONLY for compiling hdf5, and not embedded into
    the h5cc wrapper script as well.

    *Note that H5_CFLAGS ultimately is assigned into AM_CFLAGS for use in the
    Makefiles. Complete description of changes and build process will be
    included in a Configure Document that Elena and I are working on.

    3. Removed unsupported config files. This includes:

       config/dec-osf*
       config/hpux11.00
       config/irix5.x
       config/powerpc-ibm-aix4.x
       config/rs6000-ibm-aix5.x
       config/unicos*

     4. Modified configure summary to display additional values. Specifically,
     appropriate AM_* variables are being shown, as well as H5_FCFLAGS and
     H5_CXXFLAGS, which were for some reason not already present.

Tested:

    - H5committest
    - Tested on all THG / NCSA machines, using several combinations of the more
      prominent configure options (c++, fortran, szip, threadsafe, parallel,
      et cetera). (Thanks to Quincey for rysnc testing setup!)
    - With regards to new automated testing, anything *necessary* for
      compilation will be caught by the daily tests as it stands now. (i.e.,
      if LDFLAGS is not properly set when szip is used, linking will fail).
      Additionally, with regards to which flags get into h5cc, if any
      *necessary* flags have been improperly removed, then daily tests should
      fail during make installcheck. Additional machine-specific desired
      behaviors and/or checks may have to be set up separately within the
      daily tests, so this is something to work on.
2009-10-08 10:17:30 -05:00
Allen Byrne
98f6b609ad [svn-r17566] Fix for Bug 1562. H5DSis_attached needed to account for platform dependent types. Added test and test files for LE and BE dimension scales. Reworked part of test_ds file as part of debug.
Added missing H5Tclose in region reference routines.
H5DS.c checked for other locations which need to account for platform dependent types in dealing with ds_list_t. Added generator program for test files of LE and BE dimension scales.

Tested: local linux, h5committest
2009-10-01 11:17:17 -05:00
Quincey Koziol
74c6507d9f [svn-r17518] Description:
Bring most of Vailin's changes to the fixed array data structure back
to the trunk, including new regression test for data structure.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
        Mac OS X/32 10.5.8 (amazon) in debug mode
        Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
2009-09-24 15:30:47 -05:00
Allen Byrne
d00707bf11 [svn-r17492] Moved printing of brackets before printing contents of region references.
Changed default Error handling init to successful as all error macros set the return to failure

Tested: local linux
2009-09-17 15:31:44 -05:00
Allen Byrne
cd3c2dea7b [svn-r17477] Corrected use of ERROR macro H5E_LEAVE to H5GOTO_DONE.
Tested: local linux
2009-09-14 16:48:32 -05:00
Allen Byrne
43db823044 [svn-r17475] Added error handling to h5dump and region reference handling functions in the tools lib. Bring back from NPOESS. Added missing tests to h5dump test script for region references.
Tested:   local linux
2009-09-14 14:52:42 -05:00
Peter Cao
5f3a7254c1 [svn-r17466] " Use strict equality as default
"   Use "--use-system-epsilon" for system EPSILON
"   Use "-p" or "-d" for whatever user's choice of epsilon
"   Use "-p 0" or "-d 0" for strict equality (same as default)
2009-09-11 15:09:34 -05:00
Allen Byrne
1cad9f4751 [svn-r17456] Added dataspace type check for region, changed dimension_break processing to use boolean.
Tested:
    local linux
2009-09-08 09:51:59 -05:00
Quincey Koziol
eae58095d0 [svn-r17455] Description:
Correct a 'hsize_t *' to 'hsize_t' and vice versa.

Tested on:
    Mac OS X/32 10.5.8 (amazon) in debug mode
    Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
    (too minor to require h5committest)
2009-09-08 08:03:38 -05:00
Allen Byrne
c7590ca38e [svn-r17450] Bring h5dump single subsetting selection and region reference changes from NPOESS
Tested: local linux smirom
2009-09-04 09:50:13 -05:00
Mike McGreevy
4598a59f86 [svn-r17345] Purpose:
Updating autotools

Description:

    Installed new autotools and used them to reconfigure HDF5.

    - Automake upgraded to 1.11
    - Autoconf upgraded to 2.64
    - bin/reconfigure script edited to use new versions (on jam), and
      run to generate new configure script and Makefile.in's.
    - configure.in script edited to add "_cv_" to all AC_CACHE_VAL strings
      (in order to comply with new autoconf standard).
    
Tested:

    Tested on machines jam, smirom, liberty, linew.
    Tested w/ features c++, fortran, parallel.
    Tested w/ compilers gcc, pgcc, icc.

    Further testing via Daily Tests should catch any other outliers. Upon
    passing DT's, I'll propogate the new tools into 1.8, hdf4, et cetera.
2009-08-12 13:55:25 -05:00
Peter Cao
a6676de3c8 [svn-r17254] Fixed Bug 1563 - h5diff and Infinity
Added test cases
2009-07-28 14:40:18 -05:00
Allen Byrne
f5be06c397 [svn-r17211] The function h5tools_str_append() incorrectly used the trio of functions: va_start(), HDvsnprintf(), and va_end(). When the boundary of the string buffer was reached and resized, the HDvsnprintf() function recalled without the other two functions in the code loop. This usage exposed bug 1520 by a user.
Tested: linux
2009-07-21 14:44:54 -05:00
Pedro Vicente Nunes
aad47d8e8b [svn-r17052] Add a run to the h5repack shell script to read a family file
The file used for input is located in the common source tools for testfiles, in tools/testfiles
Modified the h5repack shell script to read files from this location (h5repack reads its input files from a dedicated testfiles location in h5repack/testfiles)
Changed the h5diff open file call to use h5tools_fopen, so that it can open all file drivers

Tested: windows, linux, solaris
2009-06-15 14:05:42 -05:00
Pedro Vicente Nunes
358f18543f [svn-r16991] change messages of -c option
tested: windows, linux
2009-05-28 16:31:57 -05:00
Pedro Vicente Nunes
b75740341f [svn-r16964] bug fix: the phrase "Not comparable" was not being printed for the case of different classes
tested: windows, linux
2009-05-20 09:07:22 -05:00
Pedro Vicente Nunes
c60f5a8429 [svn-r16810] added the words "Not comparable" in the not comparable messages
tested: linux
2009-04-20 15:59:40 -05:00
Mike McGreevy
bc36a358d1 [svn-r16792] Description:
- Updated bin/reconfigure to use latest version of automake (1.10.2). 
      Re-generated Makefile.in's by running bin/reconfigure.

    - Added libtool version numbers to c++, fortran, hl, hl c++, and hl fortran
      libraries.

Tested:

    jam, liberty, smirom
2009-04-20 01:00:11 -05:00
Pedro Vicente Nunes
ceffce7203 [svn-r16785] added missing test and compare cases inside compounds for nan
tested: linux
2009-04-18 15:55:24 -05:00
Neil Fortner
a4aae55760 [svn-r16698] Purpose: Fix bug 503
Description:
Changed Skip list package to use a deterministic skip list.  This allows the
skip list package to avoid calling rand() and srand(), even on machines without
rand_r().  There is no longer a p-value or maximum level for skip lists.

Tested: jam, smirom, linew (h5committest)
2009-04-08 12:02:09 -05:00
Pedro Vicente Nunes
972a1bba5d [svn-r16629] removed a h5dump test (array type) that has a different bogus output in frebsd (liberty)
removed  the call to the file generation in the test generation program
removed the binary h5 and ddl from svn

tested: linux
2009-03-30 16:47:29 -05:00
Pedro Vicente Nunes
bd1fe8cd74 [svn-r16614] 3. #1501 (B1) tools bug if dataset is larger than H5TOOLS_BUFSIZE limit.
ISSUE : the tools use the following formula to read by hyperslabs: hyperslab_size[i] = MIN( dim_size[i], H5TOOLS_BUFSIZE / datum_size) where H5TOOLS_BUFSIZE is a constant defined of 1024K. This is OK as long as the datum_size does not exceed 1024K, otherwise we have a hyperslab size of 0 (since 1024K/(greater than 1024K) = 0). This affects h5dump. h5repack, h5diff
SOLUTION: add a check for a 0 size and define as 1 if so. 
TEST FOR H5DUMP: Defined a case in the h5dump test generator program of such a type (an array type of doubles with a large array dimension, that was the case the user reported).  Since the written file commited in svn would be around 1024K, opted for not writing the data (the part of the code where the hyperslab is defined is executed, since h5dump always reads the files). Defined a macro WRITE_ARRAY to enable such writing if needed. Added a run on the h5dump shell script. Added 2 new files to svn: tools/testfiles/tarray8.ddl, tools/testfiles/tarray8.h5. NOTE: while doing this I thought of adding this dataset case to an existing file, but that would add the large array output to those files (the ddls). The issue is that the file list is increasing.
TEST FOR H5DIFF: for h5diff the check for reading by hyperslabs is H5TOOLS_MALLOCSIZE (128 * H5TOOLS_BUFSIZE) or 128 Mb. This makes it not possible to add such a file to svn, so used the same method as h5dump (only write the dataset if WRITE_ARRAY is defined). As opposed to h5dump, the hyperslab code is NOT executed when the dataset is empty (dataset is not read). Added the new dataset to existing files and shell run (tools/h5diff/testfiles/h5diff_dset1.h5 and tools/h5diff/testfiles/h5diff_dset2.h5 and output in tools/h5diff/testfiles/h5diff_80.txt).
TEST FOR H5REPACK: similar issue as h5diff with the difference that the hyperslab code is run. Added a run to the shell script (with a filter, otherwise the code uses H5Ocopy). 

tested: linux (h5commitest failed , apparently it did not detect the code changes in /tools/lib that fix the bug: the error in an assertion in the hyperslab of 0. I am sure that making h5ccomitest --distclean will detect the new code , but don't want to wait more 3 hours :-) )
2009-03-25 15:28:50 -05:00
Mike McGreevy
893b8bffee [svn-r16561] Purpose:
Bug Fix

Description:

    Fixing BZ #1381. The --includedir=DIR configure option, which is used
    to specify the installation location of C header files, did not work
    correctly as the path was hard-coded in config/commence.am. I'm presuming
    this is because an older version of automake didn't know where to put
    c header files. In any case, removing this line now defaults the includedir
    to the same directory that it is currently hard-coded to, and also fixes
    the configure flag to allow customization of this value.

Tested:

    jam, liberty
2009-03-10 16:01:50 -05:00
Pedro Vicente Nunes
f8c5384aa5 [svn-r16518] have 2 expected outputs for 2 h5ls runs depending if run on a big or little endian machine. Configure.in was modified to export a variable carrying endianess information to testh5ls.sh. This script then compares the current run with 2 expected outputs, one for a big-endian machine (linew was used to generate the output), other for little endian (jam was used to generate the output)
the way h5ls prints types, it starts searching for NATIVE types first. One solution would be h5ls not to detect these native types, using for example the same print datatype function that h5dump does, that would make the output look the same on all platforms  ("32-bit little-endian integer" would be printed instead).  Drawback, this "native" information would not be available. Other solution is to have not one but 2 expected outputs and make the shell script detect the endianess and compare with one output or other
tested: h5committest
2009-02-26 15:21:50 -05:00
Pedro Vicente Nunes
11e7897d32 [svn-r16502] bug fix: a comma accidently left on a conditional typedef was causing compilition error on AIX
tested: h5commitest
2009-02-20 16:07:34 -05:00
Pedro Vicente Nunes
1357f1a25b [svn-r16501] remove a strange character from a comment
tested: h5committest
2009-02-20 14:40:53 -05:00
Allen Byrne
5d69e87ff0 [svn-r16489] Fixed bug #1459 by eliminating the macro long_long and replacing all instances with long long.
Tested:
   h5comittest
   fedora 10 x64
   Vista 32, VS2005, IVF101
   XP32, Cygwin
2009-02-18 15:02:05 -05:00
Pedro Vicente Nunes
96a0892ba8 [svn-r16461] Bug fix: for compound types, the not comparable test for members was not done
Solution: for compound types, recursively apply that check
Two new cases are added
1) the compound type has a different number of members. Message printed is
<obj1> has X members <obj2> has Y members
Where X and Y are the number of members of each compound type being compared
2) the compound type has not comparable types (for example a double and an int at the same index)
In this case the message
Comparison not possible: object1 is of class1 and object2 is of class2
Is replaced with
Comparison not possible: object1 has a  class1 and object2 has a  class2
Modified the test generator program to have these 2  cases
Added a shell run for these 2  cases


Tested: windows, h5committest
2009-02-11 10:57:25 -05:00
Pedro Vicente Nunes
9a298fd1dd [svn-r16373] replaced some printf statements with parallel_print
tested: linux serial and parallel
2009-01-29 13:58:36 -05:00
Pedro Vicente Nunes
a6dcbd6a0f [svn-r16358] bug fix
a new line was not inserted at the end of output, causing diff to complain between linux and frebsd

tested: linux , freebsd
2009-01-27 10:33:17 -05:00
Pedro Vicente Nunes
85a1c5c273 [svn-r16352] bug fix: some printf calls instead of parallel_print made some tests to fail
tested: linux parallel
2009-01-27 08:48:04 -05:00
Pedro Vicente Nunes
120350c395 [svn-r16348] #1368 (E1) h5diff: implement "not comparable" messages. Implemented RFC. The new option is <-c, --compare List objects that are not comparable>
added some test cases

tested: windows, linux
2009-01-26 14:29:22 -05:00
Frank Baker
5393933154 [svn-r16340] Description:
Changed 'THG' to 'The HDF Group' in various HDF5 source files,
        most of which are <subdirectory>/COPYING.
    -- Closes Bugzilla entry 1403.
2009-01-22 15:53:59 -05:00
Pedro Vicente Nunes
60ab04d383 [svn-r16319] add conditinal nan detection to some missing places
tested: windows, linux
2009-01-14 16:37:25 -05:00
Pedro Vicente Nunes
108699a7a8 [svn-r16300] Added an option to avoid dealing with NaNs
-N, --nan               Avoid NaNs detection
Note: there is no shell script run for datasets with NaN because the output is non portable (different results and NaN strings for different systems)

Tested: windows, linux
2009-01-13 11:33:31 -05:00
Pedro Vicente Nunes
5b7de16d6a [svn-r16217] Bug fix
PG compiler complains about array out of bounds (a rank of zero was not checked)
Adding a scalar dataset to the test generator program. this case is run on a previous existing run, the case was added to 2 existing files

Tested: windows, linux
2008-12-23 09:56:13 -05:00
Pedro Vicente Nunes
2eefe0be2e [svn-r16030] updated some comments regarding a function change regarding h5diff return value (not done for 1.8)
* Pedro Vicente, pvn@hdfgroup.org, Nov 4, 2008
 *    Compare the graph and make h5diff return 1 for difference if
 * 1) the number of objects in file1 is not the same as in file2
 * 2) the graph does not match, i.e same names (absolute path)
 * 3) objects with the same name are not of the same type
2008-11-04 16:11:45 -05:00