Commit Graph

357 Commits

Author SHA1 Message Date
Quincey Koziol
ee383d182f [svn-r17553] Description:
Bring general fixes/improvements from file_free_space branch back to
trunk.

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 production 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-29 15:08:01 -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
Quincey Koziol
9d27b9765a [svn-r17313] Description:
Bring back various minor code cleanups from the file free space branch

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 (kagiso) 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 production 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-08-10 12:08:27 -05:00
Quincey Koziol
e99906f517 [svn-r17268] Description:
Bring r17266 from 1.8 branch to trunk:

    Clean up various compiler warnings from IRIX64 build

Tested on:
    Mac OS X/32 (amazon) debug & production
    (yes, I know it's not an IRIX64 system :-)
    Too minor to require h5committest
2009-07-29 20:59:24 -05:00
Mike McGreevy
6a00b1b6ff [svn-r17228] Purpose:
Fix BZ #1583

Description:

    The --enable-static-exec flag was broken. Configure was adding the 
    -all-static linker flag to an environment variable which was subsequently
    never used. (looks like it was used in 1.6 Makefile.ins, but never
    moved to 1.8's Makefile.ams when we added automake support).

    To fix, I've added this environment varibale to the link lines of all the
    tools. Now, when --enable-static-exec is invoked, it will correctly
    generate statically linked executables in the installed bin directory.

Tested:

    I've tested manually to ensure that the generated execs are static when
    the flag is used and dynamic when not. I've also tested when szip is
    used, as this was a use case mentioned in the bug report.

    Also: ran full tests with make check on jam and smirom for good measure.
2009-07-23 15:04:18 -05:00
Pedro Vicente Nunes
98d6ce7de1 [svn-r17076] bug fix: h5repack was not applying a requested contiguous layout for a dataset with filters
added a test to the C program test (not to the script), that verifies the layout and filters

tested: windows (development and tested manually) , linux, solaris
2009-06-17 13:32:04 -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
Mike McGreevy
bfc195feba [svn-r16844] Description:
Adding dependency to h5repack test script.

    h5repack.sh needs h5repacktst to run first.

Tested:

    Problem only appeared on Glory, but tested the dependence
    manually on jam by trying to run only the script and checking
    that it first ran the h5repacktst test program.
2009-04-22 16:57:17 -05:00
Neil Fortner
6d13b7a243 [svn-r16800] Purpose: Fix bug 1516
Description:
h5repack previously would not take named datatypes into consideration when copying
datasets and attributes.  This would cause extra anonymous datatypes in the target file
at best, and cause errors halfway through the repacking at worst.  h5repack should now
always handle named datatypes correctly.  Named datatypes are also now converted to the
native type when -n is given.

Tested: jam, linew, smirom (h5committest)
2009-04-20 11:37:47 -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
cade98122a [svn-r16671] fix compiler error on a missing "static" declaration
tested: linux
2009-04-06 09:54:54 -05:00
Pedro Vicente Nunes
ced8683011 [svn-r16663] cleaned compiler warnings in linux
tested: linux
2009-04-03 10:32:18 -05:00
Pedro Vicente Nunes
443e2e355a [svn-r16656] #1402 (B1) h5repack does not preserve creation order indexing.
ISSUE : h5repack does not handle group creation order flags. 
ACTION: call H5P(g)(s)et_link_creation_order functions when handling groups, add new groups with these flags to the test generation program, and verify results in the test program. 
TEST: in the test program, function that compares property lists, added code to verify groups

tested: windows, linux, solaris
2009-04-02 15:17:10 -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
Quincey Koziol
b4ff3e6e79 [svn-r16560] Description:
Remove another call to H5E_clear_stack() from within the library.

    Clean up lots of compiler warnings.

Tested on:
    Mac OS X/32 10.5.6 (amazon)
    (followup on other platforms forthcoming)
2009-03-10 14:00:39 -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
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
Quincey Koziol
348c380e3f [svn-r16401] Description:
Correct error introduced in r16353 with layout version, and add test
so it gets caught earlier.

Tested on:
	FreeBSD/32 6.3 (duty)
	Too minor to require h5committest
2009-02-02 20:41:51 -05:00
Pedro Vicente Nunes
164ecb187f [svn-r16301] Add a mention to the usage that the default minimum size for compression is 1024 bytes
M - is an integer greater than 1, size of dataset in bytes (default is 1024)

#bgz 1426

tested: windows, linux
2009-01-13 16:03:45 -05:00
Pedro Vicente Nunes
5508fda3b8 [svn-r16114] remove commented code
tested: windows, linux
2008-11-21 14:51:43 -05:00
Pedro Vicente Nunes
b067b416b2 [svn-r16112] #1375. Define a default chunk whose size is manageable. Defined currently as the same size of hyperslab (that compares the dimension sizes against a predefined constant size and chooses the minimum between the two)
Tested : linux, windows
2008-11-21 10:39:06 -05:00
Pedro Vicente Nunes
0b56bcc1f3 [svn-r15993]
Merge with 1.8 rev 15985
reorganized the code to deal with deprecated -i -o for in/out files to avoid duplicated code
Tested: linux
2008-10-29 15:19:22 -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
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
Pedro Vicente Nunes
2e9986a01e [svn-r15792] Bug fix. When detecting the user requested filters, the "all" option was not taken in consideration when printing the compression ratio
Tested: windows, linux
2008-10-06 15:52:44 -05:00
Pedro Vicente Nunes
1d625572d3 [svn-r15721] Added a file with user block data to be used by the h5repack windows shell script only Note: for the unix shell script this file is not used 2008-09-29 14:02:20 -05:00
Pedro Vicente Nunes
d0859bb174 [svn-r15678] formatted code
tested: windows, linux
2008-09-22 13:40:38 -05:00
Pedro Vicente Nunes
205b9019cf [svn-r15664] fix comments
tested: linux
2008-09-19 15:06:17 -05:00
Pedro Vicente Nunes
6eb624a09d [svn-r15653] cleaned warnings
tested: windows, linux
2008-09-18 13:08:04 -05:00
Pedro Vicente Nunes
fffa1adc9a [svn-r15652] Cleaned compiler warnings
Bug fix: do not print print compression ratio when the requested filter is NONE

Tested: windows, linux
2008-09-18 11:06:28 -05:00
Pedro Vicente Nunes
c3b40626a0 [svn-r15650] Cleaned compiler warnings
Bug fix: change the options block size variable from int to hsize_t, to match the H5Pset_userblock call

Tested: windows, linux
2008-09-18 09:44:21 -05:00
Pedro Vicente Nunes
efb5075937 [svn-r15643] add a failure condition of writing user block
Tested: windows, linux
2008-09-17 11:14:35 -05:00
Pedro Vicente Nunes
80693ba5de [svn-r15636] formatted code
tested: windows, linux
2008-09-16 15:37:45 -05:00
Pedro Vicente Nunes
2cd16f4c74 [svn-r15635] add info regarding user block to usage
tested: windows, linux
2008-09-16 14:49:43 -05:00
Pedro Vicente Nunes
54e35b67cf [svn-r15634] Add a default user block size of 1024 when none is given
Tested: windows, linux
2008-09-16 14:42:51 -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
Pedro Vicente Nunes
42e4838163 [svn-r15557] bug fix: the -m flag add a long description of "--threshold" that was changed to "--minimum" because "--threshold" now refers to the threshold parameter for H5Pset_alignment
tested: linux
2008-08-29 15:06:10 -05:00
Pedro Vicente Nunes
cf05c2d762 [svn-r15556] Check options for H5Pset_alignment.
threshold is zero default (a valid value) but zero is not a valid alignment

tested: windows, linux
2008-08-29 14:54:21 -05:00
Pedro Vicente Nunes
f384b17625 [svn-r15551] 1) There are 2 new command line parameters for h5repack. Together they allow a call to H5Pset_alignment to be made
-t T, --threshold=T     Threshold value for H5Pset_alignment
   -a A, --alignment=A     Alignment value for H5Pset_alignment

2) bug fix
the printing of the dataset name was not done for references (verbose mode)

