Fortran wrappers.
Solutions: The calls were not needed and were removed from the C stubs h5open_c and h5close_c for the correspnding
Fortran subroutines h5open_f and h5close_f.
Platforms tested: jam with gcc and gfortran, PGI and Intel
koala with PGI and Intel
linew with the standard Sun compilers
Bring r21442 and r21529 from trunk to 1.8 branch: Add new API routines
for querying if collective raw data I/O was actually performed collectively.
Tested:
Linux/32 2.6 (jam)
(h5committested on trunk)
This change reverts the HDFFV-7579 fix while we more carefully consider enum conversions as a part of the h5compare work.
Tested on jam, Windows 7 and linew.
HDFFV-7639
Purpose:
Remove H5_MPI_SPECIAL_COLLECTIVE_IO_WORKS and
H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS #defines from source.
Description:
Two advanced parallel functionalities, special collective IO and
complex derived datatypes, are not supported by older
implementations of mpi, and thus our code limits the use of these
features with #ifdefs and has checks in configure to set them (or
not). Unfortunately, configure can't actually run a parallel check
to see if these features are working (nor not) so it resorts to
looking in the config files where they are explicity enabled or
disabled based on versions of mpi, sytems being built on, or for
no documented reason at all (i.e. just set to on or off as some
'default'). Overriding these settings is easy if need be, provided
it is known that it needs to be done to get improved performance,
and oftentimes it is not.
Most new MPI implementations successfully handle the functionality
requested when these #defines are set, and many of the "turn these
features off" cases in the config files are for old (> 5 years)
versions of MPI and retired systems (such as NCSA's tungsten).
Therefore, the decision has been made to remove the support for
these old versions of MPI and systems that cannot handle these
behaviors. The #ifdefs and supporting setup in the config/ files
and configure script has been removed, and the code executed when
these options were not set removed from the source.
In passing, this commit also cleans up some whitespace issues in
both t_mpi.c and H5Dmpio.c. Furthermore, in t_mpi.c, the special
collective IO test was not getting regularly run due to it being
written to work only with four processes (we regularly test with
six, previously with three), and thus it failed when actually run
due to an out of bounds data buffer assignment. It has been
modified to run at any number of processes greater than four, and
the memory problem has been fixed so the test passes.
Tested:
Jam, h5committest, Ember
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.
Merged from HDF5 trunk r21396 and r21397.
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake (jam, Windows)
HDFFV-5932 - h5repack breaks files with dimension scales
Description:
- Fixed h5repack to update values of references(object and region) of
attributes in h5repack for 1) references, 2) ARRAY of references,
3) VLEN of references, and 4) COMPOUND of references.
- Merged from HDF5 trunk 21393, 21382, 21386, 21389. (support Peter)
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE)
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 jam and on MacOS with CLANG compiler.
HDFFV-2511 - GMQS: h5repack: some tests failed in -q32 AIX
Description:
- Merged from HDF5 trunk r21265
- Added macro to handle failure in H5Dread/write when memory allocation
failed inside the library (XCAO)
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE)
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:
- Merged from HDF5 trunk r21236,
- 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, win)
Merged from HDF5 trunk r21105
Fixed two bugs:
- h5repack: h5repack failed to copy dataset if the layout is changed from c
hunked 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)
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
Bring r21120 from trunk to 1.8 branch:
Check in ugly version of fix for Jira #7638. I'm going to leave the issue
open in Jira and when the library has been refactored to use shared file
pointers (instead of top file pointers) for file operations, I'll uncomment
the check in src/H5Oshared.c
Tested on:
Mac OS X/32 10.6.8 (amazon) w/debug
(too small for h5committest)
Work for HDFFV-7600 - GMQS: h5diff - argument options -d, -p and --use-system-epsilon should be mutually exclusive.
Description:
Merge from HDF5 trunk r21072.
Fixed h5diff to display instructive error message and exit with 1
when mutually exclusive options (-d, -p and --use-system-epsilon)
are used together.
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake (jam)
Fix HDFFV-7592
"Remove PACKEDBITS option from autotools files"
Description:
The code for h5dump's packed bits feature was
conditionally compiled in via this option during its
'beta' release in 1.8.5. Now that the feature is fully
supported, h5dump has since been changed to always
compile the packed bits code (having removed the #ifdef
H5_HAVE_H5DUMP_PACKED_BITS checks), so this option in
configure is no longer needed.
This commit removes the --enable-h5dump-packed-bits
configure option, including the help summary from
'./configure --help' and the libhdf5.settings output
summary, the PACKED_BITS Makefile variable, and the
definition of H5_HAVE_H5DUMP_PACKED_BITS define in
appropriate pubconf header files (which has already
been removed from use in source code as of r20722).
Note that this option was never added to the trunk,
thus this commit only need occur on the 1.8 branch.
Tested:
- Configure output, help, & summary verified on jam
- h5committested
super block. We took it out in v1.8 library because it's meaningless
for the MULTI file. v1.8 library saves the EOA for the metadata file,
instead. But this caused some backward compatibility problem.
v1.8 library couldn't open the file created with v1.6 library. I
fixed the problem by checking the EOA value to detect the file
created with v1.6 library.
Tested on jam, koala, and linew.
HDFFV-5878 - GMQS: h5dump - incorrect output format for array type with multiple elements in an index
Description:
Merged from HDF5 trunk r21014.
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)
data, overflowing values are retained. When conversion happens, the values become -1. The conversion function puts -1
when overflow happens. I added two new dataset transfer property to control whether to fill 0xff in the destination
data or convert to the destination data when overflow happens. The two new functions are H5Pset(get)_enum_conv_overflow. I also added test cases in enum.c and dtypes.c.
Tested on jam, koala, and heiwa.