Commit Graph

774 Commits

Author SHA1 Message Date
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
Pedro Vicente Nunes
8a0b098fdb [svn-r16024] For scalar string datasets print the character position when a difference is found instead of a non-existing array position
Tested: windows
2008-11-03 21:44:40 -05:00
Pedro Vicente Nunes
8f00f520ff [svn-r15991] Merge with 1.8 rev 15969
Introduced a new feature in the tools library regarding command line parsing
In the definition of arguments, an "*" means that the switch can or can not have an optional argument. This "*" is put in the code regarding the letter definition, and it is transparent to the user (e.g b* instead of the previous b: ), where ":" notes a required argument after the letter (and no ":" or "*" notes no argument, mandatory)
Used for the h5dump binary option -b
It can be now
1)	-b (defaults to NATIVE)
2)	- b NATIVE
3)	- b FILE
4)	-b LE
5)	-b BE
Note: the keyword NATIVE replaces MEMORY
This feature (-b with no argument) was tested with the sequence of h5dump to binary (NATIVE) then h5import to generate an HDF5 file from the binary file and h5diff to compare the 2 HDF5 files
Tested: linux
2008-10-29 15:11:51 -05:00
Pedro Vicente Nunes
61af8db951 [svn-r15990] Merge with 1.8 rev 15967
regarding the return value of h5diff (0, no difference in files, 1 difference )
    objects with the same name must be of the same type
tested: linux
2008-10-29 15:01:38 -05:00
Pedro Vicente Nunes
840c6e34d3 [svn-r15989] Merge with 1.8 up to rev 15945
Regarding use of unsigned long long print format

Tested: linux
2008-10-29 14:56:24 -05:00
Pedro Vicente Nunes
13294e2042 [svn-r15988] Merge with 1.8 up to rev 15871
Regarding h5diff, h5copy

Tested: linux
2008-10-29 14:47:50 -05:00
Pedro Vicente Nunes
e636e152ea [svn-r15987] Merge with 1.8 rev 15871
Eliminate -c option and make that behavior the default and return 2 instead of -1 on error status

tested: linux
2008-10-29 14:29:25 -05:00
Pedro Vicente Nunes
b7dc9a06b3 [svn-r15977] merge rev 15866 from 1.8 branch into trunk (diffs for unsigned long long)
tested: windows, linux
2008-10-28 14:13:42 -05:00
Mike McGreevy
a664274624 [svn-r15942] Purpose: Bug Fixes and Libtool Upgrade
Description:
     - Remove need to set LD_LIBRARY_PATH when using shared szip library.

     - Libtool 2.2.6a is now used to generate libraries.

     - 'make check install' dependency bug is fixed, and should no longer
       break the build. 
  
     - removed hard coding of shell in config/commence.am, as this causes
       problems on Solaris with the new version of libtool.
   
     - RELEASE.txt with appropriate changes.

Tested:
     - kagiso, smirom, linew (merged from 1.8, pretty quick tests)
2008-10-24 12:19:34 -05:00
Neil Fortner
ad28fa5b0c [svn-r15886] Purpose: Close bug 1332
Description: Improved external link traversal of h5dump.  h5dump will now
    properly avoid all cycles, even those spanning multiple files.  Improvement
    to the output of committed datatypes.  Committed datatypes are now checked
    for uniqueness (like other objects).  Tests added for these cases.

Tested: kagiso, linew, smirom (h5committest)
2008-10-15 22:52:16 -05:00
Neil Fortner
6d28e06f30 [svn-r15668] Purpose: Add feature requested in bug #1282
Description: Adds capability to h5ls to traverse external links when the -r
(recursive) option is given.  Changes to the way absolute path names are patched
in h5trav.c.  Changes to the way recursive traversal starting from a non-root
group is handled (which also fixes some preexisting issues).  Tests added for
these cases.

Tested: kagiso, smirom, linew (h5committest)
2008-09-21 13:35:43 -05:00
Quincey Koziol
bdd7d59902 [svn-r15628] Description:
Remove trailing whitespace from C/C++ source files, with the following
script:

    foreach f (*.[ch] *.cpp)
        sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f
    end

Tested on:
    Mac OS X/32 10.5.5 (amazon)
    No need for h5committest, just whitespace changes...
2008-09-16 10:52:51 -05:00