tested: windows, linux
2008-08-28 14:47:26 -05:00
Pedro Vicente Nunes
d78821d619 [svn-r15547] fix typos
tested: linux
2008-08-27 10:39:24 -05:00
Pedro Vicente Nunes
64842512fd [svn-r15527] turn off a debug print flag
tested: windows, linux
2008-08-25 11:05:00 -05:00
Pedro Vicente Nunes
0c8cee593f [svn-r15526] userblock options
only write the user block of a pre-existing file with user block in case there is no input user block file

tested: windows, linux
2008-08-25 10:57:14 -05:00
Pedro Vicente Nunes
a72dc6c92c [svn-r15521] #1184
Add a userblock to an HDF5 file during the repack.  The user gives  
give a filename and userblock size as command line parameters to  
h5repack and the contents of that file are stored in the  
userblock for the HDF5 file created by h5repack.

New flags to handle this -u and -b
Tested : windows, linux
2008-08-22 10:53:07 -05:00
Quincey Koziol
507a211257 [svn-r15462] Description:
Correct compiler warnings from Visual Studio.

Tested on:
    Mac OS X/32 10.5.4 (amazon) w/FORTRAN & C++
    (Too minor to require full h5committest)
2008-08-12 07:46:40 -05:00
Neil Fortner
4f61812180 [svn-r15458] Purpose: Modify the library to take the proper action when files with incorrect
datatype versions are encountered.

Description: The library now recognizes some problems with datatype versions in
H5O_decode_helper(), and, if not performing strict format checks, automatically
corrects them.  Framework added for other message decode routines to
automatically correct file errors.  Datatype version information added to
h5debug.

Tested: kagiso, smirom, linew (h5committest)
2008-08-11 10:16:34 -05:00
Pedro Vicente Nunes
8ee8a3fde6 [svn-r15432] bug fix
the compression ratio was being printed for cases where a layout was requested and not a filter

tested: windows, linux
2008-08-05 10:34:12 -05:00
Pedro Vicente Nunes
422ac99509 [svn-r15431] added the h5diff "contents" mode to the h5diff calls in the h5repack test
tested: windows, linux
2008-08-05 10:07:12 -05:00
Pedro Vicente Nunes
6787ef71a2 [svn-r15428] http://bugzilla.hdfgroup.uiuc.edu/show_bug.cgi?id=1170
Summary: when using h5diff to compare the results of h5repack (or other tools that copy one HDF5 file to another), a new option is needed to allow h5diff to make an "absolute" comparison of the 2 files. This is the "contents" mode explained in the usage below.

If this mode is present, objects in both files must match (must be exactly the same). If this does not happen, the tool returns an error code of 1 (instead of the success code of 0)

Changes to the h5repack test script: the call to h5diff was changed to include -c (maintaining the previous -q). 

tested: windows, linux, solaris
2008-08-04 16:13:16 -05:00
Pedro Vicente Nunes
5a752d6e90 [svn-r15421] bug fix
the parsing of the command line strings for the shared object header message type was not being done correctly (strcmp)
fix: substituted by strncmp

tested: windows, linux
2008-07-28 16:08:34 -05:00