From 768575225ecfe81e8965c47369576c9befb9d4c1 Mon Sep 17 00:00:00 2001
From: Dana Robinson <43805+derobins@users.noreply.github.com>
Date: Mon, 13 Feb 2023 06:03:11 -0800
Subject: Update release_docs HISTORY scheme (#2443)
We will no longer maintain HISTORY files for other maintenance branches,
so those have been removed. Adds a README.md explaining the purpose
and procedures of HDF5 HISTORY. Also adds a newsletter template and
updates the RELEASE.txt note part of CONTRIBUTING.md.
Also cleans out RELEASE.txt post-HDF5-1.14.0
---
CONTRIBUTING.md | 31 +-
doc/release_txt_notes.md | 107 +
release_docs/HISTORY-1_0-1_8_0.txt | 8985 +++++++++++++++++++
release_docs/HISTORY-1_0-1_8_0_rc3.txt | 8985 -------------------
release_docs/HISTORY-1_10.txt | 6562 --------------
release_docs/HISTORY-1_12.txt | 628 --
release_docs/HISTORY-1_13.txt | 3194 -------
release_docs/HISTORY-1_14.txt | 2315 +++++
release_docs/HISTORY-1_8.txt | 14439 -------------------------------
release_docs/NEWSLETTER.txt | 25 +
release_docs/README.md | 102 +
release_docs/RELEASE.txt | 272 +-
12 files changed, 11546 insertions(+), 34099 deletions(-)
create mode 100644 doc/release_txt_notes.md
create mode 100644 release_docs/HISTORY-1_0-1_8_0.txt
delete mode 100644 release_docs/HISTORY-1_0-1_8_0_rc3.txt
delete mode 100644 release_docs/HISTORY-1_10.txt
delete mode 100644 release_docs/HISTORY-1_12.txt
delete mode 100644 release_docs/HISTORY-1_13.txt
create mode 100644 release_docs/HISTORY-1_14.txt
delete mode 100644 release_docs/HISTORY-1_8.txt
create mode 100644 release_docs/NEWSLETTER.txt
create mode 100644 release_docs/README.md
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 62b00ea..dc1a200 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -86,36 +86,7 @@ application developers, library developers, and system administrators.
# Release Note
-* **Entry Syntax**
-The release note entry syntax is shown below.
-
-```
- - Title/Problem
-
- Problem/Solution
-
- Signature
-```
-
-* **Entry Elements** - The elements of the entry - title, problem, solution, and signature - are described in more detail in the table
-below. Descriptions of the problem and the solution should be clear without any ambiguities and should be short without losing clarity or specifics.
-
- * **Title** - The title or tag should identify one or more categories that will help readers decide if the entry is something they need to study. Can be combined with the `Problem` element
- * **Problem** - Describe the problem and how users might see the problem in a paragraph.
-You might also consider the following as you describe the problem:
- * Under what specific conditions does this issue arise?
- * Under what specific conditions are we sure this issue will not arise?
- * For a performance issue, instead of saying something is a performance issue, describe what the performance impact of issue is?
- * **Solution** - Describe the solution in another paragraph.
-You might also consider the following as you describe the solution:
- * What was done to resolve the issue?
- * What is the functional impact?
- * Is there a workaround – a way for users design their software so as not to encounter the issue? If so, what is the workaround?
- * For a performance fix, how has the performance improved? Links to published documentation would be good.
- * **Signature** - Each entry must be signed with the initials of the author, the date in YYYY/MM/DD format, and the JIRA ticket number. The
-following is an example entry written by developer Xavier Zolo on April 16, 2014 about JIRA ticket HDFFV-5555: (XYZ - 2014/04/16, HDFFV-5555). The
-signature is enclosed in parentheses. JIRA or Github numbers should not be used in the description of the problem or the solution. They are like
-abbreviations that customers and external users will not be able to interpret.
+The use and format of release notes is described in `doc/release_txt_notes.md` in this source code tree
# Checklist
diff --git a/doc/release_txt_notes.md b/doc/release_txt_notes.md
new file mode 100644
index 0000000..316ba3f
--- /dev/null
+++ b/doc/release_txt_notes.md
@@ -0,0 +1,107 @@
+# Writing Notes in a RELEASE.txt File
+
+## Introduction
+
+We have been challenged to write more helpful entries in our RELEASE.txt file
+for new features, improvements, and bug fixes. To help users determine the
+effects of our software changes on their applications, we have developed a
+template that can be used to write release notes. The template is described on
+the rest of this page.
+
+Some of our users face scrutiny from regulatory agencies for their use of
+software they did not develop (aka SOUP). When they use our software, they have
+to be aware of every change we make. For every change we make, they need to
+investigate the effect the change will have on their software. If our change
+affects their application, they may have to have their software retested or
+re-certified.
+
+[SOUP](https://en.wikipedia.org/wiki/Software_of_unknown_pedigree) stands for Software Of Unknown/Uncertain Pedigree/Provenance
+
+
+## When to write a RELEASE.txt note
+
+Generally, a release note must be written for every change that is made to the
+code for which users might see a change in the way the software works. In other
+words, if a user might see a difference in the way the software works, a note
+should be written. By code we mean the text that will be compiled into one of
+the company's software products. The code includes configuration changes and
+changes to tools users might work with to configure and build our software.
+
+A release note does not need to be written for changes to the code that users
+will not see.
+
+These things DO require a release note:
+
+* New features
+* Changes in functionality/semantics
+* Anything that changes functionality or symbols in a public header file
+* Command-line tool option changes
+* Adding or dropping support for compilers or operating systems
+* Build system (Autotools, CMake) changes that users will encounter
+
+These things do NOT require a release note:
+
+* Internal comments
+* Refactoring that does not change behavior or public headers (`H5XYpublic.h`)
+* Minor build system changes (adding warning flags)
+
+Notes should also be added for known problems. Known problems are issues that
+we know about and have not yet been able to fix.
+
+## RELEASE.txt entry format
+
+```
+ - Title
+
+ Problem
+
+ Solution
+
+ Signature
+```
+
+## RELEASE.txt entry elements
+
+### Title
+
+The title or tag should identify one or more categories that will help readers
+decide if the entry is something they need to study. Categories include problem
+areas, tool names, and code file names. Two examples are "Memory Leak" and
+"h5repack". A code file such as H5R.c or H5Z.c can be used as the title if the
+problem is located in the code file. If both a title and one or more tags are
+used, separate each with a period. For example, "Changed Autotools Build Behavior. Fortran."
+adds the Fortran tag to the title Changed Autotools Build Behavior. Use
+standard capitalization rules.
+
+### Problem
+
+Describe the problem and how users might see the problem in a paragraph.
+
+You might also consider the following as you describe the problem:
+
+* Under what specific conditions does this issue arise?
+* Under what specific conditions are we sure this issue will not arise?
+* For a performance issue, instead of saying something is a performance issue, describe what the performance impact of issue is?
+
+### Solution
+
+Describe the solution in another paragraph.
+
+You might also consider the following as you describe the solution:
+
+* What was done to resolve the issue?
+* What is the functional impact?
+* Is there a workaround – a way for users design their software so as not to encounter the issue? If so, what is the workaround?
+* For a performance fix, how has the performance improved? Links to published documentation would be good.
+
+### Signature
+
+Each entry must be signed with the initials of the author, the date in
+YYYY/MM/DD format, and the JIRA ticket number. The signature is enclosed in
+parentheses.
+
+Example:
+
+```
+ (ABC - 2023/02/28, JIRA-12345, GitHub #1234)
+```
diff --git a/release_docs/HISTORY-1_0-1_8_0.txt b/release_docs/HISTORY-1_0-1_8_0.txt
new file mode 100644
index 0000000..3669f4d
--- /dev/null
+++ b/release_docs/HISTORY-1_0-1_8_0.txt
@@ -0,0 +1,8985 @@
+HDF5 HISTORY
+============
+This file contains history of the HDF5 libraries releases starting with
+HDF5-1.0.0 and ending with HDF5-1.8.0-rc3 (the state of the code before
+the HDF5 1.8.0 release).
+
+CONTENTS
+
+22. Changes from 1.6.0 to 1.8.0-rc3
+21. Release Information for hdf5-1.6.7
+20. Release Information for hdf5-1.6.6
+19. Release Information for hdf5-1.6.5
+18. Release Information for hdf5-1.6.4
+17. Release Information for hdf5-1.6.3
+16. Release Information for hdf5-1.6.2
+15. Release Information for hdf5-1.6.1
+14. Release Information for hdf5-1.6.0
+13. Release Information for hdf5-1.4.5
+12. Release Information for hdf5-1.4.4
+11. Release Information for hdf5-1.4.3
+10. Release Information for hdf5-1.4.2
+9. Release Information for hdf5-1.4.1
+8. Release Information for hdf5-1.4.0
+7. Release Information for hdf5-1.2.2
+6. Release Information for hdf5-1.2.1
+5. Release Information for hdf5-1.2.0
+4. Changes from Release 1.0.0 to Release 1.0.1
+3. Changes from the Beta 1.0.0 Release to Release 1.0.0
+2. Changes from the Second Alpha 1.0.0 Release to the Beta 1.0.0 Release
+1. Changes from the First Alpha 1.0.0 Release to the
+ Second Alpha 1.0.0 Release
+
+[Search on the string '%%%%' for per-release section breaks.]
+
+%%%%1.8.0-rc3%%%% Changes from 1.6.0 to 1.8.0-rc3
+
+
+HDF5 version 1.8.0-rc3
+================================================================================
+
+
+INTRODUCTION
+
+This document describes the differences between HDF5-1.6.* and
+Hdf5 1.8.0 release candidate "HDF5-1.8.0-rc3", and contains information
+on the platforms tested and known problems in HDF5-1.8.0-rc3.
+For more details check the HISTORY.txt file in the HDF5 source.
+
+
+Links to HDF5 1.8.0-rc3 source code, documentation, and additional materials
+can be found on THG's development server (www.hdfgroup.uiuc.edu) at the
+following location:
+ http://www.hdfgroup.uiuc.edu/HDF5/release/beta/obtain518.html
+User documentation for the beta can be accessed directly at this location:
+ http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/doc/
+
+New features of the upcoming 1.8.0 release are described in
+the "What's New in 1.8.0?" document:
+ http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/WhatsNew180.html
+
+New and modified APIs are described briefly in
+ http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/WhatsNew180.html
+and will be listed in the "HDF5 Software Changes" document:
+ http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/doc/ADGuide/Changes.html
+
+
+
+For more information, see the HDF5 home page:
+
+ http://www.hdfgroup.org/HDF5/
+
+If you have any questions or comments, please send them to the HDF Help Desk:
+
+ help@hdfgroup.org
+
+
+CONTENTS
+
+- New Features
+- Support for new platforms and languages
+- Bug Fixes since HDF5-1.6.0
+- Platforms Tested
+- Known Problems
+
+
+New Features
+============
+
+ Configuration:
+ --------------
+ - Removed stream-vfd from the HDF5 library. - AKC 2007/11/19.
+ - Updated versions of autotools. HDF5 now uses automake 1.10.0,
+ autoconf 2.61, and libtool 1.5.22. MAM - 2007/7/25.
+ - Changed default fortran compiler to g95 when gcc is used. - AKC
+ 2007/2/17.
+ - 'make check-vfd' can now be run from the top level directory. Not all
+ tests that 'make check' invokes work with certain Virtual File Drivers,
+ so those tests have been skipped. - MAM 2006/7/17
+ - Added the variable HDF5TestExpress to control how long tests run.
+ Setting it to a value between 0 and 3 controls how thoroughly the
+ library is tested, with 0 being an "exhaustive run" and 3 being a
+ very quick "smoke test." 1 (a "full run") is the default.
+ -JML 2006/6/21
+ - If both shared and static libraries are installed, now both will be
+ tested during 'make install'. -MAM 2006/06/21
+ - Added support to explicitly enable stream_vfd or shared libraries
+ when using parallel via the '--enable-stream_vfd' and
+ '--enable-shared' options, respectively. If not explicitly defined,
+ These settings default to enabled when parallel is not used,
+ and disabled when parallel is used. -MAM 2006/06/17
+ - Remove the flexible parallel code and the --enable-fphdf5
+ configure option, it was never up to production standards
+ anyway. -QAK 2006/4/20
+ - Added a macro hdf5_mpi_special_collective_io_works to filter out
+ some mpi-io packages that don't support collective IO for no IO
+ contributions in some processes. -KY 2006/2/16
+ - Added -shlib option to link against installed shared libraries to
+ h5c++ and h5fc. -JML 2005/11/1
+ - Added --enable-build-all option to configure, which only developers
+ should need to use. -JML 2005/10/24
+ - Configure uses the 'TR' variable to let the user override the path
+ to the 'tr' utility. -JML 2005/10/17
+ - Configure can recognize -lmpich as a form of MPI library. -AKC-
+ 2005/9/28.
+ - MD5 checksumming has been added to snapshot releases. Release
+ tarballs will be accompanied by .md5 checksum files, which can
+ be verified using the md5sum utility. -JML 2005/9/6
+ - Some configure flags are incompatible (e.g., the C++ APIs cannot
+ be built using the parallel version of HDF5). configure will now
+ output errors when some common incompatible features are used
+ together. -JML 2005/9/6
+ - A new API function, H5Tis_hard(), was added to the library. It
+ checks if a conversion function is a compiler (hard) conversion.
+ SLU - 2005/9/6
+ - t_mpi will run the test_mpio_derived_dtype by default unless it is
+ known not working (indicated by macro H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS
+ not defined.) -AKC- 2005/8/23.
+ - Test execution has changed in a number of ways:
+ When make is invoked in parallel (using -j), sequential tests
+ are now executed as parallel make targets. This should make them
+ finish more quickly on machines with multiple processors.
+ Since test output is garbled when they are executed by parallel make,
+ tests now dump their output to foo.log files and foo.logsh files
+ (for test scripts). These logs are printed to the screen only
+ when a test fails or when all tests in the current directory have
+ completed successfully.
+ When tests pass, they will create a foo.chkexe file.
+ This prevents the test from executing again until the test or
+ main library changes.
+ All files generated by tests (*.chkexe, *.log, and any *.h5 files
+ created) can be removed by invoking 'make check-clean'.
+ Sequential and parallel library tests can now be invoked separately.
+ 'make check-s' will execute only sequential tests, and 'make check-p'
+ will execute only parallel tests. 'make check' will still execute
+ all tests.
+ JML - 2005/08/03
+ - On windows, all.zip is deprecated. users should
+ read INSTALL_Windows.txt to know the details.
+ Reasons to deprecate all.zip:
+ 1. Avoid confliction for windows programmers
+ 2. Decrease size of CVS tree by adding all.zip
+ 3. Avoid using winzip as the intermediate step
+ --KY 2005/04/22
+ - When HDF5 is created as a shared library, it now uses libtool's
+ shared library versioning scheme. -JML 2005/04/18
+ - HDF5 now uses automake 1.9.5 to generate Makefiles.in.
+ This has a number of effects on users:
+ The Fortran compiler should be set using the environment
+ variable $FC, not $F9X. F9X still works, but is depreciated.
+ The output of make may be different. This should be only a
+ cosmetic effect.
+ make depend (or make dep) is no longer recognized, since automake
+ handles dependency tracking.
+ Some new configure options exist. --enable-dependency-tracking
+ and --disable-dependency-tracking are used to control automake's
+ dependency tracking. Dependencies are on by default *on most
+ platforms and compilers*. If --enable-dependency-tracking is
+ used, they will be enabled on any platform. However, this can
+ slow down builds or even cause build errors in some cases.
+ Likewise, --disable-dependency-tracking can speed up builds and
+ avoid some build errors.
+ Some make targets have alternate names. make check-install and
+ make installcheck do the same thing, for instance.
+ pmake on IRIX can be invoked from the root directory, but the
+ -V flag must be used to invoke it in any subdirectory or it
+ will give an error about undefined variables.
+ JML 2005/01 - 2005/03
+ - Hardware conversion between long double and integers is also added.
+ SLU 2005/02/10
+ - Started to support software conversion between long double and
+ integers. Hardware conversion will come very soon. SLU - 2005/1/6
+ - Intel v8.0 compiler would infinite loop when compiling some test
+ code with -O3 option. Changed enable-production default compiler
+ option to -O2. AKC - 2004/12/06
+ - Long double is assumed to be a supported C data type. It is a
+ stanadard C89 type. AKC - 2004/10/22
+ - The IA64 will use ecc as the C++ compiler by default.
+ - Added some initial support for making valgrind/Purify (or similar
+ memory checking products) happier by initializing buffers to zero
+ and disabling the internal free list code. To take advantage of
+ this, use the "--enable-using-memchecker" configure option when
+ building the library. QAK - 2004/07/23
+ - Fixed the long compile time of H5detect.c when v7.x Intel Compiler
+ is used with optimization NOT off. AKC - 2004/05/20
+ - Fixed configure setting of C++ for OSF1 platform. AKC - 2004/01/06
+ - Prefix default is changed from /usr/local to `pwd`/hdf5.
+ AKC - 2003/07/09
+
+ Library:
+ --------
+ - Removed size restrictions on attributes, when using the "latest"
+ version of the file format. - QAK - 2007/02/21
+ - Relaxed restrictions on attribute operations to allow a file ID to
+ be used as the "location ID". If a file ID is used, the attribute
+ operation will occur on the root group of the file.
+ - QAK - 2007/02/09
+ - Enabled the CORE driver to read an existing file depending on
+ the setting of the backing_store for H5Pset_fapl_core and file
+ open flags. - SLU - 2006/11/30
+ - Added new H5Gget_info_by_idx() routine to query the information about
+ a group according to the order within an index.
+ - QAK - 2006/11/27
+ - Added new H5Gget_info() routine to query the information about a
+ group by name.
+ - QAK - 2006/11/27
+ - Added new H5Oget_info_by_idx() routine to query the information about
+ an object in a group according to the order within an index.
+ - QAK - 2006/11/26
+ - Added new H5Oget_info() routine to query the information about an
+ object in a group by name.
+ - QAK - 2006/11/26
+ - Added new H5Oopen_by_idx() routine to open an object in a group
+ according to the order within an index.
+ - QAK - 2006/11/20
+ - Added new H5Literate() routine to iterate over links in a group
+ according to the order within an index.
+ - QAK - 2006/11/20
+ - Added new H5Ldelete_by_idx() routine to delete a link according to
+ the order within an index.
+ - QAK - 2006/11/13
+ - Added new H5Lget_val_by_idx() routine to query the value of a soft link
+ according to the order within an index.
+ - QAK - 2006/11/13
+ - Added new H5Lget_name_by_idx() routine to query the name of a link
+ according to the order within an index.
+ - QAK - 2006/11/12
+ - Added new H5Rget_name() routine to determine the name of the object
+ that a reference points to, as long as the object is still
+ reachable in the group hierarchy.
+ - QAK - 2006/11/10
+ - Added new H5Lget_info_by_idx() routine to query the link information
+ according to the order within an index.
+ - QAK - 2006/11/10
+ - Added feature to H5Iget_name to allow retrieving the name of any
+ object's ID, as long as the object is still reachable in the
+ group hierarchy.
+ - LA - 2006/11/01
+ - Added External and User-defined links.
+ External links are links from one HDF5 file to another; they
+ require both the name of the file and a path within that file.
+ User-defined links allow users to supply callback functions
+ for link traversals, allowing links to exhibit essentially
+ any behavior.
+ External links are a kind of user-defined link, so their default
+ behavior can be overridden by the user.
+ -JML 2006/8/23
+ - Added H5Oopen and H5Oclose for opening objects of unknown type
+ (as link callback functions do).
+ -JML 2006/8/23
+ - Added H5Oopen_by_addr, H5Oincr_refcount, and H5Odecr_refcount for
+ opening objects by address. Be very careful with these!
+ -JML 2006/8/23
+ - Added H5Fget_intent to get the "intent" of a file (whether it
+ was opened with read-write access or read-only.
+ -JML 2006/8/23
+ - Added Link Access Property Lists. They currently contain two
+ properties, nlinks (H5Pget/set_nlinks) and elink_prefix
+ (H5Pget/set_elink_prefix). nlinks controls how many soft and
+ user-defined traversals are allowed before HDF5 assumes it has
+ found a cycle (previously this defaulted to 16).
+ The elink_prefix is a filesystem path that is prefixed to the
+ names of any external link files opened using this LAPL.
+ -JML 2006/8/23
+ - Add H5L link APIs. Old APIs (H5Glink, H5Gmove, etc.) are still
+ supported but deprecated.
+ New APIs are:
+ H5Llink - create a link to an object given its ID
+ H5Lmove - just like H5Gmove2
+ H5Lcopy - copy a link without copying the underlying object
+ H5Lcreate_hard - like H5Glink2 for hard links
+ H5Lcreate_soft - like H5Glink2 for soft links
+ H5Ldelete - just like H5Gunlink
+ H5Lget_val - just like H5Gget_linkval
+ H5Lget_info - gets link-specific info (like H5Gget_objinfo)
+
+ In addition, H5Gcreate_anon, H5Tcommit_anon, and H5Dcreate_anon
+ no longer create links to objects; objects must be manually linked
+ using H5Llink or they will be deleted when the ID is closed.
+
+ Link Creation Property Lists can be used to pass character
+ encoding (ASCII or UTF-8) for link names and to set the Intermediate
+ Group Creation Flag:
+ H5Pset_char_encoding, H5Pget_char_encoding
+ H5Pset_copy_object, H5Pget_copy_object
+ -JML 2006/7/5
+ - Added managements of collective IO supports for chunking storage
+ inside parallel HDF5
+ 1) Implemented One IO with collective mode for all chunks in the
+ application by building one MPI derived datatype across all
+ chunks.
+ 2) Implemented the decision-making support to do collective IO inside
+ MPI-IO per chunk.
+ 3) Added the decision-making support to do one IO across all chunks
+ or to do multiple IOs with each IO per chunk.
+ 4) Added the support to handle the case some processes won't do any IOs in
+ collectively.
+ 5) Some MPI-IO package(mpich 1.2.6 or lower, e.g.) cannot handle
+ collective IO correctly for the case when some processes have no
+ contributions to IOs, a special macro is added to change
+ collective IO mode to independent IO mode inside HDF5 library.
+
+ Currently we find that MPICH at Linux and vendor MPI-IO package at NCSA
+ Altix cannot handle this case.
+
+ "hdf5_mpi_special_collective_io_works=${hdf5_mpi_special_collective_io_works='no'}"
+ has been added at the end of file and
+ .
+
+ If MPI-IO packages at your Linux and Altix support this case,
+ please comment out the last line and report to us at
+ help@hdfgroup.org. We can tune in our configuration to
+ support this.
+
+ KY - 2006/02/16
+ - Added character encoding to attribute creation property lists.
+ JML - 2006/01/02
+ - Added H5Gcopy() routine to copy objects between while keeping
+ data in compressed form. QAK - 2005/11/06
+ - Added H5Sextent_equal() routine. QAK - 2005/11/06
+ - Added HSYS_ERROR which retrieves the system error message and pushes
+ it to the error stack. This gives more information of the failed
+ system call. AKC - 2005/08/04
+ - Added H5F_OBJ_LOCAL flag to H5Fget_obj_count() & H5Fget_obj_ids(), to
+ allow querying for objects in file that were opened with a particular
+ file ID, instead of all objects opened in file with any file ID.
+ QAK - 2005/06/01
+ - Added H5T_CSET_UTF8 character set to mark datatypes that use the
+ UTF-8 Unicode character encoding. Added tests to ensure that
+ library handles UTF-8 object names, attributes, etc. -JL 2005/05/13
+ - HDF5 supports collective MPI-IO for irregular selection with HDF5
+ dataset. Irregular selection is when users use H5Sselect_hyperslab
+ more than once for the same dataset.
+ Currently, not all MPI-IO packages support complicated MPI derived
+ datatype used in the implementation of irregular
+ selection INSIDE HDF5.
+ 1) DEC 5.x is not supporting complicated derived datatype.
+ 2) For AIX 5.1,
+ if your poe version number is 3.2.0.19 or lower,
+ please edit powerpc-ibm-aix5.x under hdf5/config,
+ Find the line with
+ << hdf5_mpi_complex_derived_datatype_works>>
+ and UNCOMMENT this line before the configure.
+ check poe version with the following command:
+ lpp -l all | grep ppe.poe
+ 3) For Linux cluster,
+ if mpich version is 1.2.5 or lower, collective irregular selection
+ IO is not supported, internally independent IO is used.
+ 4) For IRIX 6.5,
+ if C compiler version is 7.3 or lower, collective irregular selection
+ IO is not supported, internally independent IO is used.
+ 5) For platforms which internally used mpich, if the
+ mpich version is 1.2.5 or lower, please find the
+ corresponding config file and add
+ hdf5_mpi_complex_derived_datatype_works='no' at the
+ end of the configuration file. For example, at NCSA
+ SGI Altix, the internal mpich library is 1.2.5. So
+ hdf5_mpi_complex_derived_datatype_works='no' should be
+ added at the end of the config file ia64-linux-gnu.
+ KY - 2005/09/12
+ We also found not all MPI-IO packages support collective IO with one
+ or more processes to have no contributions to IO.
+ For mpich version 1.2.6 or lower and all IRIX machine,
+ if the library checks that there are no IO contributions for some
+ processes, collective IO request is replaced with
+ independent inside HDF5.
+ KY - 2006/05/04
+
+ - HDF5 N-bit filter
+ HDF5 support N-bit filter from this version,
+ The N-Bit filter is used effectively for compressing data of N-Bit
+ datatype as well as compound and array datatype with N-Bit fields.
+ KY - 2005/04/15
+ - HDF5 scaleoffset filter
+ HDF5 supports scaleoffset filter for users to do data
+ compression through HDF5 library.
+ Scale-Offset compression performs a scale and/or offset operation
+ on each data value and truncates the resulting value to a minimum
+ number of bits and then stores the data.
+ Scaleoffset filter supports floating-point and integer datatype.
+ Please check the HDF5 reference manual for this.
+ KY - 2005/06/06
+ - Retired SRB vfd (--with-srb). Functions H5Pset_fapl_srb and
+ H5Pget_fapl_srb were removed. EIP - 2005/04/07
+ - Retired GASS vfd (--with-gass). Functions H5Pset_fapl_gass and
+ H5Pget_fapl_gass are removed too. AKC - 2005/3/3
+ - Pablo was removed from the source code EIP - 2005/01/21
+ - Modified registration of SZIP to dynamically detect the presence
+ or absence of the encoder. Changed configure and Makefiles,
+ and tests to dynamically detect encoder. BEM - 2004/11/02
+ - Added function H5Pget_data_transform, together with the previously
+ added H5Pset_data_transform, to support the data transform
+ feature. AKC - 2004/10/26
+ - Compound datatype has been enhanced with a new feature of size
+ adjustment. The size can be increased and decreased(without
+ cutting the last member) as long as it doesn't go down to zero.
+ No API change is involved. SLU - 2004/10/1
+ - Put back 6 old error API functions to be backward compatible with
+ version 1.6. They are H5Epush, H5Eprint, H5Ewalk, H5Eclear,
+ H5Eset_auto, H5Eget_auto. Their new equivalent functions are
+ called H5Epush_stack, H5Eprint_stack, H5Ewalk_stack,
+ H5Eclear_stack, H5Eset_auto_stack, H5Eget_auto_stack. SLU -
+ 2004/9/2
+ - 4 new API functions, H5Tencode, H5Tdecode, H5Sencode, H5Sdecode were
+ added to the library. Given object ID, these functions encode and
+ decode HDF5 objects(data type and space) information into and from
+ binary buffer. SLU - 2004/07/21
+ - Modified the way how HDF5 calculates 'pixels_per_scanline' parameter for
+ SZIP compression. Now there is no restriction on the size and shape of the
+ chunk except that the total number of elements in the chunk cannot be
+ bigger than 'pixels_per_block' parameter provided by the user.
+ EIP - 2004/07/21
+ - Added support for SZIP without encoder. Added H5Zget_filter_info
+ and changed H5Pget_filter and H5Pget_filter_by_id to support this
+ change. JL/NF - 2004/06/30
+ - SZIP always uses K13 compression. This flag no longer needs to
+ be set when calling H5Pset_szip. If the flag for CHIP
+ compression is set, it will be ignored (since the two are mutually
+ exclusive). JL/NF - 2004/6/30
+ - A new API function H5Fget_name was added. It returns the name
+ of the file by object(file, group, data set, named data type,
+ attribute) ID. SLU - 2004/06/29
+ - Added support for user defined identifier types. NF/JL - 2004/06/29
+ - A new API function H5Fget_filesize was added. It returns the
+ actual file size of the opened file. SLU - 2004/06/24
+ - New Feature of Data transformation is added. AKC - 2004/05/03.
+ - New exception handler for datatype conversion is put in to
+ replace the old overflow callback function. This exception
+ handler is set through H5Pset_type_conv_cb function.
+ SLU - 2004/4/27
+ - Added option that if $HDF5_DISABLE_VERSION_CHECK is set to 2,
+ will suppress all library version mismatch warning messages.
+ AKC - 2004/4/14
+ - A new type of dataspace, null dataspace(dataspace without any
+ element) was added. SLU - 2004/3/24
+ - Data type conversion(software) from integer to float was added.
+ SLU - 2004/3/13
+ - Data type conversion(software) from float to integer was added.
+ Conversion from integer to float will be added later.
+ SLU -2004/2/4
+ - Added new H5Premove_filter routine to remove I/O pipeline filters
+ from dataset creation property lists. PVN - 2004/01/26
+ - Added new 'compare' callback parameter to H5Pregister & H5Pinsert
+ routines. QAK - 2004/01/07
+ - Data type conversion(hardware) between integers and floats was added.
+ SLU 2003/11/21
+ - New function H5Iget_file_id() was added. It returns file ID given
+ an object(dataset, group, or attribute) ID. SLU 2003/10/29
+ - Added new fields to the H5G_stat_t for more information about an
+ object's object header. QAK 2003/10/06
+ - Added new H5Fget_freespace() routine to query the free space in a
+ given file. QAK 2003/10/06
+ - Added backward compatibility with v1.6 for new Error API. SLU -
+ 2003/09/24
+ - Changed 'objno' field in H5G_stat_t structure from 'unsigned long[2]'
+ to 'haddr_t'. QAK - 2003/08/08
+ - Changed 'fileno' field in H5G_stat_t structure from 'unsigned long[2]'
+ to 'unsigned long'. QAK - 2003/08/08
+ - Changed 'hobj_ref_t' type from structure with array field to 'haddr_t'.
+ QAK - 2003/08/08
+ - Object references (hobj_ref_t) can now be compared with the 'objno'
+ field in the H5G_stat_t struct for testing if two objects are the
+ same within a file. QAK - 2003/08/08
+ - Switched over to new error API. SLU - 2003/07/25
+
+ Parallel Library:
+ -----------------
+ - Added mpich2 as a testing "platform" informally. AKC - 2005/9/28.
+ - A dataset created in serial mode with H5D_ALLOC_TIME_INCR allocation
+ setting was not extendible, either explicitly by H5Dextend or
+ implicitly by writing to unallocated chunks. Library now allocates
+ more space when needed or directed if the file is opened by parallel
+ mode, independent of what the dataset allocation mode is.
+ CC/AKC - 2005/08/29.
+ - Allow compressed, chunked datasets to be read in parallel.
+ QAK - 2004/10/04
+ - Add options of using atomicity and file-sync to test_mpio_1wMr.
+ AKC - 2003/11/13
+ - Added parallel test, test_mpio_1wMr, which tests if the
+ underlying parallel I/O system is conforming to the POSIX
+ write/read requirement. AKC - 2003/11/12
+
+ Fortran Library:
+ ----------------
+ - added support for shared Fortran libraries. -JML 2005/09/20
+ - added missing h5tget_member_class_f function
+ EIP 2005/04/06
+ - added new functions h5fget_name_f and h5fget_filesize_f
+ EIP 2004/07/08
+ - h5dwrite/read_f and h5awrite/read_f functions only accept dims parameter
+ of the type INTEGER(HSIZE_T).
+ - added support for native integers of 8 bytes (i.e. when special
+ compiler flag is specified to set native fortran integers to 8 bytes,
+ for example, -i8 flag for PGI and Absoft Fortran compilers,
+ -qintsize=8 flag for IBM xlf compiler).
+ EIP 2005/06/20
+ - added support for "big" REAL and DOUBLE PRECISION types
+ (usually the size is specified by compilers flags like
+ -r8, -r16, etc.)
+ Known problem: multi file test fails when REAL is 16 bytes.
+ EIP 2005/09/8
+
+ C++ Library:
+ ----------------
+ - added support for shared C++ libraries. -JML 2005/09/20
+ - Added missing member functions
+ H5::CompType::getMemberArrayType
+ H5::CompType::getMemberVarLenType
+ H5::AbstractDs::getArrayType
+ H5::AbstractDs::getVarLenType
+ H5::CommonFG::openArrayType
+ H5::CommonFG::openVarLenType
+ H5::PropList::copyProp -- this will replace the current
+ H5::PropList::copyProp in later releases due
+ to incorrect prototype.
+ H5::IdComponent::getHDFObjType
+ BMR - 2005/08/08
+
+
+ Tools:
+ ------
+ - h5repack and h5diff changed command line parameter syntax to be
+ similar to h5dump, adding also long switch names. PVN - 2008/1/16
+ - h5repack now supports adding multiple filters to all objects.
+ PVN - 2008/1/16
+ - h5dump lists groups and attributes in requested orders (by name and
+ creation order, both ascending and descending). PVN - 2007/10/5
+ - h5import imports string (text) data. PVN - 2007/10/5
+ - h52gif and gif2h5: Both these tools were revised to include the High
+ Level Image API support, and tests were added to /hl/tools/gif2h5.
+ PVN - 2007/04/13
+ - h5dump: added support for double long type H5T_NATIVE_LDOUBLE. PVN
+ 2007/03/13
+ - h5dump: added support for binary output, see usage. PVN 2007/03/13
+ - h5repack: added support for the new nbit and scaleoffset filters.
+ PVN - 2007/05/07
+ - h5repack: now uses the API function H5Ocopy (of the tool h5copy) to
+ recreate objects if there is not a user input for changes. PVN -
+ 2007/05/07
+ - h5repack: added support for reading and repacking by hyperslabs for
+ large files. PVN - 2007/03/01
+ - h5repack: a new option allows the copy using the file type (default)
+ instead of the previous conversion to native type. PVN - 2007/03/01
+ - h5repack: output the percentage of compression used. PVN - 2007/03/01
+ - h5diff: added support for -p option for unsigned long_long data. PVN
+ 2007/02/26
+ - h5diff: added support for comparing dataset regions. PVN - 2007/02/20
+ - h5diff: added support for reading and comparing by hyperslabs for large files.
+ PVN - 2007/02/20
+ - h5diff: printing of dataset dimensions along with dataset name. PVN -2007/02/19
+ - h5dump now uses the new API function H5Rget_name to display the name
+ of the dataset referenced instead of its ID. PVN - 2007/02/19
+ - Added new tool, h5mkgrp. QAK - 2007/02/14
+ - Added new tool, h5copy. PVN - 2006/7/15
+ - Removed obsolete pdb2hdf5 tool from tools/misc -JML 2005/10/24
+ - Added build_h5perf_alone.sh that builds h5perf by standalone mode.
+ AKC - 2005/09/18.
+ - Sped up h5dump on files with large numbers of objects.
+ QAK - 2005/08/25
+ - Added a standalone mode for building h5perf. AKC - 2005/08/12
+ - new tool, h5jam. See reference manual. 2004/10/08
+ - h5repack.sh did not report errors encountered during tests. It does
+ now. AKC - 2004/04/02
+ - Added the MPI-I/O and MPI-POSIX drivers to the list of VFL drivers
+ available for h5dump and h5ls. RPM & QAK - 2004/02/01
+ - Added option --vfd= to h5ls to allow a VFL driver to be selected
+ by a user. RPM & QAK - 2004/02/01
+ - Added option -showconfig to compiler tools (h5cc,h5fc,h5c++).
+ AKC - 2004/01/08
+ - Install the "h5cc" and "h5fc" tools as "h5pcc" and "h5pfc"
+ respectively if library is built in parallel mode.
+ WCW - 2003/11/04
+ - Added metadata benchmark (perform/perf_meta). SLU - 2003/10/03
+ - Changed output of "OID"s from h5dump from "-" to
+ ":::" to ":"
+ QAK - 2003/08/08
+
+ High-Level APIs:
+ ------
+ - Fortran interfaces for the Image, Table and Lite APIs. PVN - 2007/5/1
+ - New HDF5 Dimension Scale API (H5DS) allows dimension scales to be
+ created in an HDF5 file and associated with specific datasets. PVN - 2007/5/1
+ - There are two new functions in the Lite library, H5LTtext_to_dtype
+ and H5LTdtype_to_text. H5LTtext_to_dtype creates a HDF5 data type
+ given a text description; H5LTdtype_to_text converts a data type
+ to text description. Only DDL definition is supported as text
+ description now. SLU - 2006/05/17
+ - Added Packet Table API for creating tables with less overhead than
+ H5TB API. Added C++ wrapper for Packet Tables. See documentation.
+ JML - 2004/03/28
+
+ Documentation
+ -------------
+ - The documentation for this release is largely complete, but
+ trails the source code. A few of the newer functions are
+ not yet documented. FMB - 2007/04/18
+ - The user documents for this release can be accessed directly at
+ this location:
+ http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/doc/
+ The most recent document versions (updated daily) in the
+ 1.8 development branch can be accessed at this location:
+ http://www.hdfgroup.uiuc.edu/HDF5/doc_dev_snapshot/H5_dev/
+ FMB - 2007/04/18
+
+
+Support for new platforms, languages and compilers.
+=======================================
+ - Added support for Free-BSD on amd64 with GNU C and Fortran compilers
+ 4.2.1
+ EIP - 2007/06/25
+ - Added support for sequential and parallel libraries for Intel 64 Linux
+ cluster (abe.ncsa.uiuc.edu). Among three MPICH packages available on
+ this machine, only Open MPI works. The VMI has seg fault in hyperslab.c
+ and bittests.c tests. The MVAPICH2 complained about mpd not running
+ the parallel test. (see Known Problems section for more info)
+ EIP - 2007/06/25
+ - Added support for HPUX11.23 for both 32 and 64-bit; HDF5 C++
+ - Added support for 64-bit Windows with Visual Studio .NET and 2005.
+ SJW - 2007/06/25
+ - Added support for HPUX11.23 for both 32 and 64-bit; HDF5 C++
+ shared library is not supported with +DD64 flag.
+ EIP - 2006/06/22
+ - Added support for VAX floating numbers for Alpha Open VMS 7.3.2
+ EIP - 2006/05/05
+ - Fixed broken make.com files in tools directories
+ EIP - 2006/05/05
+ - Added support for Alpha Open VMS 7.3.2 EIP - 2006/04/15
+ - Added support for Cray X1. JML - 2005/10/03
+ - PGI Fortran compiler is supported on Linux64 systems (x86_64)
+ EIP - 2004/08/19
+ - Absoft compiler f95 v9.0 supported on Linux 2.4
+ EIP - 2004/07/29
+ - HDF5 Fortran APIs are supported on Mac OSX with IBM XL Fortran
+ compiler version 8.1. This is a default compiler.
+ - HDF5 Fortran APIs are supported on MAC OSX with Absoft F95 compiler
+ version 8.2; set F9X environment variable to f95, for example
+ setenv F9X f95
+ Use --disable-shared --enable-static configure flags when Absoft
+ compiler is used.
+ EIP - 2004/07/27
+ - HDF5 Fortran APIs are supported on MAC OSX with IBM XL Fortran
+ Compiler version 8.1 Use "--disable-shared --enable-static"
+ configure flags along with the "--enable-fortran" flag to build
+ Fortran library. EIP - 2004/01/07
+
+Bug Fixes since HDF5-1.6.0 release
+==================================
+
+ Library
+ -------
+ - Changed library's behavior for reading files that might have
+ corrupted object header information from a previous (buggy)
+ version of the library. By default, the library now rebuilds the
+ correct object header information instead of issuing an error.
+ Previous "strict" file format interpretation can be enabled with
+ the "--enable-strict-format-checks" configure option.
+ QAK - 2008/01/13
+ - Fixed several bugs with writing fill values for datasets that have
+ a variable-length datatype or component datatype. QAK - 2007/06/19
+ - STDIO driver didn't support files bigger than 2GB because the OFFSET
+ parameter of fseek is of type LONG INT, not big enough for big files.
+ Use fseeko instead for big files if it's available on the system.
+ SLU - 2007/4/5
+ - Fixed a bug in H5Sselect_valid() that caused an incorrect value to
+ be returned (0) instead of FAIL on error conditions such as the
+ selection or extent not being defined. CMC - 2007/01/17
+ - Fixed the MULTI driver problem (Bug #731) that corruptted the data.
+ SLU - 2007/1/12
+ - Fixed file corruption bug which could write an incorrect number of
+ messages to an object's header under certain circumstances.
+ Generally, the sequence of actions to generate this bug looks
+ like this:
+ - Create an object
+ - Close the file
+ - Re-open the file
+ - Add 2 (or more) attributes to the object
+ - Close the file
+ - Re-open the file
+ - Delete one of the attributes on the object
+ - Add a smaller attribute to the object
+ - Delete the smaller attribute on the object
+ - Add a larger attribute on the object
+
+ After this, the number of header messages stored for the object
+ will be off by one. Other sequences of modifying attributes on an
+ object could also trigger this bug. If you are opening an
+ object and the bottom few messages of the HDF5 error stack
+ resembles this, the object has been affected by this bug:
+
+ #007: ../../hdf5_v1.6/src/H5C.c line 3887 in H5C_load_entry(): unable to load entry
+ major(08): Meta data cache layer
+ minor(40): Unable to load metadata into cache
+ #008: ../../hdf5_v1.6/src/H5Ocache.c line 332 in H5O_load(): corrupt object header - too few messages
+ major(12): Object header layer
+ minor(40): Unable to load metadata into cache
+
+ Specifically, "corrupt object header" is the best string to search
+ for in the HDF5 error stack output.
+
+ If your files have been affected by this bug, or you are concerned
+ that your files might have been, please contact the HDF Helpdesk
+ at help@hdfgroup.org for a tool to detect and repair files
+ affected by this problem. QAK - 2006/6/16
+ - Fixed various problems with retrieving names of objects, especially
+ with mounted files. QAK - 2005/12/25
+ - Fixed core dump when closing root groups opened through two different
+ file handles that operate on the same actual file. QAK - 2005/10/02
+ - Corrected errors when performing various operations on a group opened
+ by dereferencing an object reference. QAK - 2005/07/30
+ - Fixed a bug with named datatypes where a copy of a named datatype
+ used to create a dataset would accidentally use the original
+ named datatype for the dataset's datatype. QAK - 2005/07/23
+ - Made H5Fget_name() be consistent and always return name of actual
+ file the ID is in. (Instead of the name of the top file in a
+ file mounting hierarchy). QAK - 2005/07/19
+ - Reworked internal file mounting semantics to hopefully eliminate
+ mounting problems. We now require that files that are mounting
+ together all have the same "file close degree". QAK - 2005/07/19
+ - More bug fixes on holding open files that are mounted and have
+ IDs open. QAK - 2005/07/14
+ - Don't unmount child files until the parent file actually closes.
+ (Previously, if an object is holding open a file, the child files
+ would get unmounted too early). QAK - 2005/07/05
+ - Fixed bug where unmounted files could cause the library to go into
+ an infinite loop when shutting down. QAK - 2005/06/30
+ - The library didn't save the information of family driver in file.
+ The original file member size was lost after file was closed (see
+ bug #213). This has been fixed by saving driver name and member
+ file size in the superblock. SLU - 2005/6/24
+ - Fixed bug with hyperslab selections that use selection offsets and
+ operate on chunked datasets going into infinite loop or dumping
+ core. QAK - 2005/06/17
+ - Corrected memory leak and possible corruption when opening a group.
+ QAK - 2005/06/17
+ - Added check for opaque datatype tags being too long (check against
+ H5T_OPAQUE_TAG_MAX, currently set to 256). QAK - 2005/06/14
+ - Fixed various errors in maintaining names for open objects in the
+ face of unusual mount & unmount operations. QAK - 2005/06/08
+ - "SEMI" and "STRONG" file close degree settings now apply only to the
+ particular file ID being closed, instead of operating on all open
+ file IDs for a given file. QAK - 2005/06/01
+ - For family driver, the library didn't save member size in file.
+ When file is reopened, the size of 1st member file determine the
+ member size. Now member size is saved in file and is used to
+ define member file size. Wrong file access property of member size
+ will result in a failure. Using any other driver except family
+ will cause library to return error. So is multi driver. SLU -
+ 2005/05/24
+ - Fixed error in opening object in group that was opened in mounted
+ file which has been unmounted. QAK - 2005/03/17
+ - Fixed a racing condition in MPIPOSIX virtual file drive close
+ function. Now all processes must completed the close before any
+ of them is returned. This prevents some "faster" processes start
+ accessing the file for another purpose (e.g., open with truncate)
+ while other "slower" processes have not closed the same file with
+ the previous purpose. AKC - 2005/03/01
+ - H5Tget_member_value calls for enum datatype didn't return correct
+ value if H5Tenum_valueof was called first. It's fixed. SLU -
+ 2005/02/08
+ - For variable-length string, H5Tget_class returned H5T_STRING as its
+ class. But H5Tdetect_class and H5Tget_member_class considered it
+ as H5T_VLEN. This is fixed to let all these 3 functions treat it
+ as H5T_STRING. SLU - 2005/02/08
+ - The byte order of 1-byte integer types was fixed as little endian
+ even on a big-endian machine. This has been corrected. SLU -
+ 2005/02/07
+ - Fix segmentation fault when calling H5Fflush with an attribute that
+ hasn't had a value written to it open. QAK - 2004/10/18
+ - Back up supporting bitfield and time types in H5Tget_native_type.
+ Leave it to future support. The function simply returns error
+ message of "not support" for bitfield and time types.
+ SLU - 2004/10/5
+ - Fixed address check in Core VFL driver to avoid spurious address/size
+ overflows for odd valued addresses and/or sizes. QAK - 2004/09/27
+ - Fixed parallel bug in which some processes attempted collective
+ I/O while others did independent I/O. Bug appeared when some
+ processes used point selections, and others didn't. JRM - 2004/9/15
+ - Corrected error where dataset region references were written in an
+ incorrect way on Cray machines. PVN & QAK - 2004/09/13
+ - The H5Tget_native_type now determines the native type for integers
+ based on the precision. This is to avoid cases of wrongly converting
+ an int to a short in machines that have a short of 8 bytes but with
+ 32bit precision (e.g Cray SV1). PVN - 2004/09/07
+ - Changed H5Dread() to not overwrite data in an application's buffer
+ with garbage when accessing a chunked dataset with an undefined
+ fill value and an unwritten chunk is uncountered. QAK - 2004/08/25
+ - Fixed error which could cause a core dump when a type conversion
+ routine was registered after a compound datatype had been
+ converted and then an equivalment compound datatype was converted
+ again. QAK - 2004/08/07
+ - Fixed memory overwrite when encoding "multi" file driver information
+ for file's superblock. QAK - 2004/08/05
+ - Fixed obscure bug where a filter which failed during chunk allocation
+ could allow library to write uncompressed data to disk but think
+ the data was compressed. QAK - 2004/07/29
+ - Fixed bug where I/O to an extendible chunked dataset with zero-sized
+ dimensions would cause library to fail an assertion.
+ QAK - 2004/07/27
+ - Fixed bug where chunked datasets which have filters defined,
+ allocation time set to "late" and whose chunks don't align with
+ the dataspace bounds could have incorrect data stored when
+ overwriting the entire dataset on the first write. QAK - 2004/07/27
+ - Added check to ensure that dataspaces have extents set. JML-2004/07/26
+ - Fixed bug on some Solaris systems where HDF5 would try to use
+ gettimeofday() when that function didn't work properly.
+ JML - 2004/07/23
+ - Fixed bug in H5Sset_extent_simple where setting maximum size to
+ non-zero, then to zero would cause an error. JML - 2004/07/20
+ - Allow NULL pointer for buffer parameter to H5Dread & H5Dwrite
+ when not writing data ("none" selection or hyperslab or point
+ selection with no elements defined). QAK - 2004/07/20
+ - Calling H5Gcreate() on "/" or "." throws an error instead of
+ failing quietly. JML - 2004/07/19
+ - Fixed bug where setting file address size to be very small could
+ trigger an assert if the file grew to more than 64 KB. Now throws
+ an error and data can be recovered. JL/NF - 2004/07/14
+ - Fixed bug where "resurrecting" a dataset was failing.
+ QAK - 2004/07/14
+ - Fixed bug where incorrect data could be read from a chunked dataset
+ after it was extended. QAK - 2004/07/12
+ - Fixed failure to read data back from file of compound type with
+ variable-length string as field. SLU - 2004/06/10
+ - Fixed potential file corruption bug when a block of metadata could
+ overlap the end of the internal metadata accumulator buffer and
+ the buffer would be extended correctly, but would incorrectly
+ change it's starting address. QAK - 2004/06/09
+ - Opaque datatype with no tag failed for some operations. Fixed.
+ SLU - 2004/6/3
+ - Fixed potential file corruption bug where dimensions that were
+ too large (a value greater than could be represented in 32-bits)
+ could cause the incorrect amount of space to be allocated in a
+ file for the raw data for the dataset. QAK - 2004/06/01
+ - Fixed dtypes "sw long double -> double" failure in QSC class
+ machines. AKC - 2004/4/16
+ - Fixed problem with fletcher32 filter when converting data of different
+ endianness. PVN - 2004/03/10
+ - Fixed problem with H5Tget_native_type() not handling opaque fields
+ correctly. QAK - 2004/01/31
+ - Fixed several errors in B-tree deletion code which could cause a
+ B-tree (used with groups and chunked datasets) to become corrupt
+ with the right sequence of deleted objects. QAK - 2004/01/19
+ - Fixed small internal memory leaks of fill-value information.
+ QAK - 2004/01/13
+ - Fixed bug that caused variable-length datatypes (strings or sequences)
+ used for datasets in files with objects that were unlinked to
+ fail to be read/written to a file. QAK - 2004/01/13
+ - Detect situation where szip 'pixels per block' is larger than the
+ fastest changing dimension of a dataset's chunk size and disallow
+ this (due to limits in szip library). QAK - 2003/12/31
+ - Fixed bug with flattened hyperslab selections that would generate
+ incorrect hyperslab information with certain high-dimensionality
+ combinations of start/stride/count/block information.
+ QAK - 2003/12/31
+ - Fixed bug with variable-length datatypes used in compound datatypes.
+ SLU - 2003/12/29
+ - Fixed bug in parallel I/O routines that would cause reads from
+ "short datasets" (datasets which were only partially written out)
+ to return invalid data. QAK & AKC - 2003/12/19
+ - Fixed bug where scalar dataspaces for attributes were reporting as
+ simple dataspaces. QAK - 2003/12/13
+ - Fixed problem with selection offsets of hyperslab selections in
+ chunked datasets causing the library to go into an infinite loop.
+ QAK - 2003/12/13
+ - Fixed H5Giterate to avoid re-using index parameter after iteration
+ callback has been called (allows iteration callback to modify the
+ index parameter itself). QAK - 2003/12/06
+ - Fixed various floating-point conversion problems, including a
+ change which could corrupt data when converting from double->float.
+ QAK - 2003/11/24
+ - Changed "single process" metadata writing in library to collective
+ I/O by all processes, in order to guarantee correct data being
+ written with MPI-I/O. QAK - 2003/11/20
+ - Fixed problems with fill values and variable-length types and also
+ I/O on VL values that were set to NULL. QAK - 2003/11/08
+ - Fixed problems with MPI datatypes that caused ASCI Q machine to
+ hang. QAK - 2003/10/28
+ - Removed HDF5_MPI_PREFER_DERIVED_TYPES environment variable support,
+ since it had no benefit. QAK - 2003/10/28
+ - Single hyperslab selections (which were set with only one call to
+ H5Sselect_hyperslab) that had dimensions that could be "flattened"
+ but were interspersed with dimensions that could not be flattened
+ were not correctly handled, causing core dumps. QAK - 2003/10/25
+ - Fixed incorrect datatype of the third parameter to the Fortran90
+ h5pset(get)_cache_f subroutine (INTEGER to INTEGER(SIZE_T))
+ EIP - 2003/10/13
+ - Fixed problems with accessing variable-length data datatypes on
+ Crays. QAK - 2003/10/10
+ - Fixed potential file corruption bug when too many object header
+ messages (probably attributes, from a user perspective) were
+ inserted into an object header and certain other conditions were
+ met. QAK - 2003/10/08
+ - Changed implementation of internal ID searching algorithm to avoid
+ O(n) behavior for many common cases. QAK - 2003/10/06
+ - Allow partial parallel writing to compact datasets. QAK - 2003/10/06
+ - Correctly create reference to shared datatype in attribute, instead
+ of making a copy of the shared datatype in the attribute.
+ QAK - 2003/10/01
+ - Revert changes which caused files >2GB to fail when created with
+ MPI-I/O file driver on certain platforms. QAK - 2003/09/16
+ - Allow compound datatypes to grow in size. SLU - 2003/09/10
+ - Detect if a type is already packed before attempting to pack it
+ again or check if it is locked. SLU - 2003/09/10
+ - Corrected bug when opening a file twice with read-only permission
+ for one open and then closing the read-only access file ID would
+ generate an error. QAK - 2003/09/10
+ - Corrected bug in repeated calls to H5Pget_access_plist() which would
+ incorrectly manage reference counts of internal information and
+ eventually blow up. QAK - 2003/09/02
+ - Return rank of the array datatype on successful call to
+ H5Tget_array_dims(). QAK - 2003/08/30
+ - Corrected bug in H5Tdetect_class which was not correctly detecting
+ datatype classes of fields in nested compound datatypes in some
+ circumstances. QAK - 2003/08/30
+ - Corrected bug in sieve buffer code which could cause loss of data
+ when a small dataset was created and deleted in quick succession.
+ QAK - 2003/08/27
+ - Corrected bug in H5Gget_objname_by_idx which was not allowing NULL
+ for the name when just querying for the object name's length.
+ QAK - 2003/08/25
+ - Corrected bug in variable-length string handling which could
+ generate a core dump on writing variable-length strings as part
+ of a compound datatype on certain architectures. QAK - 2003/08/25
+ - Corrected bug in H5Tget_native_type which would incorrectly compute
+ the size of certain compound datatypes and also incorrectly
+ compute the offset of the last field for those compound datatypes.
+ QAK - 2003/08/25
+ - Corrected bug in H5Tget_native_type which would drop string datatype
+ metadata (padding, etc.) QAK - 2003/08/25
+ - Corrected bugs in H5Gget_num_objs, H5Gget_objname_by_idx and
+ H5Gget_objtype_by_idx to allow them to accept location IDs, not just
+ group IDs. QAK - 2003/08/21
+ - Corrected bug when using scalar dataspace for memory selection and
+ operating on chunked dataset. QAK - 2003/08/18
+ - Corrected bugs with multiple '/' characters in names for H5Glink
+ and H5Gunlink. QAK - 2003/08/16
+ - Corrected bug with user blocks that didn't allow a user block to
+ be inserted in front of a file after the file was created.
+ QAK - 2003/08/13
+ - Corrected errors with using point selections to access data in
+ chunked datasets. QAK - 2003/07/23
+ - Corrected error with variable-length datatypes and chunked datasets
+ caused H5Dwrite to fail sometimes. QAK - 2003/07/19
+ - Modified library and file format to support storing indexed storage
+ (chunked dataset) B-tree's with non-default internal 'K' values.
+ QAK - 2003/07/15
+ - Returned H5T_BKG_TEMP support to library after it was accidentally
+ removed. QAK - 2003/07/14
+
+ Configuration
+ -------------
+ - Configure can now use any tr command. No more need for
+ defining variable TR nor is it supported. -AKC 2006/05/19
+ - Parallel I/O with the MPI-I/O driver will no longer work if the
+ filesystem is not POSIX compliant. The "HDF5_MPI_1_METAWRITE"
+ environment variable has been removed. QAK - 2004/01/30
+ - Fixed the error that cause "make install" to fail because of the
+ macro definition syntax of "prefix?=..." AKC - 2003/07/22
+
+ Performance
+ -------------
+ - Optimized I/O for enumerated datatypes that are a superset of source
+ enumerated datatype. QAK - 2005/03/19
+ - More optimizations to inner loops of datatype conversions for
+ integers and floats which give a 10-50% speedup. QAK - 2003/11/07
+ - Hoisted invariant 'if/else's out of inner datatype conversion loop for
+ integer and floating-point values, giving about a 20% speedup.
+ QAK - 2003/10/20
+
+ Tools
+ -----
+ - Fixed h5dump regarding the display of blocks in hyperslab
+ selections. PVN 2008/01/16
+ - Fixed h5diff regarding the display of NaN (Not a Number)
+ values. PVN 2008/01/16
+ - Fixed h5dump regarding the parsing of binary output parameters.
+ PVN 2008/01/16
+ - Fixed memory problems in h52gif and gif2h5. PVN 2008/01/16
+ - Fixed h5repack dealing with NULL references. PVN 2008/01/16
+ - Fixed h5dump & h5ls to display attributes in "name" order, rather
+ than the order they are encountered in the object header.
+ QAK - 2007/10/04
+ - Fixed h5dump regarding the display of named datatypes
+ attributes. PVN 2007/03/13
+ - Fixed h5dump regarding the display of group comments. PVN
+ 2007/03/13
+ - Fixed h5dump regarding the display of hardlinks pointing
+ to the root group. PVN 2007/03/13
+ - Fixed h5diff percentage option -p. PVN 2007/03/05
+ - Fixed h5dump that caused array indices greater than 2 ^32-1
+ not to be printed correctly - PVN 2007/2/19
+ - Fixed h5dump to print attributes data in ASCII if -r option is used.
+ AKC - 2004/11/18
+ - Fixed space utilization reported in h5ls to correct error in formula
+ used. QAK - 2004/10/22
+ - Fixed h5redeploy which sometimes complain too many argument for the
+ test command. (The complain did not hinder the h5redploy to
+ proceed correctly.) AKC - 2003/11/03
+ - Fixed a segmentation fault of h5diff when percentage option is used.
+ AKC - 2003/08/27
+ - Switched away from tools using internal "fixtype" function(s) to use
+ H5Tget_native_type() internally. QAK - 2003/08/25
+
+
+ Documentation
+ -------------
+
+
+ F90 APIs
+ --------
+ - h5pget_driver_f was returning information that could not be
+ interpreted by fortran application program; fixed. EIP - 2005/04/10
+
+
+Platforms Tested
+================
+Platforms marked with * were not tested for hdf5-1.8.0-rc* release
+(This information is somewhat out of date and may be inaccurate. It will be
+ updated for a later release)
+
+* AIX 5.2 (32/64 bit) xlc 8.0.0.11
+ xlC 8.0
+ xlf 10.01.0000.0
+ mpcc_r 6.0.0.8
+ mpxlf_r 8.1.1.7
+* AIX 5.3 (32/64 bit) xlc 7.0.0.8
+ xlC 7.0.0.8
+ xlf 09.01.0000.0007
+* Cray X1 water 3.0.35 Cray Standard C Version 5.4.0.7.4
+ Cray Fortran 5.4.0.7.3
+ Cray C++ 5.4.0.7.4
+ FreeBSD 6.2-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
+ (duty) g++ 3.4.6 [FreeBSD] 20060305
+ gcc 4.2.1 20080123
+ g++ 4.2.1 20080123
+ gfortran 4.2.1 20070620
+ FreeBSD 6.2-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
+ (liberty) g++ 3.4.6 [FreeBSD] 20060305
+ gcc 4.2.1 20080123
+ g++ 4.2.1 20080123
+ gfortran 4.2.1 20080123
+
+* HP-UX B.11.23 HP aC++/ANSI C B3910B A.06.00
+ HP F90 v2.9.2
+ HP aC++/ANSI C B3910B A.06.00
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.4.4m
+ F90 MIPSpro 7.4.4m
+ C++ MIPSpro cc 7.4.4m
+
+* Linux 2.6.9 (RHEL4) Intel 10.0 compilers
+ (abe.ncsa.uiuc.edu)
+ Linux 2.4.21-47 gcc 3.2.3 20030502
+ (osage)
+ Linux 2.6.9-42.0.10 gcc 3.4.6 20060404
+ (kagiso) PGI 7.0-7 (pgcc, pgf90, pgCC)
+ Intel 9.1 (icc, ifort, icpc)
+ Linux 2.6.16.27 x86_64 AMD gcc 4.1.0 (SuSE Linux), g++ 4.1.0, g95 (GCC 4.0.3)
+ (smirom) PGI 6.2-5 (pgcc, pgf90, pgCC)
+ Intel 9.1 (icc, iort, icpc)
+ Linux 2.6.5-7.252.1-rtgfx #1
+ SMP ia64 Intel(R) C++ Version 9.0
+ (cobalt) Intel(R) Fortran Itanium(R) Version 9.0
+ SGI MPI
+ SunOS 5.8 32,46 Sun WorkShop 6 update 2 C 5.3
+ (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 95 6.2
+ Sun WorkShop 6 update 2 C++ 5.3
+* SunOS 5.10 i86pc Sun C 5.7
+ Sun Fortran 95 8.1
+ Sun C++ 5.7
+ SunOS 5.10 cc: Sun C 5.8
+ (linew) f90: Sun Fortran 95 8.2
+ CC: Sun C++ 5.8
+ Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
+ (tungsten) gcc 3.2.2 20030222
+ Intel(R) C++ Version 9.0
+ Intel(R) Fortran Compiler Version 9.0
+ IA-64 Linux 2.4.21.SuSE_292.til1 ia64
+ (NCSA tg-login) gcc 3.2.2
+ Intel(R) C++ Version 8.1
+ Intel(R) Fortran Compiler Version 8.1
+ mpich-gm-1.2.5..10-intel-r2
+ Windows XP
+ Visual Studio .NET
+ Visual Studio 2005 w/ Intel Fortran 9.1
+ Cygwin(native gcc compiler and g95)
+ MinGW(native gcc compiler and g95)
+ Windows XP x64
+ Visual Studio 2005 w/ Intel Fortran 9.1
+ Windows Vista
+ Visual Studio 2005
+
+ MAC OS 10.4 (Intel) gcc i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
+ G95 (GCC 4.0.3 (g95 0.91!) Nov 21 2006)
+* Alpha Open VMS 7.3
+
+
+Supported Configuration Features Summary
+(This table was not modified for 1.8.0-rc* release; for information contact help@hdfgroup.org)
+========================================
+
+ In the tables below
+ y = tested and supported
+ n = not supported or not tested in this release
+ x = not working in this release
+ dna = does not apply
+ ( ) = footnote appears below second table
+ = testing incomplete on this feature or platform
+
+Platform C F90 F90 C++ zlib SZIP
+ parallel parallel
+SunOS5.8 64-bit n y n y y y
+SunOS5.8 32-bit n y n y y y
+SunOS5.10 64-bit y(1) y n y y y
+SunOS5.10 32-bit y(1) y n y y y
+IRIX64_6.5 64-bit n y y y y y
+IRIX64_6.5 32-bit n n n n y y
+Cray XT3 (16) n n n n n n
+AIX-5.2 & 5.3 32-bit y y y y y y
+AIX-5.2 & 5.3 64-bit y y y y y y
+Windows XP n y(15) n(15) y y y
+Windows XP x64 n y(15) n(15) y y y
+Windows Vista n n n y y y
+Mac OS X 10.4 PowerPC n n
+FreeBSD 4.11 n n n y y y
+RedHat EL3 W (3) y(1a) y(10) y(1a) y y y
+RedHat EL3 W Intel (3) n y n y y n
+RedHat EL3 W PGI (3) n y n y y n
+SuSe x86_64 gcc (3,12) y(1a) y(11) n y y y
+SuSe x86_64 Int (3,12) n y(13) n y y n
+SuSe x86_64 PGI (3,12) n y(8) n y y y
+Linux 2.4 Xeon C
+ Lustre Intel (3,6) n y n y y n
+Linux 2.6 SuSE ia64 C
+ Intel (3,7) y y y y y n
+Linux 2.6 SGI Altix
+ ia64 Intel (3) y y y y y y
+Alpha OpenVMS 7.3.2 n y n y n n
+
+
+
+Platform Shared Shared Shared static- Thread-
+ C libs F90 libs C++ libs exec safe
+Solaris2.8 64-bit y y y x y
+Solaris2.8 32-bit y y y x y
+Solaris2.10 64-bit y x y
+Solaris2.10 32-bit y x y
+IRIX64_6.5 64-bit y y n y y
+IRIX64_6.5 32-bit y dna y y y
+HPUX11.00 y n y x n
+HPUX11.23-32bit y n n y n
+HPUX11.23-64bit y dna n y n
+Cray XT3 (16) n n n n n
+AIX-5.2 & 5.3 32-bit n n n y n
+AIX-5.2 & 5.3 64-bit n n n y n
+Windows XP y y(15) y y y
+Windows XP x64 y y(15) y y y
+Windows Vista y n n y y
+Mac OS X 10.3 y y n
+Mac OS X 10.4 PowerPC
+FreeBSD 4.11 y n y y y
+RedHat EL3 W (3) y y(10) y y y
+RedHat EL3 W Intel (3) y y y y n
+RedHat EL3 W PGI (3) y y y y n
+SuSe x86_64 W GNU (3,12) y y y y y
+SuSe x86_64 W Int (3,12) y y y y(14) n
+SuSe x86_64 W PGI (3,12) y y y y(14) n
+Linux 2.4 Xeon C
+ Lustre Intel (6) y y y y n
+Linux 2.4 SuSE
+ ia64 C Intel (7) y y y y n
+Linux 2.4 SGI Altix
+ ia64 Intel y y n
+Alpha OpenVMS 7.3.2 n n n y n
+
+ Notes: (1) Using mpich 1.2.6.
+ (1a) Using mpich2 1.0.6.
+ (2) Using mpt and mpich 1.2.6.
+ (3) Linux 2.6 with GNU, Intel, and PGI compilers, as indicated.
+ W or C indicates workstation or cluster, respectively.
+
+ (6) Linux 2.4.21-32.0.1. Xeon cluster with ELsmp_perfctr_lustre
+ and Intel compilers
+ (7) Linux 2.4.21, SuSE_292.till. Ia64 cluster with Intel compilers
+ (8) pgf90
+ (9) With Compaq Visual Fortran 6.6c compiler.
+ (10) With PGI and Absoft compilers.
+ (11) PGI and Intel compilers for both C and Fortran
+ (12) AMD Opteron x86_64
+ (13) ifort
+ (14) Yes with C and Fortran, but not with C++
+ (15) Using Visual Studio 2005 or Cygwin
+ (16) Not tested for this release.
+ Compiler versions for each platform are listed in the preceding
+ "Platforms Tested" table.
+
+
+
+Known Problems
+==============
+* We discovered two problems when running collective IO parallel HDF5 tests
+ with chunking storage on ChaMPIon MPI compiler on tungsten, a linux
+ cluster at NCSA.
+ Under some complex selection cases,
+ 1) MPI_Get_element returns the wrong value.
+ 2) MPI_Type_struct also generates wrong derived data type and corrupt data
+ may be generated.
+ This only happens when turning on collective IO with chunking storage
+ with some complex selections. We haven't found these problems on other
+ MPI-IO compilers. If you encounter these problems, you may use Independent IO
+ instead.
+
+ Change the following line in your code:
+ H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
+
+ to
+ H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
+
+ KY - 2007/08/24
+
+* For SNL, spirit/liberty/thunderbird: The serial tests pass but parallel
+ tests failed with MPI-IO file locking message. AKC - 2007/6/25.
+* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers use
+ -mp -O1 compilation flags to build the libraries. Higher level of optimization
+ causes failures in several HDF5 library tests.
+* For HPUX 11.23 many tools tests failed for 64-bit version when linked to the
+ shared libraries (tested for 1.8.0-beta2)
+* For SNL, Red Storm: only parallel HDF5 is supported. The serial tests pass
+ and the parallel tests also pass with lots of non-fatal error messages.
+* For LLNL, uP: both serial and parallel pass. Zeus: serial passes but
+ parallel fails with a known proglem in MPI. ubgl: serial passes but
+ parallel fails.
+* on SUN 5.10 C++ test fails in the "Testing Shared Datatypes with Attributes" test
+* configuring with --enable-debug=all produces compiler errors on most
+ platforms. Users who want to run HDF5 in debug mode should use
+ --enable-debug rather than --enable-debug=all to enable debugging
+ information on most modules.
+* On Mac OS 10.4, test/dt_arith.c has some errors in conversion from long
+ double to (unsigned) long long and from (unsigned)long long to long double.
+* On Altix SGI with Intel 9.0 testmeta.c would not compile with -O3
+ optimization flag.
+* On VAX, Scaleoffset filter isn't supported. The filter cannot be applied to
+ HDF5 data generated on VAX. Scaleoffset filter only supports IEEE standard
+ for floating-point data.
+* On Cray X1, a lone colon on the command line of h5dump --xml (as in
+ the testh5dumpxml.sh script) is misinterpereted by the operating system
+ and causes an error.
+* On mpich 1.2.5 and 1.2.6, we found that if more than two processes
+ contribute no IO and the application asks to do IO with collective, we found
+ that when using 4 processors, a simple collective write will be hung
+ sometimes. This can be verified with t_mpi test under testpar.
+* On IRIX6.5, when C compiler version >7.4, the complicate MPI derived data type
+ code will work. However, the user should be aware to enlarge MPI_TYPE_MAX environment
+ variable to some certain value in order to use collective irregular selection code.
+ For example, the current parallel HDF5 test needs to enlarge MPI_TYPE_MAX to
+ 200,000 to make the test pass.
+* The dataset created or rewritten with the v1.6.3 library or after can't
+ be read with the v1.6.2 library or before when Fletcher32 EDC(filter) is
+ enabled. There was a bug in the calculating code of the Fletcher32
+ checksum in the library before v1.6.3. The checksum value wasn't consistent
+ between big-endian and little-endian systems. This bug was fixed in
+ Release 1.6.3. However, after fixing the bug, the checksum value is no
+ longer the same as before on little-endian system. The library release
+ after 1.6.4 can still read the dataset created or rewritten with the library
+ of v1.6.2 or before. SLU - 2005/6/30
+* For the version 6(6.02 and 6.04) of Portland Group compiler on AMD Opteron
+ processor, there's a bug in the compiler for optimization(-O2). The library
+ failed in several tests but all related to multi driver. The problem has
+ been reported to the vendor.
+* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
+ messages like "INFO: 0031-XXX ...". This is from the command poe.
+ Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
+ and run the tests again.
+ The tests may fail with messages like "The socket name is already
+ in use". HDF5 does not use sockets (except for stream-VFD). This is
+ due to problems of the poe command trying to set up the debug socket.
+ Check if there are many old /tmp/s.pedb.* staying around. These are
+ sockets used by the poe command and left behind due to failed commands.
+ Ask your system administrator to clean them out. Lastly, request IBM
+ to provide a mean to run poe without the debug socket.
+
+* The C++ library's tests fails when compiling with PGI C++ compiler. The
+ workaround until the problem is correctly handled is to use the
+ flag "--instantiate=local" prior to the configure and build steps, as:
+ setenv CXX "pgCC --instantiate=local" for pgCC 5.02 and higher
+
+
+* The stream-vfd test uses ip port 10007 for testing. If another
+ application is already using that port address, the test will hang
+ indefinitely and has to be terminated by the kill command. To try the
+ test again, change the port address in test/stream_test.c to one not
+ being used in the host.
+
+* The --enable-static-exec configure flag fails to compile for Solaris
+ platforms. This is due to the fact that not all of the system
+ libraries on Solaris are available in a static format.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on IBM SP2 platform for the serial mode. The parallel mode works fine
+ with this option.
+
+ It is suggested that you don't use this option on these platforms
+ during configuration.
+
+* With the gcc 2.95.2 compiler, HDF 5 uses the `-ansi' flag during
+ compilation. The ANSI version of the compiler complains about not being
+ able to handle the `long long' datatype with the warning:
+
+ warning: ANSI C does not support `long long'
+
+ This warning is innocuous and can be safely ignored.
+
+
+* The Stream VFD was not tested yet under Windows. It is not supported
+ in the TFLOPS machine.
+
+
+* The ./dsets tests failed in the TFLOPS machine if the test program,
+ dsets.c, is compiled with the -O option. The hdf5 library still works
+ correctly with the -O option. The test program works fine if it is
+ compiled with -O1 or -O0. Only -O (same as -O2) causes the test
+ program to fail.
+
+* Certain platforms give false negatives when testing h5ls:
+ - Cray J90 and Cray T90IEEE give errors during testing when displaying
+ some floating-point values. These are benign differences due to
+ the different precision in the values displayed and h5ls appears to
+ be dumping floating-point numbers correctly.
+
+* Before building HDF5 F90 Library from source on Crays
+ replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
+ subdirectory in the top level directory with the Cray-specific files
+ from this site:
+ ftp://www.hdfgroup.uiuc.edu/pub/outgoing/hdf5/hdf5-1.8.0-pre/PATCH/
+
+* Not all platforms behave correctly with szip's shared libraries. Szip is
+ disabled in these cases, and a message is relayed at configure time. Static
+ libraries should be working on all systems that support szip, and should be
+ used when shared libraries are unavailable. There is also a configure error
+ on Altix machines that incorrectly reports when a version of szip without
+ an encoder is being used.
+
+* On some platforms that use Intel and Absoft compilers to build HDF5 fortran library,
+ compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90
+ complaining about exit subroutine. Comment out the line
+ IF (total_error .ne. 0) CALL exit (total_error)
+
+* On IA32 and IA64 systems, if you use a compiler other than GCC (such as
+ Intel's ecc or icc compilers), you will need to modify the generated
+ "libtool" program after configuration is finished. On or around line 104 of
+ the libtool file, there are lines which look like:
+
+ # How to pass a linker flag through the compiler.
+ wl=""
+
+ change these lines to this:
+
+ # How to pass a linker flag through the compiler.
+ wl="-Wl,"
+
+ UPDATE: This is now done automatically by the configure script. However, if
+ you still experience a problem, you may want to check this line in the
+ libtool file and make sure that it has the correct value.
+
+* Information about building with PGI and Intel compilers is available in
+ INSTALL file sections 5.7 and 5.8
+
+* On at least one system, (SDSC DataStar), the scheduler (in this case
+ LoadLeveler) sends job status updates to standard error when you run
+ any executable that was compiled with the parallel compilers.
+
+ This causes problems when running "make check" on parallel builds, as
+ many of the tool tests function by saving the output from test runs,
+ and comparing it to an exemplar.
+
+ The best solution is to reconfigure the target system so it no longer
+ inserts the extra text. However, this may not be practical.
+
+ In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
+ the configure and build. This will cause "make check" to continue after
+ detecting errors in the tool tests. However, in the case of SDSC DataStar,
+ it also leaves you with some 150 "failed" tests to examine by hand.
+
+ A second solution is to write a script to run serial tests and filter
+ out the text added by the scheduler. A sample script used on SDSC
+ DataStar is given below, but you will probably have to customize it
+ for your installation.
+
+ Observe that the basic idea is to insert the script as the first item
+ on the command line which executes the the test. The script then
+ executes the test and filters out the offending text before passing
+ it on.
+
+ #!/bin/csh
+
+ set STDOUT_FILE=~/bin/serial_filter.stdout
+ set STDERR_FILE=~/bin/serial_filter.stderr
+
+ rm -f $STDOUT_FILE $STDERR_FILE
+
+ ($* > $STDOUT_FILE) >& $STDERR_FILE
+
+ set RETURN_VALUE=$status
+
+ cat $STDOUT_FILE
+
+ tail +3 $STDERR_FILE
+
+ exit $RETURN_VALUE
+
+ You get the HDF make files and test scripts to execute your filter script
+ by setting the environment variable "RUNSERIAL" to the full path of the
+ script prior to running configure for parallel builds. Remember to
+ "unsetenv RUNSERIAL" before running configure for a serial build.
+
+ Note that the RUNSERIAL environment variable exists so that we can
+ can prefix serial runs as necessary on the target system. On DataStar,
+ no prefix is necessary. However on an MPICH system, the prefix might
+ have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
+ get the serial tests to run at all.
+
+ In such cases, you will have to include the regular prefix in your
+ filter script.
+
+* H5Ocopy() does not copy reg_ref attributes correctly when shared-message
+ is turn on. The value of the reference in the destination attriubte is
+ wrong. This H5Ocopy problem will affect h5copy tool
+
+%%%%1.6.7%%%% Release Information for hdf5-1.6.7 (31/January/08)
+
+HDF5 version 1.6.7 released on Thu Jan 31 21:09:10 CST 2008
+================================================================================
+
+INTRODUCTION
+============
+This document describes the differences between HDF5-1.6.6 and HDF5-1.6.7
+It contains information on the platforms tested and known problems in
+HDF5-1.6.7. For more details, check the HISTORY.txt file in the HDF5 source.
+
+HDF5 documentation can be found in the distributed release source code
+in the subdirectory doc/html/ or on the THG (The HDF Group) FTP server:
+
+ ftp://ftp.hdfgroup.org/HDF5/docs/
+
+Documentation for the current release in the HDF5 Release 1.6.x series is
+also on the HDF web site:
+
+ http://hdfgroup.org/HDF5/doc1.6/
+
+For more information, see the HDF5 home page:
+
+ http://hdfgroup.org/products/hdf5/
+
+If you have any questions or comments, please see the HDF Support page
+for a list of available resources:
+
+ http://hdfgroup.org/services/support.html
+
+
+CONTENTS
+========
+- New Features
+- Support for New Platforms, Languages and Compilers
+- Bug Fixes since HDF5-1.6.6
+- Documentation
+- Platforms Tested
+- Supported Configuration Features Summary
+- Known Problems
+
+
+New Features
+============
+ Configuration:
+ -------------------------
+ '--enable-stream-vfd' and '--disable-stream-vfd' are no longer valid
+ configure options because the stream I/O driver has ben removed from
+ the distribution.
+
+ Source code distribution
+ ========================
+ Library:
+ --------
+ The stream I/O driver is not included with the HDF5 Library in this
+ release. The source code files hdf5/src/H5FDstream.c and
+ hdf5/src/H5FDstream.h and the driver ENUM value H5FD_STREAM have been
+ removed.
+
+ Parallel Library:
+ -----------------
+ None
+
+ Tools:
+ ------
+ None
+
+ F90 API:
+ --------
+ None
+
+ C++ API:
+ --------
+ None
+
+
+Support for New Platforms, Languages and Compilers
+==================================================
+
+No new platorms, languages, or compilers are supported in this release.
+
+
+Bug Fixes since HDF5-1.6.6 Release
+==================================
+
+ Library
+ -------
+ - H5Iget_name could not be used with an object identifier returned
+ by H5Rdereference; the function would not be able to determine
+ a valid object name. It has been fixed. SLU - 2008/1/30
+ - Changed library's behavior for reading files that might have
+ corrupted object header information from a previous (buggy)
+ version of the library. By default, the library now rebuilds the
+ correct object header information instead of issuing an error.
+ Previous "strict" file format interpretation can be enabled with
+ the "--enable-strict-format-checks" configure option.
+ QAK - 2008/01/13
+ - Fixed bug in H5Epush() which was clearing the error stack before
+ pushing new error value. QAK - 2007/08/23
+ - Fixed bug in H5Ewalk() which was not passing back the return value
+ from error stack walking callback. QAK - 2007/08/23
+
+
+ Configuration
+ -------------
+ None
+
+
+ Performance
+ -------------
+ None
+
+
+ Tools
+ -----
+ None
+
+
+ Documentation
+ -------------
+ None
+
+
+ F90 API
+ -------
+ None
+
+
+ C++ API
+ -------
+ None
+
+
+Documentation
+=============
+ HDF5 documentation can be found in the distributed release source
+ code in the subdirectory doc/html/ (start with index.html) or on the
+ THG (The HDF Group) FTP server:
+
+ ftp://ftp.hdfgroup.org/HDF5/docs/
+
+ Online documentation for the current release in the HDF5 Release 1.6.x
+ series can be found on the THG web site:
+
+ http://hdfgroup.org/HDF5/doc1.6/
+
+ A listing of interface changes from release to release can be found
+ in the document "HDF5 Software Changes from Release to Release":
+
+ http://hdfgroup.org/HDF5/doc1.6/ADGuide/Changes.html
+
+ Since the stream I/O driver is not included in this release, the
+ functions H5Pset_fapl_stream and H5Pget_fapl_stream and the stream
+ ENUM value H5FD_STREAM have been removed from the documentation.
+
+
+Platforms Tested
+================
+
+ AIX 5.2 (32/64 bit) xlc 8.0.0.11
+ (datastar) xlC 8.0
+ xlf 10.01.0000.0002
+
+ FreeBSD 6.2 (32- and 64-bit) gcc and g++3.4.6
+ (duty and liberty) gcc and g++ 4.2.1
+
+ IRIX64 6.5 MIPSpro cc 7.4.4m
+ (ucar mop1 64 & n32) F90 MIPSpro 7.4.4m (64 only)
+ C++ MIPSpro cc 7.4.4m
+
+ Linux 2.4.21-47.ELsmp #1 SMP gcc 3.2.3
+ i686 i386 GNU/Linux
+ (osage)
+
+ Linux 2.6.9-42.0.10.ELsmp #1 gcc (GCC) 3.4.6
+ SMP i686 i386 G95 (GCC 4.0.3 (g95 0.91!) April 18 2007)
+ (kagiso) PGI C, Fortran, C++ 7.0-7 32-bit
+ Intel(R) C Compiler for 32-bit
+ applications, Version 9.1
+ Intel(R) C++ Compiler for 32-bit
+ applications, Version 9.1
+ Intel(R) Fortran Compiler for 32-bit
+ applications, Version 9.1
+ Absoft 32-bit Fortran 95 10.0.4
+ MPICH mpich2-1.0.6p1 compiled with
+ gcc 4.2.1 and G95 (GCC 4.0.3 (g95 0.91!)
+
+ Linux 2.6.16.46-0.12-debug #1 Intel(R) C++ Version 10.0.025
+ SMP ia64 GNU/Linux Intel(R) Fortran Itanium(R) Version 10.0.025
+ (ucar hir1)
+
+ Linux 2.6.16.46-0.14-smp #1 Intel(R) C++ for Intel(R) EM64T Ver. 9.1.037
+ SMP x86_64 GNU/Linux Intel(R) Fortran Intel(R) EM64T Ver. 9.1.031
+ (smirom) PGI C, Fortran, C++ Version 7.0-7
+ for 64-bit target on x86-64
+ tested for both 32- and 64-bit binaries
+
+ Linux 2.6.5-7.287.3-sn2 #1 Intel(R) C++ Version 9.0
+ Altix SMP ia64 Intel(R) Fortran Itanium(R) Version 9.0
+ (cobalt) SGI MPI
+
+ SunOS 5.8 32- and 64-bit Sun WorkShop 6 update 2 C 5.3
+ (sol) Sun WorkShop 6 update 2 Fortran 95 6.2
+ Sun WorkShop 6 update 2 C++ 5.3
+
+ SunOS 5.10 32- and 64-bit Sun WorkShop 6 update 2 C 5.8
+ (linew) Sun WorkShop 6 update 2 Fortran 95 8.2
+ Sun WorkShop 6 update 2 C++ 5.8
+ Patch 121019-06
+
+ Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
+ (tungsten) Intel(R) C++ Version 9.0
+ Intel(R) Fortran Compiler Version 9.0
+ PGI C Version 6.0-5
+ PGI C++ Version 6.0-5
+ PGI Fortran Version 6.0-5
+ gcc (GCC) 3.2.2 (Red Hat Linux 3.2.2-5)
+
+ Xeon Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
+ (abe) Intel(R) C++ Version 10.0
+ Intel(R) Fortran Compiler Version 10.0
+ Open MPI 1.2.2
+
+ IA-64 Linux 2.4.21-309.tg1 #1 SMP
+ ia64 gcc (GCC) 3.2.2
+ (NCSA tg-login) Intel(R) C++ Version 8.1
+ Intel(R) Fortran Compiler Version 8.1
+ mpich-gm-1.2.6..14-intel-r2
+
+ Windows XP Visual Studio 6.0
+ Visual Studio .NET (with Intel Fortran 9.1)
+ Visual Studio 2005 (with Intel Fortran 9.1)
+ cygwin (gcc 3.4.4)
+
+ Windows Vista Visual studio 2005
+ MAC OS X Intel Darwin 8.10.1
+ i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
+ g95 0.91
+
+
+Supported Configuration Features Summary
+========================================
+
+Key: y = Tested and supported
+ n = Not supported or not tested in this release
+ C = Cluster
+ W = Workstation
+ ( ) = Footnote appears below second table
+
+Platform C F90 F90 C++ zlib SZIP
+ parallel parallel
+Solaris2.8 32-bit n y n y n y
+Solaris2.8 64-bit n y n n y y
+Solaris2.10 32-bit n y n y y y
+Solaris2.10 64-bit n y n n y y
+IRIX64_6.5 32-bit n n n n y y
+IRIX64_6.5 64-bit n y n n y y
+WinXP Visual Studio 6.0 n n n y y y
+WinXP CYGWIN n n n y y y
+WinXP 2005 n y n y y y
+WinXP .Net n y n y y y
+WinVista 2005 n n n y y y
+Mac OS X 10.4.10 n y n y y y
+AIX-5.2 & 5.3 32- and 64-bit y y y y y y
+FreeBSD 6.2 32- and 64-bit n n n y y y
+RedHat Linux 2.4.21 W n n n n y n
+RedHat Linux 2.6.9-42 i686 GNU (1) W y y y y y y
+RedHat Linux 2.6.9-42 i686 Intel W n y n y y n
+RedHat Linux 2.6.9-42 i686 PGI W n y n y y n
+SuSE Linux 2.6.16 x86_64 GNU (1) W y y n y y y
+SuSE Linux 2.6.16 x86_64 Intel W n y n y y n
+SuSE Linux 2.6.16 x86_64 PGI W n y n y y n
+RHEL 4 Linux 2.6.9 Xeon Lustre C n y n y y y
+RedHat Linux 2.4 Xeon Lustre C n y n y y n
+SuSE Linux 2.4 ia64 C y y y y y y
+SuSe Linux 2.6.5 SGI Altix ia64 n y n y y y
+
+
+Platform Shared static- Thread-
+ libraries(4) exec safe
+Solaris2.8 32- and 64-bit y n y
+Solaris2.10 32- and 64-bit y n y
+IRIX64_6.5 32-bit y n y
+IRIX64_6.5 64-bit y n y
+WinXP Visual Studio 6.0 y n n
+WinXP CYGWIN y n n
+WinXP 2005 y n n
+WinXP .Net y n n
+WinVista 2005 y n n
+Mac OS X 10.4.10 y n n
+AIX-5.2 & 5.3 32- and 64-bit n n n
+FreeBSD 6.2 32- and 64-bit y n n
+RedHat Linux 2.4.21 W y n n
+SuSE Linux 2.6.9-42 i686 GNU (1) W y n y
+SuSE Linux 2.6.9-42 i686 Intel W y n n
+SuSE Linux 2.6.9-42 i686 PGI W n n n
+SuSE Linux 2.6.16 x86_64 GNU (1) W y n y
+SuSE Linux 2.6.16 x86_64 Intel W y n n
+SuSE Linux 2.6.16 x86_64 PGI W n n n
+RHEL 4 Linux 2.6.9 Xeon Lustre C y n n
+RedHat Linux 2.4 Xeon Lustre C y n n
+SuSE Linux 2.4 ia64 C y n n
+SuSe Linux 2.6.5 SGI Altix ia64 n n n
+
+Compiler versions for each platform are listed in the "Platforms Tested"
+table found elsewhere in this file (RELEASE.txt). Unless otherwise noted,
+compilers used are the system compilers.
+
+Footnotes:
+(1) Fortran compiled with g95.
+
+
+Known Problems
+==============
+* We discovered two problems when running collective IO parallel HDF5 tests
+ with chunking storage with the ChaMPIon MPI compiler on tungsten, a Linux
+ cluster at NCSA.
+ Under some complex selection cases,
+ 1) MPI_Get_element returns the wrong value.
+ 2) MPI_Type_struct also generates the wrong derived datatype and corrupt
+ data may be generated.
+ This only happens when turning on collective IO with chunking storage
+ with some complex selections. We haven't found these problems on other
+ MPI-IO compilers. If you encounter these problems, you may use Independent
+ IO instead.
+
+ To avoid this problem, change the following line in your code:
+ H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
+
+ to
+ H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
+
+ KY - 2007/08/24
+
+* QSC (an HP alpha-based OSF1 cluster) does not create h5pfc correctly. It
+ does not include the -lmpi properly. This will be fixed in the next
+ release. AKC - 2007/08/07.
+
+* On IRIX64 6.5 (UCAR SGI mop1), when testing HDF5 tools with an HDF5 shared
+ library, especially for h5repacktst and h52gifgentst, the following (or a
+ similar) error message may appear:
+ "523648:lt-h5repacktst: rld: Fatal Error: Cannot Successfully map soname
+ 'libh5test.so.1' under any of the filenames .......(bunch of directories)
+ "
+ And the testing will fail.
+
+ We believe this is a libtool problem. One way to get rid of this is to
+ add the paths of libh5test.so.1 and libh5.so.1 to the shared library path.
+
+ For 32-bit:
+ You may do this, under csh:
+ setenv LD_LIBRARYN32_PATH .......(existing paths):[full path of HDF5
+ directory/test/.libs]:[full path of HDF5 directory/src/.libs]
+
+ For 64-bit:
+ setenv LD_LIBRARY64_PATH ......(existing paths):[full path of HDF5
+ directory/test/.libs]:[full path of HDF5 directory/src/.libs]
+
+ NOTE: This problem ONLY affects the testing of the HDF5 library when you
+ build from source. It won't affect any applications that would like to link
+ with the HDF5 shared library since the shared library path needs to be set
+ anyway. KY - 2007/8/2
+
+* QSC (an HP alpha-based OSF1 cluster) failed the testpar/testphdf5 sub-test
+ "calloc". All other tests passed. This indicates that a dataset using
+ chunked storage created by serial HDF5 may not work properly with parallel
+ HDF5. The calloc test can be skipped by running "prun ... testphdf5 -x
+ calloc". AKC - 2007/7/12.
+
+* The Intel C Compiler for the Linux x86_64 platform (EM64T-based, v8.1) has
+ an optimization error in the datatypes conversion code. Before running
+ configure, edit the file config/intel-flags by changing the setting of
+ PROD_CFLAGS from -O3 to -O0. Then run configure. AKC - 2005/11/10.
+
+* When testing parallel HDF5 with the C compiler version MIPSpro 7.4.3 on IRIX
+ 6.5, set the environment variable MPI_TYPE_MAX to be a bigger number, for
+ example 120000, in order to pass the complicated collective IO tests inside
+ the parallel HDF5 library. This is not a problem inside the parallel HDF5
+ library. You can always set a bigger number on your system. KY - 2005/10/6
+
+* A contiguous or chunked dataset created by a sequential version of HDF5
+ might not be able to be modified with a parallel version of the library.
+ Use the H5Pset_alloc_time function with H5D_ALLOC_TIME_EARLY to set up the
+ dataset creation property list to avoid the problem. EIP - 2005/09/09
+
+* A dataset created or rewritten with the v1.6.3 library or after can't
+ be read with the v1.6.2 library or before when Fletcher32 EDC (a filter) is
+ enabled. There was a bug in the calculating code of the Fletcher32
+ checksum in the library before v1.6.3. The checksum value wasn't consistent
+ between big-endian and little-endian systems. This bug was fixed in
+ Release 1.6.3. However, after fixing the bug, the checksum value is no
+ longer the same as before on little-endian system. HDF5 library releases
+ after 1.6.4 can still read datasets created or rewritten with an HDF5
+ library of v1.6.2 or before. SLU - 2005/7/8
+
+* For version 6 (6.02 and 6.04) of the Portland Group compiler on AMD Opteron
+ processor, there's a bug in the compiler for optimization(-O2). The library
+ failed in several tests, all related to the multi driver. The problem has
+ been reported to the vendor.
+
+* test/big fails sometimes with the message "Possible overlap with another
+ region." The test selects regions randomly, and this error occurs when
+ two regions overlap each other; it is a bug in the test and not in
+ HDF5. Since the error is triggered by a random situation, it will
+ usually disappear if the test is re-run.
+
+* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but
+ have a "guard" statement in stdint.h that will #error and skip the rest
+ of the header file if the C99 option is not used explicitly. Hardsetting
+ $CC to c99 will resolve the problem. AKC - 2004/12/13
+
+* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
+ messages like "INFO: 0031-XXX ...". This is from the command poe.
+ Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
+ and run the tests again.
+
+ The tests may also fail with messages like "The socket name is already
+ in use". HDF5 does not use sockets. This is due to problems of the
+ poe command trying to set up the debug socket. Check whether there are
+ many old /tmp/s.pedb.* files staying around. These are sockets used by
+ the poe command and left behind due to failed commands. Ask your system
+ administrator to clean them out. Lastly, request IBM to provide a means
+ to run poe without the debug socket.
+
+* The h5dump tests may fail to match the expected output on some platforms
+ (e.g. parallel jobs, Windows) where the error messages directed to
+ "stderr" do not appear in the "right order" with output from stdout.
+ This is not an error.
+
+* The --enable-static-exec configure flag fails to compile for Solaris
+ platforms. This is due to the fact that not all of the system
+ libraries on Solaris are available in a static format.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on the IBM SP2 platform for the serial mode. The parallel mode works fine
+ with this option.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on the HPUX 11.00.
+
+ It is suggested that you don't use this option on these platforms
+ during configuration.
+
+* Use the --disable-shared configure flag if building with an Absoft Fortran
+ compiler.
+
+* Information about building with PGI and Intel compilers is available in
+ INSTALL file sections 5.7 and 5.8.
+
+* In LANL QSC, the new cc compiler has problems converting small values of
+ long long (absolute values less than 1**-308) to double. This triggers
+ the test/dtypes to report failure in the following test:
+ Testing random sw long double -> double conversions
+ If -ieee is used, the converted doubles spread over the range 0.0 to
+ 10**-308. If -ieee is not used, the converted double values are mostly
+ 0.0, but occasionally appear as 10**-308. This has been reported to the
+ system staff.
+
+ All other tests have passed.
+
+* On at least one system, SDSC DataStar, the scheduler (in this case
+ LoadLeveler) sends job status updates to standard error when you run
+ any executable that was compiled with the parallel compilers.
+
+ This causes problems when running "make check" on parallel builds, as
+ many of the tool tests function by saving the output from test runs,
+ and comparing it to an exemplar.
+
+ The best solution is to reconfigure the target system so it no longer
+ inserts the extra text. However, this may not be practical.
+
+ In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
+ the configure and build. This will cause "make check" to continue after
+ detecting errors in the tool tests. However, in the case of SDSC DataStar,
+ it also leaves you with some 150 "failed" tests to examine by hand.
+
+ A second solution is to write a script to run serial tests and filter
+ out the text added by the scheduler. A sample script used on SDSC
+ DataStar is given below, but you will probably have to customize it
+ for your installation.
+
+ Observe that the basic idea is to insert the script as the first item
+ on the command line which executes the test. The script then
+ executes the test and filters out the offending text before passing
+ it on.
+
+ #!/bin/csh
+
+ set STDOUT_FILE=~/bin/serial_filter.stdout
+ set STDERR_FILE=~/bin/serial_filter.stderr
+
+ rm -f $STDOUT_FILE $STDERR_FILE
+
+ ($* > $STDOUT_FILE) >& $STDERR_FILE
+
+ set RETURN_VALUE=$status
+
+ cat $STDOUT_FILE
+
+ tail +3 $STDERR_FILE
+
+ exit $RETURN_VALUE
+
+ You get the HDF5 make files and test scripts to execute your filter script
+ by setting the environment variable "RUNSERIAL" to the full path of the
+ script prior to running configure for parallel builds. Remember to
+ "unsetenv RUNSERIAL" before running configure for a serial build.
+
+ Note that the RUNSERIAL environment variable exists so that we can
+ prefix serial runs as necessary on the target system. On DataStar,
+ no prefix is necessary. However, on an MPICH system, the prefix might
+ have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
+ get the serial tests to run at all.
+
+ In such cases, you will have to include the regular prefix in your
+ filter script. JM - 2004/9/15
+
+%%%%1.6.6%%%% Release Information for hdf5-1.6.6 (16/August/08)
+
+HDF5 version 1.6.6 released on Thu Aug 16 11:17:10 CDT 2007
+================================================================================
+
+INTRODUCTION
+============
+This document describes the differences between HDF5-1.6.5 and
+HDF5-1.6.6 It contains information on the platforms tested and
+known problems in HDF5-1.6.6. For more details, check the HISTORY.txt
+file in the HDF5 source.
+
+HDF5 documentation can be found in the distributed release source
+code in the subdirectory doc/html/ or on the THG (The HDF Group)
+ftp server (ftp.hdfgroup.org) in the directory:
+
+ /HDF5/docs/
+
+Documentation for the current release is also on the HDF web site:
+
+ http://hdfgroup.org/HDF5/doc/
+
+For more information, see the HDF5 home page at:
+
+ http://hdfgroup.org/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ help@hdfgroup.org
+
+
+CONTENTS
+========
+- New Features
+- Support for New Platforms, Languages and Compilers
+- Bug Fixes since HDF5-1.6.5
+- Documentation
+- Platforms Tested
+- Supported Configuration Features Summary
+- Known Problems
+
+
+New Features
+============
+ Configuration:
+ -------------------------
+ - HDF5 now uses autoconf 2.61 to generate configure. MAM - 2007/7/25.
+
+ Source code distribution
+ ========================
+ Library:
+ --------
+ - None
+
+ Parallel Library:
+ -----------------
+ - None
+
+ Tools:
+ ------
+ - h52gif and gif2h5: Both these tools were revised to include High
+ Level Image API support. Tests were added to /hl/tools/gif2h5.
+ PVN - 2007/04/13
+ - h5dump: Added support for double long type H5T_NATIVE_LDOUBLE.
+ PVN - 2007/03/13
+ - h5dump: Added support for binary output; see usage. PVN 2007/03/13
+ - h5repack: Added support for reading and writing by hyperslabs for
+ large files. PVN - 2007/03/01
+ - h5repack: A new option allows the copy to use the source file type
+ (default) instead of the previous conversion to native type.
+ PVN - 2007/03/01
+ - h5repack: Added output of the percentage of compression achieved.
+ PVN - 2007/03/01
+ - h5diff: Added support for comparing dataset regions. PVN -
+ 2007/02/20
+ - h5diff: Added support for reading and comparing by hyperslabs for
+ large files. PVN - 2007/02/20
+ - h5diff: Added printing of dataset dimensions along with dataset
+ name.
+ PVN - 2007/02/19
+
+ F90 API:
+ --------
+ - None
+
+ C++ API:
+ --------
+ - Added support for Szip: DSetCreatPropList::setSzip - BMR 2007/01/24
+
+
+Support for New Platforms, Languages and Compilers
+==================================================
+ - Added support for MAC Intel (Darwin 8.8.2) (gcc 4.0.1 and g95 0.91)
+ EIP - 2007/02/13
+ - Added support for GNU C compiler version 4.2.1 for FreeBSD 6.2
+ (32- and 64-bit)
+
+
+Bug Fixes since HDF5-1.6.5 Release
+==================================
+
+ Library
+ -------
+ - Fixed several bugs with writing fill values for datasets that have
+ a variable-length datatype or component datatype. QAK -
+ 2007/06/19
+ - STDIO driver didn't support files bigger than 2GB because the OFFSET
+ parameter of fseek is of type LONG INT, not big enough for big
+ files. Use fseeko instead for big files if it's available on the
+ system. SLU - 2007/4/5
+ - Relaxed restrictions on attribute operations to allow a file ID to
+ be used as the "location ID". If a file ID is used, the attribute
+ operation will occur on the root group of the file.
+ QAK - 2007/02/09
+ - Fixed a bug in H5Sselect_valid() that caused an incorrect value to
+ be returned (0) instead of FAIL on error conditions such as the
+ selection or extent not being defined. CMC - 2007/01/05
+ - Fixed potential file corruption bug which could overwrite a portion
+ of an object's header when an attribute was renamed. If the new
+ name for the attribute was longer than the old name, it was
+ possible
+ that the attribute would grow enough to overwrite another message
+ in the object's header. QAK - 2007/01/02
+ - Fixed file corruption bug which could write an incorrect number of
+ messages to an object's header under certain circumstances.
+ Generally, the sequence of actions to generate this bug looks
+ like this:
+ - Create an object.
+ - Close the file.
+ - Re-open the file.
+ - Add 2 (or more) attributes to the object.
+ - Close the file.
+ - Re-open the file.
+ - Delete one of the attributes on the object.
+ - Add a smaller attribute to the object.
+ - Delete the smaller attribute on the object.
+ - Add a larger attribute on the object.
+
+ After this, the number of header messages stored for the object
+ will be off by one. Other sequences of modifying attributes on an
+ object could also trigger this bug. If you are opening an
+ object and the bottom few messages of the HDF5 error stack
+ resembles the following, the object has been affected by this bug:
+
+ #007: ../../hdf5_v1.6/src/H5C.c line 3887 in H5C_load_entry():
+ unable to load entry
+ major(08): Meta data cache layer
+ minor(40): Unable to load metadata into cache
+ #008: ../../hdf5_v1.6/src/H5Ocache.c line 332 in H5O_load():
+ corrupt object header - too few messages
+ major(12): Object header layer
+ minor(40): Unable to load metadata into cache
+
+ Specifically, "corrupt object header" is the best string to search
+ for in the HDF5 error stack output.
+
+ If your files have been affected by this bug, or you are concerned
+ that your files might have been, please contact the HDF Helpdesk
+ at help@hdfgroup.org for a tool to detect and repair files
+ affected by this problem. QAK - 2006/6/16
+
+ - Fixed various problems with retrieving names of objects, especially
+ with mounted files. QAK - 2005/12/25
+
+ Configuration
+ -------------
+ - Changed to default to --disable-shared if parallel is enabled.
+ AKC - 2007/5/12
+ - Corrected a coding error in configure when it tries to locate the
+ needed MPI and MPI-IO library for the fortran interface.
+ AKC - 007/5/9.
+ - Changed default fortran compiler to g95 when gcc is used.
+ AKC - 007/2/17.
+ - Configure can now use any tr command. No more need for
+ defining the variable TR, nor is it supported. AKC - 2006/05/20
+
+ Performance
+ -------------
+ - None
+
+ Tools
+ -----
+ - Fixed a bug in h5dump regarding the display of named datatypes
+ attributes. PVN - 2007/03/13
+ - Fixed a bug in h5dump regarding the display of group comments.
+ PVN - 2007/03/13
+ - Fixed a bug in h5dump regarding the display of hardlinks pointing
+ to the root group. PVN - 2007/03/13
+ - Fixed a bug in the h5diff percentage option -p. PVN - 2007/03/05
+ - Fixed a bug in h5dump that caused array indices greater than 2^32-1
+ not to be printed correctly. PVN - 2007/2/19
+
+ Documentation
+ -------------
+ - Corrected errors and extended the descriptions in Reference Manual
+ entries for several functions.
+
+ F90 API
+ -------
+ - None
+
+ C++ API
+ -------
+ - Changed
+ StrType::StrType(const size_t& size);
+ to
+ StrType::StrType(const int dummy, const size_t& size);
+ because the first one clashed with
+ StrType::StrType(const hid_t existing_id); - BMR 2007/05/03
+ - Wrappers of H5Rcreate had incorrect prototypes. Added these
+ overloaded functions:
+ IdComponent::reference(void* ref, const char* name,
+ DataSpace& dataspace, H5R_type_t ref_type = H5R_DATASET_REGION)
+ IdComponent::void reference(void* ref, const char* name)
+ IdComponent::reference(void* ref, const H5std_string& name)
+ and will remove these incorrect member functions:
+ DataSet::Reference
+ DataType::Reference
+ Group::Reference
+ H5File::Reference
+ - Added wrappers for H5Rdereference as constructors:
+ DataSet(IdComponent& obj, void* ref);
+ Group(IdComponent& obj, void* ref);
+ DataType(IdComponent& obj, void* ref);
+
+
+Documentation
+=============
+
+ HDF5 documentation can be found in the distributed release source
+ code in the subdirectory doc/html/ (start with index.html) or on the
+ THG (The HDF Group) ftp server (ftp.hdfgroup.org) in the directory:
+
+ /HDF5/docs/
+
+ Online documentation for the current release can be found on the THG
+ web site:
+
+ http://hdfgroup.org/HDF5/doc/
+
+
+Platforms Tested
+================
+
+ AIX 5.2 (32/64 bit) xlc 6.0.0.8
+ (datastar) xlC 6.0.0.9
+ xlf 8.1.1.7
+ mpcc_r 6.0.0.8
+ mpxlf_r 8.1.1.7
+
+ AIX 5.3 (32/64 bit) xlc 7.0.0.0
+ (copper) xlC 7.0.
+ xlf 9.1.0.3
+
+ FreeBSD 6.2 (32- and 64-bit) gcc and g++3.4.6
+ (duty and liberty) gcc and g++ 4.2.1
+
+ HP-UX B.11.23 HP aC++/ANSI C B3910B A.06.02
+ (sirius) HP F90 v3.1 (32-bit only)
+ HP aC++/ANSI C B3910B A.06.02
+
+ IRIX64 6.5 MIPSpro cc 7.4.4m
+ (ucar mop1 64 & n32) F90 MIPSpro 7.4.4m (64 only)
+ C++ MIPSpro cc 7.4.4m
+
+ Linux 2.4.21-47.ELsmp #1 SMP gcc 3.2.3
+ i686 i386 GNU/Linux
+ (osage)
+
+ Linux 2.6.9-42.0.10.ELsmp #1 gcc (GCC) 3.4.6
+ SMP i686 i386 G95 (GCC 4.0.3 (g95 0.91!) Nov 21 2006)
+ (kagiso) PGI C, Fortran, C++ 6.2-5 32-bit
+ icc (ICC) 9.1
+ Intel(R) C++ Compiler for 32-bit
+ applications, Version 9.1
+ Intel(R) Fortran Compiler for 32-bit
+ applications, Version 9.1
+ Absoft 32-bit Fortran 95 10.0.4
+ MPICH mpich2-1.0.4p1 compiled with
+ gcc 3.4.6 and G95 (GCC 4.0.3 (g95 0.91!)
+
+ Linux 2.6.16.46-0.12-debug #1
+ SMP ia64 GNU/Linux Intel(R) C++ Version 10.0.025
+ (ucar hir1) Intel(R) Fortran Itanium(R) Version 10.0.025
+
+ Linux 2.6.16.46-0.14-smp #1 Intel(R) C++ for Intel(R) EM64T Ver. 9.1.037
+ SMP x86_64 GNU/Linux Intel(R) Fortran Intel(R) EM64T Ver. 9.1.031
+ (smirom) PGI C, Fortran, C++ Version 6.2-5
+ for 64-bit target on x86-64
+ tested for both 32- and 64-bit binaries
+
+ Linux 2.6.5-7.283-rtgfx Altix
+ SMP ia64 Intel(R) C++ Version 9.0
+ (cobalt) Intel(R) Fortran Itanium(R) Version 9.0
+ SGI MPI
+
+ OSF1 V5.1 (QSC) Compaq C V6.5-011
+ (See "Known Problems.") HP Fortran V5.5A-3548
+ Compaq C++ V6.5-036
+ MPIX200_64_r13.4
+
+ SunOS 5.8 32- and 64-bit Sun WorkShop 6 update 2 C 5.3
+ (sol) Sun WorkShop 6 update 2 Fortran 95 6.2
+ Sun WorkShop 6 update 2 C++ 5.3
+
+ SunOS 5.10 32- and 64-bit Sun WorkShop 6 update 2 C 5.8
+ (linew) Sun WorkShop 6 update 2 Fortran 95 8.2
+ Sun WorkShop 6 update 2 C++ 5.8
+ Patch 121019-06
+
+ Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
+ (tungsten) Intel(R) C++ Version 9.0
+ Intel(R) Fortran Compiler Version 9.0
+ PGI C Version 6.0
+ PGI C++ Version 6.0
+ PGI Fortran Version 6.0
+ gcc (GCC) 3.2.2 (Red Hat Linux 3.2.2-5)
+
+ Xeon Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
+ (abe) Intel(R) C++ Version 10.0
+ Intel(R) Fortran Compiler Version 10.0
+ Open MPI 1.2.2
+
+ IA-64 Linux 2.4.21.SuSE_292.til1
+ ia64 gcc (GCC) 3.2.2
+ (NCSA tg-login) Intel(R) C++ Version 8.0
+ Intel(R) Fortran Compiler Version 8.0
+ mpich-gm-1.2.5..10-intel-r2
+
+ Windows XP Visual Studio 6.0
+ Visual Studio .NET (with Intel Fortran 9.0)
+ Visual Studio 2005 (with Intel Fortran 9.0)
+ cygwin (gcc 3.4.4)
+
+ MAC OS X Intel Darwin 8.10.1
+ i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
+ g95 0.91
+
+
+Supported Configuration Features Summary
+========================================
+
+Key: y = Tested and supported
+ n = Not supported or not tested in this release
+ C = Cluster
+ W = Workstation
+ ( ) = Footnote appears below second table
+
+Platform C F90 F90 C++ zlib SZIP
+ parallel parallel
+Solaris2.8 32- and 64-bit n y n y y y
+Solaris2.10 32- and 64-bit n y n y y y
+IRIX64_6.5 32-bit n n n n y y
+IRIX64_6.5 64-bit n y n n y y
+HPUX11.23-32bit n y n y y y
+HPUX11.23-64bit n n n y y y
+WinXP Visual Studio 6.0 n n n y y y
+WinXP CYGWIN n n n y y y
+WinXP 2005 n y n y y y
+WinXP .Net n y n y y y
+Mac OS X 10.4.10 n y n y y y
+AIX-5.2 & 5.3 32- and 64-bit y y y y y y
+FreeBSD 6.2 32- and 64-bit n n n y y y
+RedHat Linux 2.4.21 W n n n y y y
+SuSE Linux 2.6.9-42 i686 GNU (1) W y y y y y y
+SuSE Linux 2.6.9-42 i686 Intel W n y n y y y
+SuSE Linux 2.6.9-42 i686 PGI W n y n y y y
+SuSE Linux 2.6.16 x86_64 GNU (1) W y y y y y y
+SuSE Linux 2.6.16 x86_64 Intel W n y n y y y
+SuSE Linux 2.6.16 x86_64 PGI W n y n y y y
+RHEL 4 Linux 2.6.9 Xeon Lustre C y y y y y y
+RedHat Linux 2.4 Xeon Lustre C n y n y y y
+SuSE Linux 2.4 ia64 C y y y y y y
+SuSe Linux 2.6.16 SGI Altix ia64 n y n y y y
+SuSe Linux 2.6.5 SGI Altix ia64 n y n y y y
+OSF1 v5.1 y y y y y n
+
+
+Platform Shared static- Thread- STREAM-
+ libraries(4) exec safe VFD
+Solaris2.8 32- and 64-bit y n y y
+Solaris2.10 32- and 64-bit y n y y
+IRIX64_6.5 32-bit y n y y
+IRIX64_6.5 64-bit y n y y
+HPUX11.23-32bit y (3) n n y
+HPUX11.23-64bit y (3) n n y
+WinXP Visual Studio 6.0 y n n n
+WinXP CYGWIN y n n n
+WinXP 2005 y n n n
+WinXP .Net y n n n
+Mac OS X 10.4.10 y n n y
+AIX-5.2 & 5.3 32- and 64-bit n n n y
+FreeBSD 6.2 32- and 64-bit y n n y
+RedHat Linux 2.4.21 W y n n y
+SuSE Linux 2.6.9-42 i686 GNU (1) W y n y y
+SuSE Linux 2.6.9-42 i686 Intel W y n n y
+SuSE Linux 2.6.9-42 i686 PGI W n n n y
+SuSE Linux 2.6.16 x86_64 GNU (1) W y n n y
+SuSE Linux 2.6.16 x86_64 Intel W y n n y
+SuSE Linux 2.6.16 x86_64 PGI W n n n y
+RHEL 4 Linux 2.6.9 Xeon Lustre C y n n y
+RedHat Linux 2.4 Xeon Lustre C y n n y
+SuSE Linux 2.4 ia64 C y n n y
+SuSe Linux 2.6.16 SGI Altix ia64 n n n y
+SuSe Linux 2.6.5 SGI Altix ia64 n n n y
+OSF1 v5.1 n n n y
+
+Compiler versions for each platform are listed in the "Platforms Tested"
+table found elsewhere in this file (RELEASE.txt). Unless otherwise noted,
+compilers used are the system compilers.
+
+Footnotes:
+(1) Fortran compiled with g95.
+(2) In most cases, shared libraries are provided only for the C library,
+ except on Windows where they are provided for C, C++, and Fortran.
+(3) C++ works only with static libraries.
+
+
+Known Problems
+==============
+* QSC (an HP alpha-based OSF1 cluster) does not create h5pfc correctly. It
+ does not include the -lmpi properly. This will be fixed in the next
+ release. AKC - 2007/08/07.
+
+* On IRIX64 6.5 (UCAR SGI mop1), when testing HDF5 tools with an HDF5 shared
+ library, especially for h5repacktst and h52gifgentst, the following (or
+ similar) error message may appear:
+ "523648:lt-h5repacktst: rld: Fatal Error: Cannot Successfully map soname
+ 'libh5test.so.1' under any of the filenames .......(bunch of directories)
+ "
+ And the testing will fail.
+ We believe this is a libtool problem. One way to get rid of this is to
+ add the paths of libh5test.so.1 and libh5.so.1 to the shared library path.
+
+ For 32-bit:
+ You may do this, under csh:
+ setenv LD_LIBRARYN32_PATH .......(existing paths):[full path of HDF5
+ directory/test/.libs]:[full path of HDF5 directory/src/.libs]
+
+ For 64-bit:
+ setenv LD_LIBRARY64_PATH ......(existing paths):[full path of HDF5
+ directory/test/.libs]:[full path of HDF5 directory/src/.libs]
+
+ NOTE: This problem ONLY affects the testing of the HDF5 library when you
+ build from source. It won't affect any applications that would like to link
+ with the HDF5 shared library since the shared library path needs to be set
+ anyway. KY - 2007/8/2
+
+* QSC (an HP alpha-based OSF1 cluster) failed the testpar/testphdf5 sub-test
+ "calloc". All other tests passed. This indicates that a dataset using
+ chunked storage created by serial HDF5 may not work properly with parallel
+ HDF5. The calloc test can be skipped by running "prun ... testphdf5 -x
+ calloc". AKC - 2007/7/12.
+
+* The Intel C Compiler for the Linux x86_64 platform (EM64T-based, v8.1) has
+ an optimization error in the datax types conversion code. Before running
+ configure, edit the file config/intel-flags by changing the setting of
+ PROD_CFLAGS from -O3 to -O0. Then run configure. AKC - 2005/11/10.
+
+* When testing parallel HDF5 with the C compiler version MIPSpro 7.4.3 on IRIX
+ 6.5, set the environment variable MPI_TYPE_MAX to be a bigger number, for
+ example 120000, in order to pass the complicated collective IO tests inside
+ the parallel HDF5 library. This is not a problem inside the parallel HDF5
+ library. You can always set a bigger number on your system. KY - 2005/10/6
+
+* A contiguous or chunked dataset created by a sequential version of HDF5
+ might not be able to be modified with a parallel version of the library.
+ Use the H5Pset_alloc_time function with H5D_ALLOC_TIME_EARLY to set up the
+ dataset creation property list to avoid the problem. EIP - 2005/09/09
+
+* The dataset created or rewritten with the v1.6.3 library or after can't
+ be read with the v1.6.2 library or before when Fletcher32 EDC (a filter) is
+ enabled. There was a bug in the calculating code of the Fletcher32
+ checksum in the library before v1.6.3. The checksum value wasn't consistent
+ between big-endian and little-endian systems. This bug was fixed in
+ Release 1.6.3. However, after fixing the bug, the checksum value is no
+ longer the same as before on little-endian system. The library release
+ after 1.6.4 can still read the dataset created or rewritten with the library
+ of v1.6.2 or before. SLU - 2005/7/8
+
+* For version 6 (6.02 and 6.04) of the Portland Group compiler on AMD Opteron
+ processor, there's a bug in the compiler for optimization(-O2). The library
+ failed in several tests, all related to the multi driver. The problem has
+ been reported to the vendor.
+
+* test/big fails sometimes with the message "Possible overlap with another
+ region." The test selects regions randomly, and this error occurs when
+ two regions overlap each other; it is a bug in the test and not in
+ HDF5. Since the error is triggered by a random situation, it will
+ usually disappear if the test is re-run.
+
+* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but
+ have a "guard" statement in stdint.h that will #error and skip the rest
+ of the header file if the C99 option is not used explicitly. Hardsetting
+ $CC to c99 will resolve the problem. AKC - 2004/12/13
+
+* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
+ messages like "INFO: 0031-XXX ...". This is from the command poe.
+ Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
+ and run the tests again.
+
+ The tests may also fail with messages like "The socket name is already
+ in use". HDF5 does not use sockets (except for stream-VFD). This is
+ due to problems of the poe command trying to set up the debug socket.
+ Check whether there are many old /tmp/s.pedb.* files staying around. These
+ are sockets used by the poe command and left behind due to failed commands.
+ Ask your system administrator to clean them out. Lastly, request IBM
+ to provide a means to run poe without the debug socket.
+
+* The h5dump tests may fail to match the expected output on some platforms
+ (e.g. parallel jobs, Windows) where the error messages directed to
+ "stderr" do not appear in the "right order" with output from stdout.
+ This is not an error.
+
+* The stream-vfd test uses ip port 10007 for testing. If another
+ application is already using that port address, the test will hang
+ indefinitely and has to be terminated by the kill command. To try the
+ test again, change the port address in test/stream_test.c to one not
+ being used in the host.
+
+* The --enable-static-exec configure flag fails to compile for Solaris
+ platforms. This is due to the fact that not all of the system
+ libraries on Solaris are available in a static format.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on the IBM SP2 platform for the serial mode. The parallel mode works fine
+ with this option.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on the HPUX 11.00.
+
+ It is suggested that you don't use this option on these platforms
+ during configuration.
+
+* The Stream VFD is not supported under Windows.
+
+* Use the --disable-shared configure flag if building with Absoft Fortran
+ compiler.
+
+* Information about building with PGI and Intel compilers is available in
+ INSTALL file sections 5.7 and 5.8.
+
+* In LANL QSC, the new cc compiler has problems converting small values of
+ long long (absolute values less than 1**-308) to double. This triggers
+ the test/dtypes to report failure in the following test:
+ Testing random sw long double -> double conversions
+ If -ieee is used, the converted doubles spread over the range 0.0 to
+ 10**-308. If -ieee is not used, the converted double values are mostly
+ 0.0, but occasionally appear as 10**-308. This has been reported to the
+ system staff.
+
+ All other tests have passed.
+
+* On at least one system, SDSC DataStar, the scheduler (in this case
+ LoadLeveler) sends job status updates to standard error when you run
+ any executable that was compiled with the parallel compilers.
+
+ This causes problems when running "make check" on parallel builds, as
+ many of the tool tests function by saving the output from test runs,
+ and comparing it to an exemplar.
+
+ The best solution is to reconfigure the target system so it no longer
+ inserts the extra text. However, this may not be practical.
+
+ In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
+ the configure and build. This will cause "make check" to continue after
+ detecting errors in the tool tests. However, in the case of SDSC DataStar,
+ it also leaves you with some 150 "failed" tests to examine by hand.
+
+ A second solution is to write a script to run serial tests and filter
+ out the text added by the scheduler. A sample script used on SDSC
+ DataStar is given below, but you will probably have to customize it
+ for your installation.
+
+ Observe that the basic idea is to insert the script as the first item
+ on the command line which executes the test. The script then
+ executes the test and filters out the offending text before passing
+ it on.
+
+ #!/bin/csh
+
+ set STDOUT_FILE=~/bin/serial_filter.stdout
+ set STDERR_FILE=~/bin/serial_filter.stderr
+
+ rm -f $STDOUT_FILE $STDERR_FILE
+
+ ($* > $STDOUT_FILE) >& $STDERR_FILE
+
+ set RETURN_VALUE=$status
+
+ cat $STDOUT_FILE
+
+ tail +3 $STDERR_FILE
+
+ exit $RETURN_VALUE
+
+ You get the HDF5 make files and test scripts to execute your filter script
+ by setting the environment variable "RUNSERIAL" to the full path of the
+ script prior to running configure for parallel builds. Remember to
+ "unsetenv RUNSERIAL" before running configure for a serial build.
+
+ Note that the RUNSERIAL environment variable exists so that we can
+ prefix serial runs as necessary on the target system. On DataStar,
+ no prefix is necessary. However, on an MPICH system, the prefix might
+ have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
+ get the serial tests to run at all.
+
+ In such cases, you will have to include the regular prefix in your
+ filter script. JM - 2004/9/15
+
+
+%%%%1.6.5%%%% Release Information for hdf5-1.6.5 (10/November/05)
+
+
+HDF5 version 1.6.5 released on Thu Nov 10 18:17:53 CST 2005
+================================================================================
+
+INTRODUCTION
+============
+This document describes the differences between HDF5-1.6.4 and
+HDF5-1.6.5. It contains information on the platforms tested and
+known problems in HDF5-1.6.5. For more details, check the HISTORY.txt
+file in the HDF5 source.
+
+The HDF5 documentation can be found on the NCSA ftp server
+(ftp.ncsa.uiuc.edu) in the directory:
+
+ /HDF/HDF5/docs/
+
+Documentation for the current release is also on the HDF web site:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/doc/
+
+For more information look at the HDF5 home page at:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ hdfhelp@ncsa.uiuc.edu
+
+
+CONTENTS
+========
+- New Features
+- Support for New Platforms, Languages and Compilers
+- Bug Fixes since HDF5-1.6.4
+- Documentation
+- Platforms Tested
+- Supported Configuration Features Summary
+- Known Problems
+
+
+New Features
+============
+ Configuration:
+ -------------------------
+ - Added yodconfigure, a configure tool, that patches up the configure
+ file to allow configure to launch executable via the proper
+ launching command like "yod -sz 1". AKC - 2005/11/10
+ - Configure now recognizes the TR variable as the location of the
+ tr utility. JML 2005/10/20
+
+ Source code distribution:
+ -------------------------
+ - Added g95 as a testing "platform" informally. AKC - 2005/10/04.
+ - Added MD5 checksumming to snapshot releases. Releases will now
+ produce an .md5 file as well as a .tar archive. md5sum can be
+ used to verify the arvhice with the .md5 checksum. -JL 2005/09/06
+
+ Library:
+ --------
+ - Added HSYS_ERROR which retrieves the system error message and pushes
+ it to the error stack. This provides more information regarding the
+ failed system call. AKC - 2005/08/04
+ - Added H5F_OBJ_LOCAL flag to H5Fget_obj_count() & H5Fget_obj_ids(), to
+ allow querying for objects in a file that was opened with a particular
+ file ID, instead of all objects opened in the file with any file ID.
+ QAK - 2005/06/01
+
+ Parallel Library:
+ -----------------
+ - Added mpich2 as a testing "platform" informally. AKC - 2005/10/04.
+ - HDF5 supports collective MPI-IO for irregular selection with HDF5
+ dataset. Irregular selection is when users use API H5Sselect_hyperslab
+ more than once for the same dataset.
+ Currently, not all MPI-IO packages support the complicated
+ MPI derived datatypes used in the implementation of irregular
+ selections INSIDE HDF5.
+ 1) DEC 5.x wdoes not support complicated derived datatypes.
+ 2) For AIX 5.1:
+ If your poe version number is 3.2.0.20 or lower,
+ please edit powerpc-ibm-aix5.x in the directory hdf5/config/.
+ Find the line with
+ << hdf5_mpi_complex_derived_datatype_works >>
+ and UNCOMMENT this line before the configure.
+ check poe version with the following command:
+ lpp -l all | grep ppe.poe
+ 3) For Linux cluster,:
+ If mpich version is 1.2.5 or lower, collective irregular selection
+ IO is not supported; internally independent IO is used.
+ 4) For IRIX 6.5:
+ if C compiler version is 7.3 or lower, collective irregular
+ selection IO is not supported; internally independent IO is used.
+ 5) For platforms which internally used mpich:
+ If the mpich version is 1.2.5 or lower, please find the
+ corresponding config (in hdf5/config) file and add
+ hdf5_mpi_complex_derived_datatype_works='no'
+ at the end of the configuration file. For example, on the
+ NCSA SGI Altix, the internal mpich library is 1.2.5. So
+ hdf5_mpi_complex_derived_datatype_works='no'
+ should be added at the end of the config file ia64-linux-gnu.
+ KY - 2005/09/12
+
+ Tools:
+ ------
+ - Removed obsolete pdb2hdf tool. JML - 2005/10/28
+ - Sped up h5dump on files with large numbers of objects.
+ QAK - 2005/08/25
+
+ F90 API:
+ --------
+ - Added missing h5tget_member_class_f function
+ EIP 2005/04/06
+ C++ API:
+ --------
+ - Added missing member functions:
+ H5::CompType::getMemberArrayType
+ H5::CompType::getMemberVarLenType
+ H5::AbstractDs::getArrayType
+ H5::AbstractDs::getVarLenType
+ H5::CommonFG::openArrayType
+ H5::CommonFG::openVarLenType
+ H5::PropList::copyProp -- this will replace the current
+ H5::PropList::copyProp in later releases due
+ to incorrect prototype.
+ BMR - 2005/07/27
+
+
+Support for New Platforms, Languages and Compilers
+==================================================
+ - Added support for RedStorm platform (serial only.) AKC 2005/11/10
+ - Added support for BG/L platform (serial only.) LA 2005/11/10
+ - Added support for HPUX 11.23 (IA64); only C and C++ are supported
+ with the +DD64 flag
+ EIP 2005/10/05
+
+
+ Configuration
+ -------------
+ - Added support for Cray X1. JML 2005/10/03
+
+
+Bug Fixes since HDF5-1.6.4 Release
+==================================
+
+ Library
+ -------
+ - Fixed collective IO in chunking-storage. HDF5 may have called the
+ wrong routine when the shape of the dataspace in the file and in
+ the buffered chunk were different. This bug was fixed to make sure
+ the correct routine is called. KY - 2005/10/19
+ - Fixed core dump when closing root groups opened through two different
+ file handles that operate on the same actual file. QAK - 2005/10/02
+ - The ./dsets tests used to fail in the TFLOPS machine if the
+ test program, dsets.c, was compiled with the -O option.
+ The HDF5 library still worked correctly with the -O option. Only
+ the ./dsets failed. It is fixed. AKC - 2005/09/14
+ - Corrected errors when performing various operations on a group opened
+ by dereferencing an object reference. QAK - 2005/07/30
+ - Fixed a bug with named datatypes where a copy of a named datatype
+ used to create a dataset would accidentally use the original
+ named datatype for the dataset's datatype. QAK - 2005/07/23
+ - Made H5Fget_name() to be consistent and always return name of actual
+ file the ID is in. (Instead of the name of the top file in a
+ file mounting hierarchy). QAK - 2005/07/19
+ - Reworked internal file mounting semantics to hopefully eliminate
+ mounting problems. We now require that files that are mounting
+ together all have the same "file close degree". QAK - 2005/07/19
+ - More bug fixes on holding open files that are mounted and have
+ IDs open. QAK - 2005/07/14
+ - Dataset sieve buffer cache was inadvertently disabled; it has been
+ re-enabled. QAK - 2005/07/08
+ - Don't unmount child files until the parent file actually closes.
+ (Previously, if an object was holding open a file, the child files
+ would get unmounted too early). QAK - 2005/07/05
+ - Fixed bug where unmounted files could cause the library to go into
+ an infinite loop when shutting down. QAK - 2005/06/30
+ - Fixed bug with hyperslab selections that use selection offsets and
+ operate on chunked datasets going into infinite loop or dumping
+ core. QAK - 2005/06/17
+ - Corrected memory leak and possible corruption when opening a group.
+ QAK - 2005/06/17
+ - Added check for opaque datatype tags being too long (check against
+ H5T_OPAQUE_TAG_MAX, currently set to 256). QAK - 2005/06/14
+ - Fixed various errors in maintaining names for open objects in the
+ face of unusual mount & unmount operations. QAK - 2005/06/08
+ - "SEMI" and "STRONG" file close degree settings now apply only to the
+ particular file ID being closed, instead of operating on all open
+ file IDs for a given file. QAK - 2005/06/01
+ - Fixed error in opening object in a group that was opened in a mounted
+ file which has been unmounted. QAK - 2005/03/17
+
+ Configuration
+ -------------
+ - Configure can recognize -lmpich as a form of MPI library. -AKC-
+ 2005/9/28.
+ - Changed default C++ compiler for the IA64 platform from icc to
+ icpc which is the preferred compiler for Intel Compiler version
+ 8. AKC - 2005/09/02
+
+ Performance
+ -------------
+ - Optimized I/O for enumerated datatypes that are a superset of a
+ source enumerated datatype. QAK - 2005/03/19
+
+ Tools
+ -----
+
+ Documentation
+ -------------
+
+ F90 API
+ -------
+ - h5pget_driver_f was returning information that could not be
+ interpreted by a Fortran application program; fixed. EIP - 2005/04/10
+
+ C++ API
+ -------
+ - Several member functions' prototype changed due to the
+ "int -> unsigned" change in the main library. They are:
+ H5::CompType::getMemberDataType(unsigned member_num)
+ H5::CompType::getMemberCompType(unsigned member_num)
+ H5::CompType::getMemberEnumType(unsigned member_num)
+ H5::CompType::getMemberIntType(unsigned member_num)
+ H5::CompType::getMemberFloatType(unsigned member_num)
+ H5::CompType::getMemberStrType(unsigned member_num)
+ BMR - 2005/07/27
+
+
+
+
+
+Platforms Tested
+================
+
+ AIX 5.1 (32 and 64-bit) xlc 6.0.0.6
+ xlf 8.1.1.3
+ xlC 6.0.0.6
+ mpcc_r 6.0.0.6
+ mpxlf_r 8.1.1.3
+ xlc 5.0.2.5
+ xlf 7.1.1.2
+ xlC 5.0.2.5
+ mpcc_r 5.0.2.5
+ mpxlf_r 7.1.1.2
+ AIX 5.2 (32/64 bit) xlc 6.0.0.8
+ xlC 6.0.0.9
+ xlf 8.1.1.7
+ mpcc_r 6.0.0.8
+ mpxlf_r 8.1.1.7
+ AIX 5.2 (32/64 bit, LLNL frost) xlc 6.0.0.8
+ xlC 6.0.0.8
+ xlf 8.1.1.7
+ mpcc_r 6.0.0.8
+ mpxlf_r 8.1.1.7
+ AIX 5.3 (32/64 bit) xlc 7.0.0.0
+ xlC 7.0.
+ xlf 9.1.0.3
+ Cray X1 water 3.0.35 Cray Standard C Version 5.4.0.7.4
+ Cray Fortran 5.4.0.7.3
+ Cray C++ 5.4.0.7.4
+ FreeBSD 4.11 gcc 2.95.4
+ g++ 2.95.4
+ gcc 3.2.3, 3.3.6, 3.4.4, 4.0.0
+ HP-UX B.11.00 HP C HP92453-01 A.11.01.20
+ HP F90 v2.4
+ HP ANSI C++ B3910B A.03.13
+ HP-UX B.11.23 HP aC++/ANSI C B3910B A.06.00
+ HP F90 v2.9
+ HP aC++/ANSI C B3910B A.06.00
+ IRIX64 6.5 (tesla -64) MIPSpro cc 7.4.2m
+ F90 MIPSpro 7.4.2m
+ C++ MIPSpro cc 7.4.2m
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
+ F90 MIPSpro 7.3.1.3m (64 only)
+ C++ MIPSpro cc 7.3.1.3m
+ mpt 1.6
+ Linux 2.4.20-28.7 gcc 2.96
+ (eirene, verbena) gcc 3.3.2
+ PGI compilers (pgcc, pgf90, pgCC)
+ version 5.2-1
+ Absoft Fortran compiler v9.0
+ Intel(R) C++ 32-bit Version 8.1
+ Intel(R) Fortran 32-bit Version 8.1
+ MPIch 1.2.6
+ Linux 2.4.21-268-smp x86_64 gcc 3.3.1 (SuSE Linux, AMD)
+ (mir) PGI 5.2-1 C and F90 (with k3-32)
+ Intel(R) C++ 32-bit Version 8.1
+ Intel(R) Fortran 32-bit Version 8.1
+ Linux 2.4.21-sgi306rp21 Altix
+ SMP ia64 Intel(R) C++ Version 8.1
+ (cobalt) Intel(R) Fortran Itanium(R) Version 8.1
+ SGI MPI
+ OSF1 V5.1 (QSC) Compaq C V6.5-011
+ HP Fortran V5.5A-3548
+ Compaq C++ V6.5-036
+ MPIX200_64_r13.4
+ OSF1 V5.1 (PSC) Compaq C V6.5-303
+ HP Fortran V5.5A-3548
+ Compaq C++ V6.5-040
+ SunOS 5.8 32,46 Sun WorkShop 6 update 2 C 5.3
+ (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
+ Sun WorkShop 6 update 2 C++ 5.3
+ SunOS 5.9 32,64 Sun C 5.6 2004/07/15
+ (Solaris 2.9) Sun Fortran 95 8.0 2004/07/15
+ Sun C++ 5.6 2004/07/15
+ SunOS 5.10 Sun WorkShop 6 update 2 C 5.3
+ Sun WorkShop 6 update 2 Fortran 95 6.2
+ Sun WorkShop 6 update 2 C++ 5.3
+ Patch 111685-13
+ Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
+ (tungsten) Intel(R) C++ Version 9.0
+ Intel(R) Fortran Compiler Version 9.0
+ IA-64 Linux 2.4.21.SuSE_292.til1 ia64
+ (NCSA tg-login) Intel(R) C++ Version 8.0
+ Intel(R) Fortran Compiler Version 8.0
+ mpich-gm-1.2.5..10-intel-r2
+ Windows XP MSVC++.NET
+ MSVC++ 6.0
+ Intel 8.1 C++
+ MAC OS X Darwin 7.5
+ gcc and g++ Apple Computer, Inc. GCC
+ version 1175, based on gcc version 3.3.2
+ IBM XL Fortran version 8.1
+ Absoft Fortran compiler v8.2
+
+
+Supported Configuration Features Summary
+========================================
+
+Key: y = tested and supported
+ n = not supported or not tested in this release
+ x = not working in this release
+ dna = does not apply
+ ( ) = footnote appears below second table
+
+Platform C F90 F90 C++ zlib SZIP
+ parallel parallel
+IBM BG/L (16) n n n n y y
+Solaris2.8 64-bit y y y(1) y y y
+Solaris2.8 32-bit y y y(1) y y y
+Solaris2.9 64-bit y(1) y y(1) y y y
+Solaris2.9 32-bit y(1) y y(1) y y y
+Solaris2.10 64-bit y(1) y n y y y
+Solaris2.10 32-bit y(1) y n y y y
+IRIX64_6.5 64-bit y(2) y y y y y
+IRIX64_6.5 32-bit y(2) n n n y y
+HPUX11.00 y(1) y y y y y
+HPUX11.23-32bit n y n y y y
+HPUX11.23-64bit n n n y y y
+OSF1 v5.1 y y y y y y
+X1 y y y y y n
+AIX-5.1, 5.2 & 5.3 32-bit y y y y y y
+AIX-5.1, 5.2 & 5.3 64-bit y y y y y y
+WinXP Visual Studio 6.0 n n(9) n y y y
+WinXP .Net n n n y(8) y y
+Mac OS X 10.3 n y(10) n y y y
+FreeBSD 4.11 n n n y y y
+RedHat 7.3 W (3) y(1) y(11) n y y y
+RedHat 7.3 W Intel (3) n y n y y y
+RedHat 7.3 W PGI (3) n y n y y y
+RedStorm (16) n y n y y n
+SuSe x86_64 gcc (3,13) n y(12) n y y y
+SuSe x86_64 icc (3,13) n y(14) n y y y
+Linux 2.4 Xeon C Lustre Intel (3,6) n y n y y y
+Linux 2.4 SuSE ia64 C Intel (3,7) y y y y y y
+Linux 2.4 SGI Altix ia64 Intel (3) y y y y y y
+
+
+Platform Shared static- Thread- STREAM-
+ libraries(4) exec safe VFD
+IBM BG/L n y n n
+Solaris2.8 64-bit y x y y
+Solaris2.8 32-bit y x y y
+Solaris2.9 64-bit y x y y
+Solaris2.9 32-bit y x y y
+Solaris2.10 64-bit y x y y
+Solaris2.10 32-bit y x y y
+IRIX64_6.5 64-bit y y y y
+IRIX64_6.5 32-bit y y y y
+HPUX11.00 y x n y
+HPUX11.23 y y n y
+OSF1 v5.1 y y n y
+X1 n y n y
+AIX-5.1, 5.2 & 5.3 32-bit n y n y
+AIX-5.1, 5.2 & 5.3 64-bit n y n y
+WinXP Visual Studio 6.0 y y n n
+WinXP .Net y y n n
+Mac OS X 10.3 y y n y
+FreeBSD 4.11 y y y y
+RedHat 7.3 W (3) y y y y
+RedHat 7.3 W Intel (3) n y n y
+RedHat 7.3 W PGI (3) n y n y
+RedStorm n y n y
+SuSe x86_64 gcc (3,13) n y n y
+SuSe x86_64 icc (3,13) y y(15) n y
+Linux 2.4 Xeon C Lustre Intel (3,6) y y n y
+Linux 2.4 SuSE ia64 C Intel (3,7) y y n n
+Linux 2.4 SGI Altix ia64 Intel (3) y y n y
+
+
+Compiler versions for each platform are listed in the "Platforms Tested"
+table found elsewhere in this file (RELEASE.txt). Unless otherwise noted,
+compilers used are the system compilers.
+
+Footnotes: (1) Using mpich 1.2.6
+ (2) Using mpt and mpich 1.2.6.
+ (3) Linux 2.4 with GNU, Intel, and PGI compilers, as indicated.
+ W or C indicates workstation or cluster, respectively.
+ (4) Shared libraries are provided only for the C library,
+ except on Windows where they are provided for C and C++.
+ (5) Using mpt.
+ (6) Linux 2.4.21-32.0.1. Xeon cluster with ELsmp-perfctr-lustre
+ and Intel compilers
+ (7) Linux 2.4.21, SuSE_292.til1. Ia64 cluster with Intel compilers
+ (8) Intel 8.1
+ (9) One test of this release failed with Compaq Visual Fortran 6.6c.
+ No binary fortran release will be provided. Users should build
+ the library by themselves and use it at their own risk.
+ We recommend that users use HDF5 1.7 instead
+ or use Compaq Visual Fortran 6.0.
+ (10) IBM XLF and Absoft
+ (11) PGI, Absoft. No shared libraries with Absoft;
+ use '--disable-shared'.
+ (12) PGI and Intel compilers for both C and Fortran
+ (13) AMD Opteron x86_64
+ (14) ifort
+ (15) Yes with C and Fortran, but not with C++
+ (16) Only serial is ported. PFS does not work for PHDF5 yet.
+ FMB/EIP - 2005/11/10
+
+
+Known Problems
+==============
+* Intel Compilers for Linux x86_86 platforms (EM64T-based, v8.1) has
+ optimization error in the data types conversion code. Before running
+ configure, edit the file config/intel-flags by changing the setting of
+ PROD_CFLAGS from -O3 to -O0, then run configure. AKC - 2005/11/10.
+
+* Fortran testing and compiling failures on windows XP
+ 1. Compaq visual fortran 6.6c with VS 6.0
+ The Fortran tests failed for both release, release dll, debug and debug
+ dll. The failure is a random one. We won't provide fortran libraries. The
+ same test passed with the 1.7.51 snapshot. You may find the 1.7.51
+ snapshot under ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/snapshots/.
+ 2. Intel fortran 8.1 under .Net environment
+ The fortran library cannot even be compiled. Some users have pointed this
+ to intel forum.
+
+* When testing parallel HDF5 with the C compiler version MIPSpro 7.4.3 at IRIX
+ 6.5, set environment variable MPI_TYPE_MAX to be a bigger number, for example
+ 120000, in order to pass the complicated collective IO tests inside parallel
+ HDF5 library. This is not a problem inside parallel HDF5 library. You can
+ always set a bigger number in your system.
+ KY - 2005/10/6
+
+* A contiguous or chunked dataset created by a sequential version may
+ not be modified with a parallel version of the library.
+ Use the H5Pset_alloc_time function with H5D_ALLOC_TIME_EARLY to set up the
+ dataset creation property list to avoid the problem.
+ EIP - 2005/09/09
+
+* The dataset created or rewritten with the v1.6.3 library or after can't
+ be read with the v1.6.2 library or before when Fletcher32 EDC(filter) is
+ enabled. There was a bug in the calculating code of the Fletcher32
+ checksum in the library before v1.6.3. The checksum value wasn't consistent
+ between big-endian and little-endian systems. This bug was fixed in
+ Release 1.6.3. However, after fixing the bug, the checksum value is no
+ longer the same as before on little-endian system. The library release
+ after 1.6.4 can still read the dataset created or rewritten with the library
+ of v1.6.2 or before. SLU - 2005/7/8
+
+* For version 6 (6.02 and 6.04) of the Portland Group compiler on AMD Opteron
+ processor, there's a bug in the compiler for optimization(-O2). The library
+ failed in several tests but all related to multi driver. The problem has
+ been reported to the vendor.
+
+* test/big fails sometimes with the message "Possible overlap with another
+ region." The test selects regions randomly, and this error occurs when
+ two regions overlap each other; it is a bug in the test and not in
+ HDF5. Since the error is triggered by a random situation, it will
+ usually disappear if the test is re-run.
+
+* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but it
+ has a "guard" statement in stdint.h that will #error and skip the rest
+ of the header file if C99 option is not used explicitly. Hardset
+ $CC to c99 will resolve the problem. AKC - 2004/12/13
+
+* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
+ messages like "INFO: 0031-XXX ...". This is from the command poe.
+ Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
+ and run the tests again.
+ The tests may fail with messages like "The socket name is already
+ in use". HDF5 does not use sockets (except for stream-VFD). This is
+ due to problems of the poe command trying to set up the debug socket.
+ Check if there are many old /tmp/s.pedb.* staying around. These are
+ sockets used by the poe command and left behind due to failed commands.
+ Ask your system administrator to clean them out. Lastly, request IBM
+ to provide a means to run poe without the debug socket.
+
+* Two h5dump xml tests(h5dump --xml thlink.h5 and h5dump --xml tmany.h5)
+ failed on windows xp with .NET for debug and debug dll. Release and
+ Release dll work fine.
+
+* The h5dump tests may fail to match the expected output on some platforms
+ (e.g. parallel jobs, Windows) where the error messages directed to
+ "stderr" do not appear in the "right order" with output from stdout.
+ This is not an error.
+
+* The stream-vfd test uses ip port 10007 for testing. If another
+ application is already using that port address, the test will hang
+ indefinitely and has to be terminated by the kill command. To try the
+ test again, change the port address in test/stream_test.c to one not
+ being used in the host.
+
+* The --enable-static-exec configure flag fails to compile for Solaris
+ platforms. This is due to the fact that not all of the system
+ libraries on Solaris are available in a static format.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on IBM SP2 platform for the serial mode. The parallel mode works fine
+ with this option.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on the HPUX 11.00.
+
+ It is suggested that you don't use this option on these platforms
+ during configuration.
+
+* The Stream VFD was not tested yet under Windows.
+
+
+* Before building HDF5 F90 Library from source on Crays
+ replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
+ subdirectory in the top level directory with the Cray-specific files
+ from the site:
+ ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/src/patches/
+
+* Use --disable-shared configure flag if building with Absoft Fortran
+ compiler.
+
+* Information about building with PGI and Intel compilers is available in
+ INSTALL file sections 5.7 and 5.8.
+
+* In LANL QSC, the new cc compiler has problems converting small values of
+ long long (absolute values less than 1**-308) to double. This triggers
+ the test/dtypes to report failure in the
+ Testing random sw long double -> double conversions
+ If -ieee is used, the converted doubles spread over the range 0.0 to 1**-308.
+ If -ieee is not used, the converted double values are mostly 0.0 but
+ occasionally as 1**-308. This has been reported to the system staff.
+ All other tests have passed.
+
+* Fortran release DLL randomly failed with Compaq Visual Fortran 6.6c on
+ Windows.
+
+* Fortran DLL built with Intel 8.1 in .NET environment crushed the compiler,
+ Building Fortran static library with Intel 8.1 in .NET environment
+ requires manually setting the project file.
+ Please contact to hdfhelp@ncsa.uiuc.edu if you need to build
+ Fortran static library with Intel 8.1 with .NET environment.
+
+* On at least one system, SDSC DataStar, the scheduler (in this case
+ LoadLeveler) sends job status updates to standard error when you run
+ any executable that was compiled with the parallel compilers.
+
+ This causes problems when running "make check" on parallel builds, as
+ many of the tool tests function by saving the output from test runs,
+ and comparing it to an exemplar.
+
+ The best solution is to reconfigure the target system so it no longer
+ inserts the extra text. However, this may not be practical.
+
+ In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
+ the configure and build. This will cause "make check" to continue after
+ detecting errors in the tool tests. However, in the case of SDSC DataStar,
+ it also leaves you with some 150 "failed" tests to examine by hand.
+
+ A second solution is to write a script to run serial tests and filter
+ out the text added by the scheduler. A sample script used on SDSC
+ DataStar is given below, but you will probably have to customize it
+ for your installation.
+
+ Observe that the basic idea is to insert the script as the first item
+ on the command line which executes the test. The script then
+ executes the test and filters out the offending text before passing
+ it on.
+
+ #!/bin/csh
+
+ set STDOUT_FILE=~/bin/serial_filter.stdout
+ set STDERR_FILE=~/bin/serial_filter.stderr
+
+ rm -f $STDOUT_FILE $STDERR_FILE
+
+ ($* > $STDOUT_FILE) >& $STDERR_FILE
+
+ set RETURN_VALUE=$status
+
+ cat $STDOUT_FILE
+
+ tail +3 $STDERR_FILE
+
+ exit $RETURN_VALUE
+
+ You get the HDF make files and test scripts to execute your filter script
+ by setting the environment variable "RUNSERIAL" to the full path of the
+ script prior to running configure for parallel builds. Remember to
+ "unsetenv RUNSERIAL" before running configure for a serial build.
+
+ Note that the RUNSERIAL environment variable exists so that we can
+ prefix serial runs as necessary on the target system. On DataStar,
+ no prefix is necessary. However, on an MPICH system, the prefix might
+ have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
+ get the serial tests to run at all.
+
+ In such cases, you will have to include the regular prefix in your
+ filter script.
+
+%%%%1.6.4%%%% Release Information for hdf5-1.6.4 (15/March/05)
+
+
+HDF5 version 1.6.4 released on Tue Mar 15 20:38:48 CST 2005
+================================================================================
+
+INTRODUCTION
+============
+This document describes the differences between HDF5-1.6.3 and
+HDF5-1.6.4, and contains information on the platforms tested and
+known problems in HDF5-1.6.4. For more details check the HISTORY.txt
+file in the HDF5 source.
+
+The HDF5 documentation can be found on the NCSA ftp server
+(ftp.ncsa.uiuc.edu) in the directory:
+
+ /HDF/HDF5/docs/
+
+For more information look at the HDF5 home page at:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ hdfhelp@ncsa.uiuc.edu
+
+
+CONTENTS
+========
+- New Features
+- Support for new platforms and languages
+- Bug Fixes since HDF5-1.6.3
+- Documentation
+- Platforms Tested
+- Supported Configuration Features Summary
+- Known Problems
+
+
+New Features
+============
+ Source code distribution:
+ -------------------------
+
+ The High-Level (HL) C APIs were added to the source code distribution.
+ For HL documentation, see
+ http://hdf.ncsa.uiuc.edu/HDF5/hdf5_hl/doc/RM_hdf5hl.html.
+
+ The HL library, libhdf5_hl.a(so), is built and installed by default.
+ Use --disable-hl configure flag to disable the HL library.
+
+ Library:
+ --------
+ - We recommend you to use SZIP v2.0 with this release.
+ For more information see
+ http://hdf.ncsa.uiuc.edu/doc_resource/SZIP/
+ - The compound datatype has been enhanced with a new feature of size
+ adjustment. The size can be increased and decreased (without
+ cutting the last member). No API change is involved. SLU -
+ 2004/10/1
+ - Removed PABLO support. 2005/01/20 EIP
+
+ Parallel Library:
+ -----------------
+ - Allow compressed, chunked datasets to be read in parallel.
+ QAK - 2004/10/04
+
+ Tools:
+ ------
+ - New tool, h5jam. See HDF5 Reference Manual. 2004/10/08
+
+ F90 API:
+ --------
+ No new features in this release.
+
+ C++ API:
+ --------
+ - Started using C library's reference counting in place of the class
+ RefCounter, which existed before the C mechanism was available.
+ As a result, RefCounter has been removed. 2005/03/12 BMR
+
+
+Support for new platforms, languages and compilers.
+=======================================
+
+ Configuration
+ -------------
+ - Upgraded from GNU autoconf 2.53 to autoconf 2.59. JML - 2005/01/31
+
+
+Bug Fixes since HDF5-1.6.3 release
+==================================
+
+ Library
+ -------
+ - Fixed a racing condition in MPIPOSIX virtual file drive close
+ function. Now all processes must completed the close before any
+ of them is returned. This prevents some "faster" processes start
+ accessing the file for another purpose (e.g., open with truncate)
+ while other "slower" processes have not closed the same file with
+ the previous purpose. AKC - 2005/03/01
+ - H5Tget_member_value calls for enum datatype didn't return correct
+ value if H5Tenum_valueof was called first. It's fixed. SLU -
+ 2005/02/08
+ - For variable-length string, H5Tget_class returned H5T_STRING as its
+ class. But H5Tdetect_class and H5Tget_member_class considered it
+ as H5T_VLEN. This is fixed to let all these 3 functions treat it
+ as H5T_STRING. SLU - 2005/02/08
+ - The byte order of all 1-byte integer types was fixed as
+ little-endian even on a big-endian machine. It's corrected.
+ SLU - 2005/02/07
+ - Fixed segmentation fault when calling H5Fflush with an attribute that
+ hasn't had a value written to it open. QAK - 2004/10/18
+ - Backed out support for bitfield and time types in H5Tget_native_type.
+ Leave it to future support. The function simply returns error
+ message of "not support" for bitfield and time types. SLU - 2004/10/5
+ - Fixed address check in Core VFL driver to avoid spurious address/size
+ overflows for odd valued addresses and/or sizes. QAK - 2004/09/27
+ - Fixed problem where chunked datasets were not able to be deleted
+ from a file under certain circumstances. QAK - 2004/09/27/
+
+ Configuration
+ -------------
+ - IRIX64 MIPSpro compiler of 7.4.x supports C99 features. Default
+ to use the 'c99' compiler if available. AKC - 2004/12/13
+ - Intel v8.0 compiler would infinite loop when compiling some test
+ code with -O3 option. Changed enable-production default compiler
+ option to -O2. AKC - 2004/12/06
+ - Long double is assumed to be a supported C data type. It is a
+ standard C89 type. AKC - 2004/10/22
+
+ Performance
+ -------------
+ Many changes were made to the library to improve performance,
+ especially for the variable-length datatypes and metadata cache.
+
+ Tools
+ -----
+ - h5fc and h5c++ work correctly when -c compiler flag
+ is used. EIP - 2005/03/14
+ - Fixed h5dump to print attributes data in ASCII if -r option is used.
+ AKC - 2004/11/18
+ - Fixed space utilization reported in h5ls to correct error
+ in formula used. QAK - 2004/10/22
+
+ Documentation
+ -------------
+
+ F90 API
+ -------
+ - On windows, previously Fortran DLL built and tested failed.
+ Now Fortran DLL has been built and tested successfully
+ with Dec Fortran 6.6c or Dec Fortran 6.0.
+
+ C++ API
+ -------
+
+
+Documentation
+=============
+
+ HDF5 Library documentation
+ --------------------------
+ No substantive changes to the structure or types of content in the
+ HDF5 Library documentation.
+
+ Windows installation documentation
+ ----------------------------------
+ 1. On Windows zlib has been updated to 1.2.2. You may find the binary at
+ either http://www.zlib.net/zlib122-dll.zip or
+ ftp://hdf.ncsa.uiuc.edu/lib-external/zlib/bin/windows
+
+ 2. Only DLLs of external libraries (zlib and szip) are linked with the
+ HDF5 Library. We will no longer provide binary to link static library
+ with HDF5. For details, please check INSTALL_Windows in this directory.
+
+
+Platforms Tested
+================
+
+ AIX 5.1 (32 and 64-bit) xlc 6.0.0.6
+ xlf 8.1.1.3
+ xlC 6.0.0.6
+ mpcc_r 6.0.0.6
+ mpxlf_r 8.1.1.3
+ xlc 5.0.2.5
+ xlf 7.1.1.2
+ xlC 5.0.2.5
+ mpcc_r 5.0.2.5
+ mpxlf_r 7.1.1.2
+ AIX 5.2 (32/64 bit) xlc 6.0.0.8
+ xlC 6.0.0.9
+ xlf 8.1.1.7
+ mpcc_r 6.0.0.8
+ mpxlf_r 8.1.1.7
+ AIX 5.2 (32/64 bit, LLNL frost) xlc 6.0.0.8
+ xlC 6.0.0.8
+ xlf 8.1.1.7
+ mpcc_r 6.0.0.8
+ mpxlf_r 8.1.1.7
+ Cray T90 sn7001 10.0.0md Cray Standard C Version 6.4.0.3
+ Cray Fortran Version 3.4.0.0
+ Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.3.6
+ Cray Fortran Version 3.6.0.3.1
+ FreeBSD 4.9 gcc 2.95.4
+ g++ 2.95.4
+ gcc 3.2.3, 3.3.6, 3.4.4, 4.0.0
+ HP-UX B.11.00 HP C HP92453-01 A.11.01.20
+ HP F90 v2.4
+ HP ANSI C++ B3910B A.03.13
+ MPIch 1.2.4
+ IRIX64 6.5 (tesla -64) MIPSpro cc 7.4.2m
+ F90 MIPSpro 7.4.2m
+ C++ MIPSpro cc 7.4.2m
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
+ F90 MIPSpro 7.3.1.3m (64 only)
+ C++ MIPSpro cc 7.3.1.3m
+ mpt 1.6
+ Linux 2.4.20-28.7 gcc 2.96
+ (eirene, verbena) gcc 3.3.2
+ PGI compilers (pgcc, pgf90, pgCC)
+ version 5.2-1
+ Absoft Fortran compiler v9.0
+ Intel(R) C++ 32-bit Version 8.1
+ Intel(R) Fortran 32-bit Version 8.1
+ MPIch 1.2.6
+ Linux 2.4.21-268-smp x86_64 gcc 3.3.1 (SuSE Linux, AMD)
+ (mir) PGI 5.2-1 C and F90 (with k3-32)
+ Intel(R) C++ 32-bit Version 8.1
+ Intel(R) Fortran 32-bit Version 8.1
+ Linux 2.4.21-sgi303r2 Altix
+ SMP ia64 Intel(R) C++ Version 8.1
+ (cobalt) Intel(R) Fortran Itanium(R) Version 8.1
+ SGI MPI
+ OSF1 V5.1 (QSC) Compaq C V6.5-011
+ HP Fortran V5.5A-3548
+ Compaq C++ V6.5-036
+ MPIX200_64_r13.4
+ OSF1 V5.1 (PSC) Compaq C V6.5-303
+ HP Fortran V5.5A-3548
+ Compaq C++ V6.5-040
+ MPIX200_64_r13.4
+ FORTRAN 90 2.0 Patch 107356-04
+ SunOS 5.8 32,46 Sun WorkShop 6 update 2 C 5.3
+ (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
+ Sun WorkShop 6 update 2 C++ 5.3
+ SunOS 5.9 32,64 Sun C 5.6 2004/07/15
+ (Solaris 2.9) Sun Fortran 95 8.0 2004/07/15
+ Sun C++ 5.6 2004/07/15
+ TFLOPS r1.0.4 v4.5.2 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with
+ local modifications
+ Xeon Linux 2.4.20-31.9smp_perfctr_lustre
+ (tungsten) Intel(R) C++ Version 8.0
+ Intel(R) Fortran Compiler Version 8.0
+ IA-64 Linux 2.4.21.SuSE_128.bef1 ia64
+ (NCSA tg-login) Intel(R) C++ Version 8.0
+ Intel(R) Fortran Compiler Version 8.0
+ mpich-gm-1.2.5..intel
+ Windows XP MSVC++.NET
+ MSVC++ 6.0
+ Compaq Visual Fortran 6.6C
+ Intel 8.1 C++
+ MAC OS X Darwin 7.5
+ gcc and g++ Apple Computer, Inc. GCC
+ version 1175, based on gcc version 3.3.2
+ IBM XL Fortran version 8.1
+ Absoft Fortran compiler v8.2
+
+
+Supported Configuration Features Summary
+========================================
+
+Key: y = tested and supported
+ n = not supported or not tested in this release
+ x = not working in this release
+ dna = does not apply
+ ( ) = footnote appears below second table
+
+Platform C F90 F90 C++ zlib SZIP
+ parallel parallel
+Solaris2.8 64-bit y y y(1) y y y
+Solaris2.8 32-bit y y y(1) y y y
+Solaris2.9 64-bit y(1) y y(1) y y y
+Solaris2.9 32-bit y(1) y y(1) y y y
+IRIX64_6.5 64-bit y(2) y y y y y
+IRIX64_6.5 32-bit y(2) n n n y y
+HPUX11.00 y(1) y y y y y
+OSF1 v5.1 y y y y y y
+T90 IEEE n y n n y n
+SV1 y(5) y y(5) n y n
+TFLOPS y(1) n n n y n
+AIX-5.1 & 5.2 32-bit y y y y y y
+AIX-5.1 & 5.2 64-bit y y y y y y
+WinXP Visual Studio 6.0 n y(9) n y y y
+WinXP .Net n n n y(8) y y
+Mac OS X 10.3 n y(10) n y y y
+FreeBSD 4.9 y(1) n n y y y
+RedHat 7.3 W (3) y(1) y(11) n y y y
+RedHat 7.3 W Intel (3) n y n y y y
+RedHat 7.3 W PGI (3) n y n y y y
+SuSe x86_64 gcc (3,13) n y(12) n y y y
+SuSe x86_64 icc (3,13) n y(14) n y y y
+Linux 2.4 Xeon C Lustre Intel (3,6) n y n y y y
+Linux 2.4 SuSE ia64 C Intel (3,7) y y y y y y
+Linux 2.4 SGI Altix ia64 Intel (3) y y y y y y
+
+
+Platform Shared static- Thread- STREAM-
+ libraries(4) exec safe VFD
+Solaris2.8 64-bit y x y y
+Solaris2.8 32-bit y x y y
+Solaris2.9 64-bit y x y y
+Solaris2.9 32-bit y x y y
+IRIX64_6.5 64-bit y y y y
+IRIX64_6.5 32-bit y y y y
+HPUX11.00 y x n y
+OSF1 v5.1 y y n y
+T90 IEEE n y n y
+SV1 n y n y
+TFLOPS n y n n
+AIX-5.1 & 5.2 32-bit n y n y
+AIX-5.1 & 5.2 64-bit n y n y
+WinXP Visual Studio 6.0 y y n n
+WinXP .Net y y n n
+Mac OS X 10.3 y y n y
+FreeBSD 4.9 y y y y
+RedHat 7.3 W (3) y y y y
+RedHat 7.3 W Intel (3) n y n y
+RedHat 7.3 W PGI (3) n y n y
+SuSe x86_64 gcc (3,13) n y n y
+SuSe x86_64 icc (3,13) y y(15) n y
+Linux 2.4 Xeon C Lustre Intel (3,6) y y n y
+Linux 2.4 SuSE ia64 C Intel (3,7) y y n n
+Linux 2.4 SGI Altix ia64 Intel (3) y y n y
+
+
+Compiler versions for each platform are listed in the "Platforms Tested"
+table found elsewhere in this file (RELEASE.txt). Unless otherwise noted,
+compilers used are the system compilers.
+
+Footnotes: (1) Using mpich 1.2.6
+ (2) Using mpt and mpich 1.2.6.
+ (3) Linux 2.4 with GNU, Intel, and PGI compilers, as indicated.
+ W or C indicates workstation or cluster, respectively.
+ (4) Shared libraries are provided only for the C library,
+ except on Windows where they are provided for C and C++.
+ (5) Using mpt.
+ (6) Linux 2.4.20-31.9. Xeon cluster with smp_perfctr_lustre
+ and Intel compilers
+ (7) Linux 2.4.21, SuSE_128.befl. Ia64 cluster with Intel compilers
+ (8) Intel 8.1
+ (9) Compaq Visual Fortran 6.6C
+ (10) IBM XLF and Absoft
+ (11) PGI, Absoft. No shared libraries with Absoft;
+ use '--disable-shared'.
+ (12) PGI and Intel compilers for both C and Fortran
+ (13) AMD Opteron x86_64
+ (14) ifort
+ (15) Yes with C and Fortran, but not with C++
+ FMB/EIP - 2005/03/15
+
+
+Known Problems
+==============
+* test/big fails sometimes with the message "Possible overlap with another
+ region." The test selects regions randomly, and this error occurs when
+ two regions overlap each other; it is an bug in the test and not in
+ HDF5. Since the error is triggered by a random situation, it will
+ usually disappear if the test is re-run.
+
+* Cray SV1 fails to correctly convert between floating-point and "long double"
+ for software conversion. Problem is being investigated. SLU - 2005/03/04
+
+* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but it
+ has a "guard" statement in stdint.h that will #error and skip the rest
+ of the header file if C99 option is not used explicitly. Hardset
+ $CC to c99 will resolve the problem. AKC - 2004/12/13
+
+* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
+ messages like "INFO: 0031-XXX ...". This is from the command poe.
+ Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
+ and run the tests again.
+ The tests may fail with messages like "The socket name is already
+ in use". HDF5 does not use sockets (except for stream-VFD). This is
+ due to problems of the poe command trying to set up the debug socket.
+ Check if there are many old /tmp/s.pedb.* staying around. These are
+ sockets used by the poe command and left behind due to failed commands.
+ Ask your system administrator to clean them out. Lastly, request IBM
+ to provide a mean to run poe without the debug socket.
+
+* Fortran subroutine h5pget_driver_f doesn't return a correct driver
+ information.
+
+* There are two h5dump xml tests(h5dump --xml thlink.h5 and
+ h5dump --xml tmany.h5) failed on windows xp with .NET for debug and
+ debug dll. Release and Release dll work fine.
+
+* The h5dump tests may fail to match the expected output on some platforms
+ (e.g. parallel jobs, Windows) where the error messages directed to
+ "stderr" do not appear in the "right order" with output from stdout.
+ This is not an error.
+
+* The stream-vfd test uses ip port 10007 for testing. If another
+ application is already using that port address, the test will hang
+ indefinitely and has to be terminated by the kill command. To try the
+ test again, change the port address in test/stream_test.c to one not
+ being used in the host.
+
+* The --enable-static-exec configure flag fails to compile for Solaris
+ platforms. This is due to the fact that not all of the system
+ libraries on Solaris are available in a static format.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on IBM SP2 platform for the serial mode. The parallel mode works fine
+ with this option.
+
+ It is suggested that you don't use this option on these platforms
+ during configuration.
+
+* The Stream VFD was not tested yet under Windows. It is not supported
+ in the TFLOPS machine.
+
+* The ./dsets tests failed in the TFLOPS machine if the test program,
+ dsets.c, is compiled with the -O option. The hdf5 library still works
+ correctly with the -O option. The test program works fine if it is
+ compiled with -O1 or -O0. Only -O (same as -O2) causes the test
+ program to fail.
+
+* Certain platforms give false negatives when testing h5ls:
+ - Cray T90IEEE give errors during testing when displaying
+ some floating-point values. These are benign differences due to
+ the different precision in the values displayed.
+ h5ls appears to be dumping floating-point numbers correctly.
+
+* Before building HDF5 F90 Library from source on Crays
+ replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
+ subdirectory in the top level directory with the Cray-specific files
+ from the site:
+ ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/src/patches/
+
+* On some platforms that use Intel and Absoft compilers to build HDF5 fortran
+ library, compilation may fail for fortranlib_test.f90, fflush1.f90 and
+ fflush2.f90 complaining about exit subroutine. Comment out the line
+ IF (total_error .ne. 0) CALL exit (total_error)
+
+* Use --disable-shared configure flag if building with Absoft Fortran
+ compiler
+
+* Information about building with PGI and Intel compilers is available in
+ INSTALL file sections 5.7 and 5.8
+
+* In LANL QSC, the new cc compiler has problems converting small values of
+ long long (absolute values less than 1**-308) to double. This triggers
+ the test/dtypes to report failure in the
+ Testing random sw long double -> double conversions
+ If -ieee is used, the converted doubles spread over the range 0.0 to 1**-308.
+ If -ieee is not used, the converted double values are mostly 0.0 but
+ occasionally as 1**-308. This has been reported to the system staff.
+ All other tests have passed.
+
+* The C++ library's tests fails when compiling with PGI C++ compiler. The
+ workaround until the problem is correctly handled is to use the
+ flag "--instantiate=local" prior to the configure and build steps, as:
+ setenv CXX "pgCC --instantiate=local" for pgCC 5.02 and higher
+ setenv CXX "pgCC -tlocal" for others
+
+* Fortran release DLL randomly failed with compaq visual fortran 6.6c on
+ windows.
+
+* Fortran DLL built with Intel 8.1 in .NET environment crushed the compiler,
+ To build Fortran Static library with Intel 8.1 in .NET environment
+ needs manually setting the project file,
+ please contact to hdfhelp@ncsa.uiuc.edu if you need to build
+ fortran static library with Intel 8.1 with .NET environment.
+
+* On at least one system, (SDSC DataStar), the scheduler (in this case
+ LoadLeveler) sends job status updates to standard error when you run
+ any executable that was compiled with the parallel compilers.
+
+ This causes problems when running "make check" on parallel builds, as
+ many of the tool tests function by saving the output from test runs,
+ and comparing it to an exemplar.
+
+ The best solution is to reconfigure the target system so it no longer
+ inserts the extra text. However, this may not be practical.
+
+ In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
+ the configure and build. This will cause "make check" to continue after
+ detecting errors in the tool tests. However, in the case of SDSC DataStar,
+ it also leaves you with some 150 "failed" tests to examine by hand.
+
+ A second solution is to write a script to run serial tests and filter
+ out the text added by the scheduler. A sample script used on SDSC
+ DataStar is given below, but you will probably have to customize it
+ for your installation.
+
+ Observe that the basic idea is to insert the script as the first item
+ on the command line which executes the test. The script then
+ executes the test and filters out the offending text before passing
+ it on.
+
+ #!/bin/csh
+
+ set STDOUT_FILE=~/bin/serial_filter.stdout
+ set STDERR_FILE=~/bin/serial_filter.stderr
+
+ rm -f $STDOUT_FILE $STDERR_FILE
+
+ ($* > $STDOUT_FILE) >& $STDERR_FILE
+
+ set RETURN_VALUE=$status
+
+ cat $STDOUT_FILE
+
+ tail +3 $STDERR_FILE
+
+ exit $RETURN_VALUE
+
+ You get the HDF make files and test scripts to execute your filter script
+ by setting the environment variable "RUNSERIAL" to the full path of the
+ script prior to running configure for parallel builds. Remember to
+ "unsetenv RUNSERIAL" before running configure for a serial build.
+
+ Note that the RUNSERIAL environment variable exists so that we can
+ can prefix serial runs as necessary on the target system. On DataStar,
+ no prefix is necessary. However on an MPICH system, the prefix might
+ have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
+ get the serial tests to run at all.
+
+ In such cases, you will have to include the regular prefix in your
+ filter script.
+
+
+%%%%1.6.3%%%% Release Information for hdf5-1.6.3 (22/September/04)
+
+HDF5 version 1.6.3 released on Wed Sep 22 11:30:11 CDT 2004
+================================================================================
+
+
+INTRODUCTION
+
+This document describes the differences between HDF5-1.6.2 and
+HDF5-1.6.3, and contains information on the platforms tested and
+known problems in HDF5-1.6.3. For more details check the HISTORY.txt
+file in the HDF5 source.
+
+The HDF5 documentation can be found on the NCSA ftp server
+(ftp.ncsa.uiuc.edu) in the directory:
+
+ /HDF/HDF5/docs/
+
+For more information look at the HDF5 home page at:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ hdfhelp@ncsa.uiuc.edu
+
+CONTENTS
+
+- New Features
+- Support for new platforms and languages
+- Bug Fixes since HDF5-1.6.2
+- Documentation
+- Platforms Tested
+- Supported Configuration Features Summary
+- Known Problems
+
+
+New Features
+============
+
+ Configuration:
+ --------------
+ - Added some initial support for making purify (or similar memory
+ checking products) happier by initializing buffers to zero and
+ disabling the internal free list code. To take advantage of this,
+ define 'H5_USING_PURIFY' in your CFLAGS when building the library.
+ QAK - 2004/07/23
+
+ - WINDOWS building,testing and installing improvements
+
+ - On Windows, FORTRAN,C++ and C projects are merged into one zip file,
+ users can choose an option to build either FORTRAN or C++ or both
+ with basic C library.For detailed information,
+ please read INSTALL_Windows.txt.
+
+ - On Windows, szip compression library with or without encoder can be easily
+ turned off or on when building HDF5. For detailed information,
+ please read INSTALL_Windows.txt, especially section V.
+
+ - On Windows, an optional procedure for building,testing and installing
+ HDF5 from command line is provided. This procedure is supposed to be
+ convenient for experienced users, please read
+ INSTALL_windows_From_Command_Line.txt for details.
+
+ - On Windows, an alternative short instruction document for building,
+ testing and installing HDF5 is provided. This instruction is supposed to
+ be convenient for general users, please read
+ INSTALL_Windows_Short.txt for details.
+
+ - On Windows, h5repack,h5diff,h5ls and h5import tool tests have been added.
+ KY - 2004/9/16
+
+
+ Library:
+ --------
+ - Modified the way how HDF5 calculates 'pixels_per_scanline' parameter for
+ SZIP compression. Now there is no restriction on the size and shape of the
+ chunk except that the total number of elements in the chunk cannot be
+ bigger than 'pixels_per_block' parameter provided by the user.
+ EIP - 2004/07/21
+ - HDF5 can now link to SZIP with or without szip's encoder.
+ The new API function H5Zget_filter_info can be used to check
+ szip's status. Attempting to assign szip to a dataset property
+ list or attempting to write with szip will generate an error if
+ szip's encoder is disabled. JL/NF - 2004/6/30
+ - SZIP always uses K13 compression. This flag no longer needs to
+ be set when calling H5Pset_szip. If the flag for CHIP
+ compression is set, it will be ignored (since the two are mutually
+ exclusive). JL/NF - 2004/6/30
+ - A new API function H5Fget_name was added. It returns the name
+ of the file by object(file, group, data set, named data type,
+ attribute) ID. SLU - 2004/06/29
+ - A new API function H5Fget_filesize was added. It returns the
+ actual file size of the opened file. SLU - 2004/06/24
+ - Added option that if $HDF5_DISABLE_VERSION_CHECK is set to 2,
+ will suppress all library version mismatch warning messages.
+ AKC - 2004/4/14
+
+ Parallel Library:
+ -----------------
+
+ Tools:
+ ------
+ - h5repack was added to the tools suite. h5repack regenerates an HDF5 file
+ from another HDF5 file, optionally applying HDF5 filters (compression)
+ and/or chunking to the copied file. The filters options are read from
+ the command line. See /doc/html/Tools.html for more details.
+ PVN - 2004/9/13
+
+ - h5dump includes new features:
+ 1) Printing of dataset filters, storage layout and fill value information.
+ 2) Print a list of the file contents.
+ 3) Escape non printing characters.
+ 4) Print the content of the boot block.
+ 5) Print array indices with the data (the default).
+ These options are all switch controlled. See /doc/html/Tools.html for more details.
+ PVN - 2004/9/13
+
+
+ F90 API:
+ --------
+ - added new subroutines:
+ h5fget_filesize_f
+ h5iget_file_id_f
+ h5premove_filter_f
+ h5zget_filter_info_f
+ EIP 2004/9/21
+
+ - added new h5fget_name_f and h5fget_filesize_f subroutines
+ EIP 2004/07/08
+
+ C++ API:
+ --------
+ - Added wrappers for array and variable length datatypes APIs
+ - Added wrappers for newly added APIs from H5T, H5F, and H5I
+ - Added many wrappers that were missing from the H5P API
+ - Added the ability to reference HDF5 objects to these classes:
+ DataSet, DataType, Group, and H5File (wrappers for H5R APIs)
+ BMR 2004/08/04
+
+
+Support for new platforms, languages and compilers.
+=======================================
+ - Added PGI Fortran support for Linux64 (x86_64) systems
+ EIP - 2004/08/19
+ - Absoft compiler f95 v9.0 is supported on Linux 2.4 32bit
+ EIP - 2004/07/29
+ - HDF5 Fortran APIs are supported on Mac OSX with IBM XL Fortran
+ compiler version 8.1. This is a default compiler.
+ - HDF5 Fortran APIs are supported on MAC OSX with Absoft F95 compiler
+ version 8.2; set F9X environment variable to f95, for example
+ setenv F9X f95
+ Use --disable-shared --enable-static configure flags when Absoft
+ compiler is used.
+ EIP - 2004/07/27
+
+Bug Fixes since HDF5-1.6.2 release
+==================================
+
+ Library
+ -------
+ - Fixed parallel bug in which some processes attempted collective
+ I/O while others did independent I/O. Bug appeared when some
+ processes used point selections, and others didn't. JRM - 2004/9/15
+ - Corrected error where dataset region references were written in an
+ incorrect way on Cray machines. PVN & QAK - 2004/09/13
+ - The H5Tget_native_type now determines the native type for integers
+ based on the precision. This is to avoid cases of wrongly converting
+ an int to a short in machines that have a short of 8 bytes but with
+ 32bit precision (e.g Cray SV1). PVN - 2004/09/07
+ - Changed H5Dread() to not overwrite data in an application's buffer
+ with garbage when accessing a chunked dataset with an undefined fill
+ value and an unwritten chunk is uncountered. QAK - 2004/08/25
+ - Fixed error which could cause a core dump when a type conversion
+ routine was registered after a compound datatype had been
+ converted and then an equivalent compound datatype was converted
+ again. QAK - 2004/08/07
+ - Fixed memory overwrite when encoding "multi" file driver information
+ for file's superblock. QAK - 2004/08/05
+ - Fixed obscure bug where a filter which failed during chunk allocation
+ could allow library to write uncompressed data to disk but think
+ the data was compressed. QAK - 2004/07/29
+ - Fixed bug where I/O to an extendible chunked dataset with zero-sized
+ dimensions would cause library to fail an assertion.
+ QAK - 2004/07/27
+ - Fixed bug where chunked datasets which have filters defined,
+ allocation time set to "late" and whose chunks don't align with
+ the dataspace bounds could have incorrect data stored when
+ overwriting the entire dataset on the first write. QAK - 2004/07/27
+ - Added check to ensure that dataspaces have extents set. JML-2004/07/26
+ - Fixed bug on some Solaris systems where HDF5 would try to use
+ gettimeofday() when that function didn't work properly.
+ JML - 2004/07/23
+ - Fixed bug in H5Sset_extent_simple where setting maximum size to
+ non-zero, then to zero would cause an error. JML - 2004/07/20
+ - Allow NULL pointer for buffer parameter to H5Dread & H5Dwrite
+ when not writing data ("none" selection or hyperslab or point
+ selection with no elements defined). QAK - 2004/07/20
+ - Calling H5Gcreate() on "/" or "." throws an error instead of
+ failing quietly. JML - 2004/07/19
+ - Fixed bug where setting file address size to be very small could
+ trigger an assert if the file grew to more than 64 KB. Now throws
+ an error and data can be recovered. JL/NF - 2004/07/14
+ - Fixed bug where "resurrecting" a dataset was failing.
+ QAK - 2004/07/14
+ - Fixed bug where incorrect data could be read from a chunked dataset
+ after it was extended. QAK - 2004/07/12
+ - After compound datatype with variable-length string in the fields
+ is committed to file, the size is messed up when it's read back.
+ Fixed. SLU - 2004/06/11
+ - Fixed potential file corruption bug when a block of metadata could
+ overlap the end of the internal metadata accumulator buffer and
+ the buffer would be extended correctly, but would incorrectly
+ change it's starting address. QAK - 2004/06/09
+ - Opaque datatype with no tag failed for some operations. Fixed.
+ SLU - 2004/6/3
+ - Fixed potential file corruption bug where dimensions that were
+ too large (a value greater than could be represented in 32-bits)
+ could cause the incorrect amount of space to be allocated in a
+ file for the raw data for the dataset. QAK - 2004/06/01
+ - Fixed dtypes "sw long double -> double" failure in QSC class
+ machines. AKC - 2004/4/16
+
+ Configuration
+ -------------
+ - Fixed the long compile time of H5detect.c when v7.x Intel Compiler
+ is used with optimization NOT off. AKC - 2004/05/20
+
+ Performance
+ -------------
+
+ Tools
+ -----
+ - On SGI h5dump displayed only part of the data due to the bug
+ in the system printf; fixed.
+ EIP - 2004/09/21
+ Documentation
+ -------------
+ - Several descriptive errors have been fixed throughout the
+ documentation, particularly in the reference manual (RM).
+ A selection particularly worthy of note would be these:
+ - The H5Pset_szip description in the RM has been expanded and
+ corrected to facilitate use of SZIP compression.
+ - A note has been added to the H5Dcreate description that an
+ unexplained failure is likely to be due to a property list error
+ that is detected only at the time of dataset creation.
+ FMB - 2004/09/21
+
+ F90 API
+ -------
+ - Fortran functions h5dwrite/read_f and h5awrite/read_f do not
+ accept dims parameter of INTEGER type anymore. Code was removed.
+ 2004/04/15
+
+ C++ API
+ -------
+ - H5::Exception's and its subclasses' constructors that were
+ overloaded to take char pointers are removed and constructors
+ that passed in reference of 'string' are changed to pass
+ by value. In addition, the default value of the data member
+ H5::Exception::detailMessage is changed from 0/NULL to
+ DEFAULT_MSG ("No detailed information provided".)
+ - Prototype for DSetCreatPropList::setLayout is changed: 1st parameter
+ is removed because it was there only by mistake.
+ BMR 2004/08/04
+
+Documentation
+=============
+ HDF5 Library documentation
+ --------------------------
+ - HDF5 C++ API Reference Manual
+ This document has been added to the HDF5 document set.
+ The predecessor document, "HDF5 C++ Interfaces," has been removed.
+ - HDF5 C++ API Design Specification
+ A first draft of this document has been added to the HDF5 document
+ set. The draft has been posted on the HDF5 website and a link
+ has been added to the HDF5 documents index (index.html at the top
+ level of the document set).
+ - Parallel HDF5
+ In prior releases, the HDF5 document set included two parallel
+ HDF5 documents. Those documents have been deleted and the
+ HDF5 documents index (index.html) now links to a "Parallel HDF5"
+ page on the HDF5 website (http://hdf.ncsa.uiuc.edu/HDF5/PHDF5/).
+ - HDF5 High Level APIs
+ Links to the HDF5 High Level APIs and to the HDF5 High Level
+ Reference Manual have been added to the HDF5 documents index
+ (index.html).
+ - HDF5 Reference Manual
+ Tools: h5repack -- A description of the new h5repack tool has been
+ added to the Tools page.
+ Tools: h5dump -- Several new options have been added to h5dump.
+ New functions -- All new functions have been added to the RM.
+ API changes -- Relevant function descriptions have been updated in
+ instances where programming interfaces have changed.
+ FMB - 2004/09/21
+
+ Windows installation documentation
+ ----------------------------------
+ - INSTALL_Windows.txt has been enhanced to include instructions building
+ HDF5 with FORTRAN and C++.
+ - Two optional installation documents have been added. They are
+ INSTALL_Windows_Short.txt and INSTALL_Windows_From_Command_Line.txt.
+ INSTALL_Windows_Short.txt is supposed to help general users who
+ only want to build,test and install HDF5 in a quick way.
+ INSTALL_Windows_From_Command_Line.txt is supposed to help users who
+ would like to compile,test and install HDF5 in command line environment.
+ - INSTALL_Windows_withcpp.txt and INSTALL_Windows_withF90.txt became
+ obsolete. Files are deleted from the release_docs directory.
+ KY 2004/09/16, EIP 2004/9/21
+
+
+
+Platforms Tested
+================
+
+ AIX 5.1 (32 and 64-bit) xlc 6.0.0.6
+ xlf 8.1.1.3
+ xlC 6.0.0.6
+ mpcc_r 6.0.0.6
+ mpxlf_r 8.1.1.3
+ xlc 5.0.2.5
+ xlf 7.1.1.2
+ xlC 5.0.2.5
+ mpcc_r 5.0.2.5
+ mpxlf_r 7.1.1.2
+ AIX 5.2 xlc 6.0.0.8
+ xlC 6.0.0.8
+ xlf 8.1.1.6
+ mpcc_r 6.0.0.8
+ mpxlf_r 8.1.1.6
+ Cray T90 sn7001 10.0.0md Cray Standard C Version 6.4.0.3
+ Cray Fortran Version 3.4.0.0
+ Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.3
+ Cray Fortran Version 3.6.0.3
+ Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.3.6
+ Cray Fortran Version 3.6.0.3.1
+ FreeBSD 4.9 gcc 2.95.4
+ g++ 2.95.4
+ HP-UX B.11.00 HP C HP92453-01 A.11.01.20
+ HP F90 v2.4
+ HP ANSI C++ B3910B A.03.13
+ MPIch 1.2.4
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
+ F90 MIPSpro 7.3.1.3m (64 only)
+ C++ MIPSpro cc 7.3.1.3m
+ mpt 1.6
+ Linux 2.4.18 gcc 2.96, 3.3.2
+ g++ 3.3.2
+ Intel(R) C++ Version 7.1
+ Intel(R) Fortran Compiler Version 7.1
+ PGI compilers (pgcc, pgf90, pgCC) version 5.0-2
+ MPIch 1.2.4
+ Absoft Fortran compiler v9.0
+ Linux 2.4.20-8 gcc 3.3.2
+ PGI compilers (pgcc, pgf90, pgCC) version 5.0-2
+ MPIch 1.2.4
+ Linux 2.4.21-2.9.5ws #3 gcc 3.2.3 (Red Hat Linux 3.2.3-16)
+ SMP x86_64 g++ 3.2.3
+ Linux 2.4.21-4.ELsmp Intel(R) C++ 32-bit Version 8.0
+ Intel(R) Fortran 32-bit Version 8.0
+ gcc 3.4.0
+ MPICH 1..5.2 Inmel 8.0
+ Linux 2.4.19-SMP x86_64 gcc (GCC) 3.2.2 (SuSE Linux)
+ g++ 3.2.2
+ Linux 2.6.4-52smp x86_64 gcc 3.3.3 (SuSE Linux 9.1 AMD64))
+ PGI 5.2-1 C and F90
+
+ Linux 2.4.21-sgi Altix
+ SMP ia64 Intel(R) C++ Version 8.0
+ Intel(R) Fortran Itanium(R) Version 8.0
+ SGI MPI
+ OSF1 V5.1 Compaq C V6.5-303
+ HP Fortran V5.5A-3548
+ Compaq C++ V6.5-040
+ MPI_64bit_R13
+ SunOS 5.7(32 and 64 bit) WorkShop Compilers 5.0 98/12/15 C 5.0
+ (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0
+ WorkShop Compilers 5.0 98/10/25
+ FORTRAN 90 2.0 Patch 107356-04
+ SunOS 5.8(32 and 64 bit) Sun WorkShop 6 update 2 C 5.3
+ (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
+ Sun WorkShop 6 update 2 C++ 5.3
+ TFLOPS r1.0.4 v4.4.3 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with
+ local modifications
+ IA-32 Linux 2.4.18 gcc 2.96
+ Intel(R) C++ Version 7.0
+ Intel(R) Fortran Compiler Version 7.0
+
+ Xeon Linux 2.4.20-31.9smp_perfctr_lustre
+ Intel(R) C++ Version 8.0
+ Intel(R) Fortran Compiler Version 8.0
+
+ IA-64 Linux 2.4.16 ia64 gcc version 3.0.4
+ Intel(R) C++ Version 7.1
+ Intel(R) Fortran Compiler Version 7.1
+
+ IA-64 Linux 2.4.21.SuSE_128.bef1 ia64
+ Intel(R) C++ Version 8.0
+ Intel(R) Fortran Compiler Version 8.0
+ mpich-gm-1.2.5..intel
+
+ Windows 2000 (NT5.0) MSVC++ 6.0
+ MSVC++ .NET
+ DEC Visual Fortran 6.0
+ Intel C and F90 compilers version 7.1
+ Code Warrior 8.0
+ Windows XP MSVC++.NET
+ MSVC++ 6.0
+ DEC Visual Fortran 6.0
+
+ MAC OS X Darwin 7.5
+ gcc and g++ Apple Computer, Inc. GCC
+ version 1175, based on gcc version 3.3.2
+ IBM XL Fortran version 8.1
+ Absoft Fortran compiler v8.2
+
+
+
+Supported Configuration Features Summary
+========================================
+
+Key: y = tested and supported
+ n = not supported or not tested in this release
+ x = not working in this release
+ dna = does not apply
+ ( ) = footnote appears below second table
+
+Platform C F90 F90 C++ zlib SZIP
+ parallel parallel
+Solaris2.7 64-bit y (1) y y (1) y y y
+Solaris2.7 32-bit y (1) y y (1) y y y
+Solaris2.8 64-bit y (1) y y (1) y y y
+Solaris2.8 32-bit y y y (1) y y y
+IRIX64_6.5 64-bit y (2) y y y y y
+IRIX64_6.5 32-bit y (2) n n n y y
+HPUX11.00 y (1) y y y y y
+OSF1 v5.1 y y y y y y
+T90 IEEE n y n n y n
+T3E y (5) y y (5) n y n
+SV1 y (5) y y (5) n y n
+TFLOPS y (1) n n n y n
+AIX-5.1 & 5.2 32-bit y y y y y y
+AIX-5.1 & 5.2 64-bit y y y y y y
+WinXP Visual Studio 6.0 n y (9) n y y y
+WinXP .Net n n n y y y
+WinXP Code Warrior n n n n y y
+Win2000 Visual Studio 6.0 n y (10) n y y y
+Win2000 Visual Studio Intel (6) n y n y y y
+Win2000 .Net n n n y y y
+Mac OS X 10.3 n y (11) n y y y
+FreeBSD 4.9 y (1) n n y y y
+RedHat 7 W (3) y (1) y (12) n y y y
+RedHat 7.3 W Intel (3) n y n y y y
+RedHat 7.3 W PGI (3) n y n y y y
+RedHat 8 & SuSe x86_64 gcc (3) n y (13) n y y y
+Linux 2.4 Xeon C Lustre Intel (3,7) n y n y y y
+Linux 2.4 SuSE ia64 C Intel (3,8) y y y y y y
+Linux 2.4 SGI Altix ia64 Intel (3) y y y y y y
+
+
+Platform Shared static- Thread- STREAM-
+ libraries (4) exec safe VFD
+Solaris2.7 64-bit y x y y
+Solaris2.7 32-bit y x y y
+Solaris2.8 64-bit y x y y
+Solaris2.8 32-bit y x y y
+IRIX64_6.5 64-bit y y y y
+IRIX64_6.5 32-bit y y y y
+HPUX11.00 y x n y
+OSF1 v5.1 y y n y
+T90 IEEE n y n y
+T3E n y n y
+SV1 n y n y
+TFLOPS n y n n
+AIX-5.1 & 5.2 32-bit n y n y
+AIX-5.1 & 5.2 64-bit n y n y
+WinXP Visual Studio 6.0 y y n n
+WinXP .Net y y n n
+WinXP Code Warrior n y n n
+Win2000 Visual Studio 6.0 y y n n
+Win2000 Visual Studio Intel (6) y y n n
+Win2000 .Net y y n n
+Mac OS X 10.3 y y n y
+FreeBSD 4.9 y y y y
+RedHat 7 W (3) y y y y
+RedHat 7.3 W Intel (3) n y n y
+RedHat 7.3 W PGI (3) n y n y
+RedHat 8 & SuSe x86_64 gcc (3) n y n y
+Linux 2.4 Xeon C Lustre Intel (3,7) y y n y
+Linux 2.4 SuSE ia64 C Intel (3,8) y y n n
+Linux 2.4 SGI Altix ia64 Intel (3) y y n y
+
+
+
+Compiler versions for each platform are listed in the "Platforms Tested"
+table found elsewhere in this file (RELEASE.txt). Unless otherwise noted,
+compilers used are the system compilers.
+
+Footnotes: (1) Using mpich 1.2.4
+ (2) Using mpt and mpich 1.2.4
+ (3) Linux 2.4 with GNU, Intel, and PGI compilers, as indicated
+ W or C indicates workstation or cluster, respectively
+ (4) Shared libraries are provided only for the C library,
+ except on Windows where they are provided for C and C++
+ (5) Using mpt
+ (6) Intel 7.1 compilers in Visual Studio 6.0 environment
+ (7) Linux 2.4.20-31.9. Xeon cluster with smp_perfctr_lustre
+ and Intel compilers
+ (8) Linux 2.4.21, SuSE_128.befl. Ia64 cluster with Intel compilers
+ (9) DEC Visual Fortran 6.0 and Intel 7.1
+ (10) DEC Visual Fortran 6.0
+ (11) IBM XLF and Absoft
+ (12) PGI, Absoft
+ (13) PGI
+ FMB/EIP - 2004/09/21
+
+
+
+Known Problems
+==============
+* h5fc and h5c++ compilation scripts have a bug: object files (*.o) cannot be
+ created when source code is compiled using h5fc or h5c++. We will provide
+ a fix. Please check ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/src/patches/
+ for the patches.
+
+* Fortran subroutine h5pget_driver_f doesn't return a correct driver information.
+
+* There are two h5dump xml tests(h5dump --xml thlink.h5 and h5dump --xml tmany.h5)
+ failed on windows xp with .NET for debug and debug dll. Release and Release
+ dll work fine.
+
+* The h5dump tests may fail to match the expected output on some platforms
+ (e.g. parallel jobs, Windows) where the error messages directed to
+ "stderr" do not appear in the "right order" with output from stdout.
+ This is not an error.
+
+* The stream-vfd test uses ip port 10007 for testing. If another
+ application is already using that port address, the test will hang
+ indefinitely and has to be terminated by the kill command. To try the
+ test again, change the port address in test/stream_test.c to one not
+ being used in the host.
+
+* The --enable-static-exec configure flag fails to compile for Solaris
+ platforms. This is due to the fact that not all of the system
+ libraries on Solaris are available in a static format.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on IBM SP2 platform for the serial mode. The parallel mode works fine
+ with this option.
+
+ It is suggested that you don't use this option on these platforms
+ during configuration.
+
+* The Stream VFD was not tested yet under Windows. It is not supported
+ in the TFLOPS machine.
+
+* The ./dsets tests failed in the TFLOPS machine if the test program,
+ dsets.c, is compiled with the -O option. The hdf5 library still works
+ correctly with the -O option. The test program works fine if it is
+ compiled with -O1 or -O0. Only -O (same as -O2) causes the test
+ program to fail.
+
+* Certain platforms give false negatives when testing h5ls:
+ - Cray J90 and Cray T90IEEE give errors during testing when displaying
+ some floating-point values. These are benign differences due to
+ the different precision in the values displayed and h5ls appears to
+ be dumping floating-point numbers correctly.
+
+* Before building HDF5 F90 Library from source on Crays
+ replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
+ subdirectory in the top level directory with the Cray-specific files
+ from the site:
+ ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/src/patches/
+
+* On some platforms that use Intel and Absoft compilers to build HDF5 fortran library,
+ compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90
+ complaining about exit subroutine. Comment out the line
+ IF (total_error .ne. 0) CALL exit (total_error)
+
+* On IA32 and IA64 systems, if you use a compiler other than GCC (such as
+ Intel's ecc or icc compilers), you will need to modify the generated
+ "libtool" program after configuration is finished. On or around line 104 of
+ the libtool file, there are lines which look like:
+
+ # How to pass a linker flag through the compiler.
+ wl=""
+
+ change these lines to this:
+
+ # How to pass a linker flag through the compiler.
+ wl="-Wl,"
+
+ UPDATE: This is now done automatically by the configure script. However, if
+ you still experience a problem, you may want to check this line in the
+ libtool file and make sure that it has the correct value.
+
+* Information about building with PGI and Intel compilers is available in
+ INSTALL file sections 5.7 and 5.8
+
+* In LANL QSC, the new cc compiler has problems converting small values of
+ long long (absolute values less than 1**-308) to double. This triggers
+ the test/dtypes to report failure in the
+ Testing random sw long double -> double conversions
+ If -ieee is used, the converted doubles spread over the range 0.0 to 1**-308.
+ If -ieee is not used, the converted double values are mostly 0.0 but
+ occasionally as 1**-308. This has been reported to the system staff.
+ All other tests have passed.
+
+* On at least one system, (SDSC DataStar), the scheduler (in this case
+ LoadLeveler) sends job status updates to standard error when you run
+ any executable that was compiled with the parallel compilers.
+
+ This causes problems when running "make check" on parallel builds, as
+ many of the tool tests function by saving the output from test runs,
+ and comparing it to an exemplar.
+
+ The best solution is to reconfigure the target system so it no longer
+ inserts the extra text. However, this may not be practical.
+
+ In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
+ the configure and build. This will cause "make check" to continue after
+ detecting errors in the tool tests. However, in the case of SDSC DataStar,
+ it also leaves you with some 150 "failed" tests to examine by hand.
+
+ A second solution is to write a script to run serial tests and filter
+ out the text added by the scheduler. A sample script used on SDSC
+ DataStar is given below, but you will probably have to customize it
+ for your installation.
+
+ Observe that the basic idea is to insert the script as the first item
+ on the command line which executes the test. The script then
+ executes the test and filters out the offending text before passing
+ it on.
+
+ #!/bin/csh
+
+ set STDOUT_FILE=~/bin/serial_filter.stdout
+ set STDERR_FILE=~/bin/serial_filter.stderr
+
+ rm -f $STDOUT_FILE $STDERR_FILE
+
+ ($* > $STDOUT_FILE) >& $STDERR_FILE
+
+ set RETURN_VALUE=$status
+
+ cat $STDOUT_FILE
+
+ tail +3 $STDERR_FILE
+
+ exit $RETURN_VALUE
+
+ You get the HDF make files and test scripts to execute your filter script
+ by setting the environment variable "RUNSERIAL" to the full path of the
+ script prior to running configure for parallel builds. Remember to
+ "unsetenv RUNSERIAL" before running configure for a serial build.
+
+ Note that the RUNSERIAL environment variable exists so that we can
+ can prefix serial runs as necessary on the target system. On DataStar,
+ no prefix is necessary. However on an MPICH system, the prefix might
+ have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
+ get the serial tests to run at all.
+
+ In such cases, you will have to include the regular prefix in your
+ filter script.
+
+%%%%1.6.2%%%% Release Information for hdf5-1.6.2 (12/February/04)
+
+HDF5 version 1.6.2 released on Thu Feb 12 14:18:13 CST 2004
+================================================================================
+
+
+INTRODUCTION
+
+This document describes the differences between HDF5-1.6.1 and
+HDF5-1.6.2, and contains information on the platforms tested and
+known problems in HDF5-1.6.2. For more details check the HISTORY.txt
+file in the HDF5 source.
+
+The HDF5 documentation can be found on the NCSA ftp server
+(ftp.ncsa.uiuc.edu) in the directory:
+
+ /HDF/HDF5/docs/
+
+For more information look at the HDF5 home page at:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ hdfhelp@ncsa.uiuc.edu
+
+CONTENTS
+
+- New Features
+- Support for new platforms and languages
+- Bug Fixes since HDF5-1.6.1
+- Documentation
+- Platforms Tested
+- Supported Configuration Features Summary
+- Known Problems
+
+
+New Features
+============
+
+ Configuration:
+ --------------
+ - Default of $prefix is changed to $PWD/hdf5 so that multiple
+ builds using --srcdir is possible in the same machine.
+ AKC - 2003/12/1
+
+ Library:
+ --------
+ - Added H5Iget_ref, H5Iinc_ref and H5Idec_ref routines to the C
+ library and the FORTRAN wrapper. See the reference manual for a
+ full description of these new routines. QAK - 2003/12/11
+
+ Parallel Library:
+ -----------------
+ - The parallel tests in testpar/ now provides different levels of
+ verbosity via the '-v' option. The default is less verbose
+ than before. AKC - 2004/01/23
+ - Added parallel test, test_mpio_1wMr, which tests if the
+ underlying parallel I/O system is conforming to the POSIX
+ write/read requirement. This version includes options of using
+ atomicity and file-sync. AKC - 2003/11/27
+
+ Tools:
+ ------
+ - Added option -showconfig to compiler tools (h5cc,h5fc,h5c++).
+ AKC - 2004/01/08
+ - Install the "h5cc" and "h5fc" tools as "h5pcc" and "h5pfc"
+ respectively if library is built in parallel mode. AKC - 2004/01/07
+ - Added metadata benchmark (perform/perf_meta). SLU - 2003/10/03
+
+ C++ API:
+ --------
+
+
+Support for new platforms, languages and compilers.
+=======================================
+ - HDF5 Fortran APIs are supported on MAC OSX with IBM XL Fortran compiler
+ version 8.1 Beta
+ Use --disbale-shared --enable-static flags with configure when
+ building HDF5 Fortran Library on MAC OSX.
+ - C and C++ Libraries are available for Linux64 RH8
+ - C, C++ and Fortran sequential Libraries, and C and Fortran parallel
+ Libraries are available for Altix (Linux ia64)
+
+Bug Fixes since HDF5-1.6.1 release
+==================================
+
+ Library
+ -------
+ - Fixed problem with H5Tget_native_type() not handling opaque fields
+ correctly. QAK - 2004/01/31
+ - Fixed several errors in B-tree deletion code which could cause a
+ B-tree (used with groups and chunked datasets) to become corrupt
+ with the right sequence of deleted objects. QAK - 2004/01/19
+ - Fixed small internal memory leaks of fill-value information.
+ QAK - 2004/01/13
+ - Fixed bug that caused variable-length datatypes (strings or sequences)
+ used for datasets in files with objects that were unlinked to
+ fail to be read/written to a file. QAK - 2004/01/13
+ - Detect situation where szip 'pixels per block' is larger than the
+ fastest changing dimension of a dataset's chunk size and disallow
+ this (due to limits in szip library). QAK - 2003/12/31
+ - Fixed bug with flattened hyperslab selections that would generate
+ incorrect hyperslab information with certain high-dimensionality
+ combinations of start/stride/count/block information.
+ QAK - 2003/12/31
+ - Fixed bug with variable-length datatypes used in compound datatypes.
+ SLU - 2003/12/29
+ - Fixed bug in parallel I/O routines that would cause reads from
+ "short datasets" (datasets which were only partially written out)
+ to return invalid data. QAK & AKC - 2003/12/19
+ - Fixed bug where scalar dataspaces for attributes were reporting as
+ simple dataspaces. QAK - 2003/12/13
+ - Fixed problem with selection offsets of hyperslab selections in
+ chunked datasets causing the library to go into an infinite loop.
+ QAK - 2003/12/13
+ - Fixed H5Giterate to avoid re-using index parameter after iteration
+ callback has been called (allows iteration callback to modify the
+ index parameter itself). QAK - 2003/12/06
+ - Fixed various floating-point conversion problems, including a
+ change which could corrupt data when converting from double->float.
+ QAK - 2003/11/24
+ - Changed "single process" metadata writing in library to collective
+ I/O by all processes, in order to guarantee correct data being
+ written with MPI-I/O. QAK - 2003/11/20
+ - Fixed problems with fill values and variable-length types and also
+ I/O on VL values that were set to NULL. QAK - 2003/11/08
+ - Fixed problems with MPI datatypes that caused ASCI Q machine to
+ hang. QAK - 2003/10/28
+ - Removed HDF5_MPI_PREFER_DERIVED_TYPES environment variable support,
+ since it had no benefit. QAK - 2003/10/28
+ - Single hyperslab selections (which were set with only one call to
+ H5Sselect_hyperslab) that had dimensions that could be "flattened"
+ but were interspersed with dimensions that could not be flattened
+ were not correctly handled, causing core dumps. QAK - 2003/10/25
+ - Avoid metadata cache from preempting current dataset object header
+ when looking up information about the named datatype that the
+ dataset uses. QAK - 2003/10/20
+
+ Configuration
+ -------------
+ - Parallel I/O with the MPI-I/O driver will no longer work if the
+ filesystem is not POSIX compliant. The "HDF5_MPI_1_METAWRITE"
+ environment variable has been removed. QAK - 2004/01/30
+
+ Performance
+ -------------
+ - More optimizations to inner loops of datatype conversions for
+ integers and floats which give a 10-50% speedup. QAK - 2003/11/07
+ - Hoisted invariant 'if/else's out of inner datatype conversion loop for
+ integer and floating-point values, giving about a 20% speedup.
+ QAK - 2003/10/20
+
+ Tools
+ -----
+ - Fixed h5redeploy which sometimes complain too many argument for the
+ test command. (The complain did not hinder the h5redploy to proceed
+ correctly.) AKC - 2003/11/03
+
+ Documentation
+ -------------
+
+
+Documentation
+=============
+
+
+
+Platforms Tested
+================
+
+ AIX 5.1 (32 and 64-bit) xlc 6.0.0.2
+ xlf 8.1.0.3
+ xlC 6.0.0.4
+ xlc 5.0.2.5
+ xlf 7.1.1.2
+ xlC 5.0.2.5
+ mpcc_r 5.0.2.5
+ mpxlf_r 7.1.1.2
+ poe 3.2.0.10
+ Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.2
+ Cray Fortran Version 3.6.0.2
+ Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.2
+ Cray Fortran Version 3.6.0.2
+ Cray T90IEEE 10.0.0md Cray Standard C Version 6.4.0.3
+ Cray Fortran Version 3.4.0.0
+ FreeBSD 4.9 gcc 2.95.4
+ g++ 2.95.4
+ HP-UX B.11.00 HP C HP92453-01 A.11.01.20
+ HP F90 v2.4
+ HP ANSI C++ B3910B A.03.13
+ MPIch 1.2.4
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
+ F90 MIPSpro 7.3.1.3m (64 only)
+ C++ MIPSpro cc 7.3.1.3m
+ Linux 2.4.18 gcc 2.96, 3.3.2
+ g++ 3.3.2
+ Intel(R) C++ Version 7.1
+ Intel(R) Fortran Compiler Version 7.1
+ PGI compilers (pgcc, pgf90, pgCC) version 5.0-2
+ MPIch 1.2.4
+ Linux 2.4.20-8 gcc 3.3.2
+ PGI compilers (pgcc, pgf90, pgCC) version 5.0-2
+ MPIch 1.2.4
+ Linux 2.4.21-2.9.5ws #3 gcc 3.2.3 (Red Hat Linux 3.2.3-16)
+ SMP x86_64 g++ 3.2.3
+ Linux 2.4.19-SMP x86_64 gcc (GCC) 3.2.2 (SuSE Linux)
+ g++ 3.2.2
+
+ Linux 2.4.21-sgi Altix
+ SMP ia64 Intel(R) C++ Version 7.1
+ Intel(R) Fortran Itanium(R) Version 7.1
+ SGI MPI
+ OSF1 V5.1 Compaq C V6.4-014
+ Compaq Fortran V5.5-2602
+ Compaq Fortran V5.5-1877
+ Compaq C++ V6.5-033
+ Compaq C++ V6.5-030
+ MPI_64bit_R13
+ SunOS 5.7(32 and 64 bit) WorkShop Compilers 5.0 98/12/15 C 5.0
+ (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0
+ WorkShop Compilers 5.0 98/10/25
+ FORTRAN 90 2.0 Patch 107356-04
+ SunOS 5.8(32 and 64 bit) Sun WorkShop 6 update 2 C 5.3
+ (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
+ Sun WorkShop 6 update 2 C++ 5.3
+ TFLOPS r1.0.4 v4.4.2 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with
+ local modifications
+ IA-32 Linux 2.4.18 gcc 2.96
+ Intel(R) C++ Version 7.0
+ Intel(R) Fortran Compiler Version 7.0
+
+ IA-64 Linux 2.4.16 ia64 gcc version 3.0.4
+ Intel(R) C++ Version 7.1
+ Intel(R) Fortran Compiler Version 7.1
+
+ IA-64 Linux 2.4.21.SuSE_128.bef1 ia64
+ Intel(R) C++ Version 7.1
+ Intel(R) Fortran Compiler Version 7.1
+ mpich-gm-1.2.5..intel
+
+ Windows 2000 (NT5.0) MSVC++ 6.0
+ DEC Visual Fortran 6.0
+ Intel C and F90 compilers version 7.1
+ Code Warrior 8.0
+ Windows XP MSVC++.NET
+ MAC OS X Darwin 7.2
+ gcc and g++ Apple Computer, Inc. GCC
+ version 1175, based on gcc version 3.3.2
+ IBM XL Fortran version 8.1 Beta
+
+
+
+Supported Configuration Features Summary
+========================================
+
+Key: y = tested and supported
+ n = not supported or not tested in this release
+ x = not working in this release
+ dna = does not apply
+ ( ) = footnote appears below second table
+
+Platform C C F90 F90 C++ Shared zlib
+ parallel parallel libraries (4)
+Solaris2.7 64-bit y y (1) y y (1) y y y
+Solaris2.7 32-bit y y (1) y y (1) y y y
+Solaris2.8 64-bit y y (1) y y (1) y y y
+Solaris2.8 32-bit y y y y (1) y y y
+IRIX64_6.5 64-bit y y (2) y y y y y
+IRIX64_6.5 32-bit y y (2) n n n y y
+HPUX11.00 y y (1) y y y y y
+OSF1 v5.1 y y y y y y y
+T3E y y (5) y y (5) n n y
+SV1 y y (5) y y (5) n n y
+T90 IEEE y y (5) y y (5) n n y
+TFLOPS n y (1) n n n n y
+AIX-5.1 32-bit y y y y y n y
+AIX-5.1 64-bit y y y y y n y
+WinXP Visual Studio (7) y n n n y y y
+WinXP Intel y n n n y y y
+WinXP CW y n n n n n y
+Win2000 Visual Studio y n y n y y y
+Win2000 Intel y n y n y y y
+Mac OS X 10.3 y n y n y y y
+FreeBSD 4.9 y y (1) n n y y y
+RedHat 7, 8 & 9 ia32 y y (1) y(PGI) n y y y
+ W gcc (3)
+RedHat 7.3 ia32 W Intel (3) y n y n y n y
+RedHat 7.3 ia32 W PGI (3) y n y n y n y
+RedHat 7 ia32 C Intel (3) y n y n y n y
+RedHat 7.1 ia64 C Intel (3) y n y n y n y
+RedHat 8 & SuSe x86_64 y n n n y n y
+ gcc (3)
+Linux 2.4 SGI Altix ia64 y n y n y y y
+ Intel (3)
+
+
+Platform static- Thread- SZIP GASS STREAM- High- H4/H5
+ exec safe VFD level tools
+ APIs (6)
+Solaris2.7 64-bit x y y n y y n
+Solaris2.7 32-bit x y y n y y y
+Solaris2.8 64-bit x y y n y y n
+Solaris2.8 32-bit x y y n y y y
+IRIX64_6.5 64-bit x y y y y y y
+IRIX64_6.5 32-bit x y y y y y y
+HPUX11.00 x n y n y y y
+OSF1 v5.1 y n y n y y y
+T3E y n n n y y y
+SV1 y n n n y y y
+T90 IEEE y n n n y y n
+TFLOPS y n n n n n n
+AIX-5.1 32-bit y n y n y y y
+AIX-5.1 64-bit y n y n y y y
+WinXP Visual Studio y n y n n y y
+WinXP Intel y n y n n y y
+WinXP CW y n y n n y y
+Win2000 Visual Studio y n y n n y y
+Win2000 Intel y n y n n y y
+Mac OS X 10.3 y n y n y y n
+FreeBSD 4.9 y y y n y y y
+RedHat 7, 8 & 9 ia32 y y y n y y y
+ W gcc (3)
+RedHat 7.3 ia32 W Intel (3) y n y n y n n
+RedHat 7.3 ia32 W PGI (3) y n y n y n n
+RedHat 7 ia32 C Intel (3) y n y n y y y
+RedHat 7.1 ia64 C Intel (3) y n y n y y y
+RedHat 8 & SuSe x86_64 y n y n y y y
+ gcc (3)
+Linux 2.4 SGI Altix ia64 y n y n y y y
+ Intel (3)
+
+
+Compiler versions for each platform are listed in the "Platforms Tested"
+table found elsewhere in this file (RELEASE.txt). Unless otherwise noted,
+compilers used are the system compilers.
+
+Footnotes: (1) Using mpich 1.2.4.
+ (2) Using mpt and mpich 1.2.4.
+ (3) Linux 2.4 with GNU, Intel, and PGI compilers, as indicated.
+ W or C indicates workstation or cluster, respectively.
+ (4) Shared libraries are provided only for the C library,
+ except on Windows where they are provided for C and C++.
+ (5) Using mpt.
+ (6) Includes the H4toH5 Library and the h4toh5 and h5toh4
+ utilities.
+
+
+Known Problems
+==============
+* Fortran subroutine h5pget_driver_f doesn't return a correct driver information.
+
+* There are two h5dump xml tests(h5dump --xml thlink.h5 and h5dump --xml tmany.h5)
+ failed on windows xp with .NET for debug and debug dll. Release and Release
+ dll work fine.
+
+* The h5dump tests may fail to match the expected output on some platforms
+ (e.g. parallel jobs, Windows) where the error messages directed to
+ "stderr" do not appear in the "right order" with output from stdout.
+ This is not an error.
+
+* The stream-vfd test uses ip port 10007 for testing. If another
+ application is already using that port address, the test will hang
+ indefinitely and has to be terminated by the kill command. To try the
+ test again, change the port address in test/stream_test.c to one not
+ being used in the host.
+
+* The --enable-static-exec configure flag fails to compile for Solaris
+ platforms. This is due to the fact that not all of the system
+ libraries on Solaris are available in a static format.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on IBM SP2 platform for the serial mode. The parallel mode works fine
+ with this option.
+
+ It is suggested that you don't use this option on these platforms
+ during configuration.
+
+* The Stream VFD was not tested yet under Windows. It is not supported
+ in the TFLOPS machine.
+
+
+* The ./dsets tests failed in the TFLOPS machine if the test program,
+ dsets.c, is compiled with the -O option. The hdf5 library still works
+ correctly with the -O option. The test program works fine if it is
+ compiled with -O1 or -O0. Only -O (same as -O2) causes the test
+ program to fail.
+
+* Certain platforms give false negatives when testing h5ls:
+ - Cray J90 and Cray T90IEEE give errors during testing when displaying
+ some floating-point values. These are benign differences due to
+ the different precision in the values displayed and h5ls appears to
+ be dumping floating-point numbers correctly.
+
+* Before building HDF5 F90 Library from source on Crays
+ replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
+ subdirectory in the top level directory with the Cray-specific files
+ from the site:
+ ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/hdf5-1.6.2/F90_source_for_Crays
+
+* On some platforms that use Intel compilers to build HDF5 fortran library,
+ compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90
+ complaining about exit subroutine. Comment out the line
+ IF (total_error .ne. 0) CALL exit (total_error)
+
+* On IA32 and IA64 systems, if you use a compiler other than GCC (such as
+ Intel's ecc or icc compilers), you will need to modify the generated
+ "libtool" program after configuration is finished. On or around line 104 of
+ the libtool file, there are lines which look like:
+
+ # How to pass a linker flag through the compiler.
+ wl=""
+
+ change these lines to this:
+
+ # How to pass a linker flag through the compiler.
+ wl="-Wl,"
+
+ UPDATE: This is now done automatically by the configure script. However, if
+ you still experience a problem, you may want to check this line in the
+ libtool file and make sure that it has the correct value.
+
+* Information about building with PGI and Intel compilers is available in
+ INSTALL file sections 5.7 and 5.8
+
+* In LANL QSC, the new cc compiler has problems converting small values of
+ long long (absolute values less than 1**-308) to double. This triggers
+ the test/dtypes to report failure in the
+ Testing random sw long double -> double conversions
+ If -ieee is used, the converted doubles spread over the range 0.0 to 1**-308.
+ If -ieee is not used, the converted double values are mostly 0.0 but
+ occasionally as 1**-308. This has been reported to the system staff.
+ All other tests have passed.
+
+* On AIX 5.1 when 64-bit parallel C Library is built with zlib configured in,
+ compilation fails for H5Zdeflate.c. To bypass the problem, remove "const"
+ definition in front of H5Z_DEFLATE in H5Zpkg.h line 29.
+
+%%%%1.6.1%%%% Release Information for hdf5-1.6.1 (16/October/03)
+
+15. Release information for HDF5 version 1.6.1
+================================================
+
+INTRODUCTION
+
+This document describes the differences between HDF5-1.6.0 and
+HDF5-1.6.1, and contains information on the platforms tested and
+known problems in HDF5-1.6.1. For more details check the HISTORY.txt
+file in the HDF5 source.
+
+The HDF5 documentation can be found on the NCSA ftp server
+(ftp.ncsa.uiuc.edu) in the directory:
+
+ /HDF/HDF5/docs/
+
+For more information look at the HDF5 home page at:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ hdfhelp@ncsa.uiuc.edu
+
+CONTENTS
+
+- New Features
+- Support for new platforms and languages
+- Bug Fixes since HDF5-1.6.0
+- Documentation
+- Platforms Tested
+- Known Problems
+
+
+New Features
+============
+
+ Configuration:
+ --------------
+
+ Library:
+ --------
+ - Added new fields to the H5G_stat_t for more information about an
+ object's object header. QAK 2003/10/06
+ - Added new H5Fget_freespace() routine to query the free space in a
+ given file. QAK 2003/10/06
+
+ Parallel Library:
+ -----------------
+
+ Tools:
+ ------
+
+ C++ API:
+ --------
+ - Added overloaded functions read and write to H5::Attribute.
+ BMR - 2003/04/21
+ - Added an overloaded constructor H5::StrType so the need to separately
+ set the length of the string type can be eliminated. BMR - 2003/04/21
+ - Added overloaded functions read and write to H5::DataSet.
+ BMR - 2003/04/27
+
+ The following items were added but not documented in previous releases:
+
+ - On windows, any application, that uses the C++ API dll, must
+ include the name HDF5CPP_USEDLL in its project setting. (Feb 17, 2002)
+ BMR - 2003/10/10
+ - Added missing default constructor H5::H5File. (Apr 26, 2002)
+ BMR - 2003/10/10
+ - Added new member function H5::DataSet::fillMemBuf per the new C
+ API H5Dfill, which fills the elements in a selection for a memory
+ buffer with a fill value. (May 16, 2002) BMR - 2003/10/10
+ - Added the new member function getMemberIndex to H5::EnumType
+ and H5::CompType to match the new C API H5Tget_member_index. Given
+ the name of a member of an enumeration or compound datatype, this
+ new function queries the index of the member. (May 16, 2002)
+ BMR - 2003/10/10
+ - Added these member functions to H5::Group per the new C functions
+ H5Gget_num_objs, H5Gget_objname_by_idx and H5Gget_objtype_by_idx:
+ + getNumObjs: Returns the number of objects in the group.
+ + getObjnameByIdx: Retrieves the name of an object in a group,
+ given an index
+ + getObjTypeByIdx: Returns the type of an object in a group,
+ given an index
+ (Jan 20, 2003) BMR - 2003/10/10
+
+
+Support for new platforms, languages and compilers.
+=======================================
+ - gcc 3.3.1 is supported on Linux.
+
+
+Bug Fixes since HDF5-1.6.0 release
+==================================
+
+ Library
+ -------
+ - Fixed incorrect datatype of the third parameter to the Fortran90
+ h5pset(get)_cache_f functions (INTEGER to INTEGER(SIZE_T)) EIP - 2003/10/13
+ - Fixed problems with accessing variable-length data datatypes on
+ Crays. QAK - 2003/10/10
+ - Fixed potential file corruption bug when too many object header
+ messages (probably attributes, from a user perspective) were
+ inserted into an object header and certain other conditions were
+ met. QAK - 2003/10/08
+ - Changed implementation of internal ID searching algorithm to avoid
+ O(n) behavior for many common cases. QAK - 2003/10/06
+ - Allow partial parallel writing to compact datasets. QAK - 2003/10/06
+ - Correctly create reference to shared datatype in attribute, instead
+ of making a copy of the shared datatype in the attribute.
+ QAK - 2003/10/01
+ - Revert changes which caused files >2GB to fail when created with
+ MPI-I/O file driver on certain platforms. QAK - 2003/09/16
+ - Allow compound datatypes to grow in size. SLU - 2003/09/10
+ - Detect if a type is already packed before attempting to pack it
+ again or check if it is locked. SLU - 2003/09/10
+ - Corrected bug when opening a file twice with read-only permission
+ for one open and then closing the read-only access file ID would
+ generate an error. QAK - 2003/09/10
+ - Corrected bug in repeated calls to H5Pget_access_plist() which would
+ incorrectly manage reference counts of internal information and
+ eventually blow up. QAK - 2003/09/02
+ - Return rank of the array datatype on successful call to
+ H5Tget_array_dims(). QAK - 2003/08/30
+ - Corrected bug in H5Tdetect_class which was not correctly detecting
+ datatype classes of fields in nested compound datatypes in some
+ circumstances. QAK - 2003/08/30
+ - Corrected bug in sieve buffer code which could cause loss of data
+ when a small dataset was created and deleted in quick succession.
+ QAK - 2003/08/27
+ - Corrected bug in H5Gget_objname_by_idx which was not allowing NULL
+ for the name when just querying for the object name's length.
+ QAK - 2003/08/25
+ - Corrected bug in variable-length string handling which could
+ generate a core dump on writing variable-length strings as part
+ of a compound datatype on certain architectures. QAK - 2003/08/25
+ - Corrected bug in H5Tget_native_type which would incorrectly compute
+ the size of certain compound datatypes and also incorrectly
+ compute the offset of the last field for those compound datatypes.
+ QAK - 2003/08/25
+ - Corrected bug in H5Tget_native_type which would drop string datatype
+ metadata (padding, etc.) QAK - 2003/08/25
+ - Corrected bugs in H5Gget_num_objs, H5Gget_objname_by_idx and
+ H5Gget_objtype_by_idx to allow them to accept location IDs, not just
+ group IDs. QAK - 2003/08/21
+ - Corrected bug when using scalar dataspace for memory selection and
+ operating on chunked dataset. QAK - 2003/08/18
+ - Corrected bugs with multiple '/' characters in names for H5Glink
+ and H5Gunlink. QAK - 2003/08/16
+ - Corrected bug with user blocks that didn't allow a user block to
+ be inserted in front of a file after the file was created.
+ QAK - 2003/08/13
+ - Corrected errors with using point selections to access data in
+ chunked datasets. QAK - 2003/07/23
+ - Corrected error with variable-length datatypes and chunked datasets
+ which caused H5Dwrite to fail sometimes. QAK - 2003/07/19
+ - Modified library and file format to support storing indexed storage
+ (chunked dataset) B-tree's with non-default internal 'K' values.
+ QAK - 2003/07/15
+ - Returned H5T_BKG_TEMP support to library after it was accidentally
+ removed. QAK - 2003/07/14
+
+ Configuration
+ -------------
+ - Fixed the error that caused "make install" to fail because of the
+ macro definition syntax of "prefix?=..." AKC - 2003/07/22
+
+ Performance
+ -------------
+
+ Tools
+ -----
+ - Fixed a segmentation fault of h5diff when percentage option is used.
+ AKC - 2003/08/27
+ - Switched away from tools using internal "fixtype" function(s) to use
+ H5Tget_native_type() internally. QAK - 2003/08/25
+
+ Documentation
+ -------------
+ - Added two missing Fortran APIs (h5pget_fapl_mpiposix_f and
+ h5pset_fapl_mpiposix_f) to the reference manual.
+ FMB - 2003/10/15
+ - Corrected the reference manual descriptions of H5open/h5open_f and
+ H5close/h5close_f to indicate that these calls are required in
+ Fortran90 applications. FMB - 2003/10/15
+
+
+Documentation
+=============
+
+ Fortran90 APIs are being integrated into the main body of the
+ HDF5 Reference Manual (RM). This process is complete in all RM sections
+ except H5P.
+
+ A PDF version of the RM will be posted on the HDF5 website
+ (at http://hdf.ncsa.uiuc.edu/HDF5/doc/PSandPDF/) approximately one week
+ after the release.
+
+
+Platforms Tested
+================
+
+ AIX 5.1 (32 and 64-bit) xlc 6.0.0.2
+ xlf 8.1.0.3
+ xlC 6.0.0.4
+ xlc 5.0.2.5
+ xlf 7.1.1.2
+ xlC 5.0.2.5
+ mpcc_r 5.0.2.5
+ mpxlf_r 7.1.1.2
+ poe 3.2.0.10
+ Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.2
+ Cray Fortran Version 3.6.0.2
+ Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.2
+ Cray Fortran Version 3.6.0.2
+ Cray T90IEEE 10.0.1.01y Cray Standard C Version 6.4.0.2.3
+ Cray Fortran Version 3.4.0.3
+ FreeBSD 4.9 gcc 2.95.4
+ g++ 2.95.4
+ HP-UX B.11.00 HP C HP92453-01 A.11.01.20
+ HP F90 v2.4
+ HP ANSI C++ B3910B A.03.13
+ HP MPI 01.07.00.00
+ IRIX 6.5 MIPSpro cc 7.3.1.2m
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
+ F90 MIPSpro 7.3.1.3m (64 only)
+ MPIch 1.2.4
+ Linux 2.4.18 gcc 2.96, 3.2.2, 3.3.1
+ g++ 3.2.2, 3.2.3
+ Intel(R) C++ Version 7.1
+ Intel(R) Fortran Compiler Version 7.1
+ PGI compilers (pgcc, pgf90, pgCC) version 4.0-2
+ MPIch 1.2.4
+ Linux 2.4.20-8 gcc 3.2.2
+ OSF1 V5.1 Compaq C V6.4-014
+ Compaq C V6.3-027
+ Compaq Fortran V5.5-2602
+ Compaq C++ V6.5-030
+ MPI_64bit_R5
+ g++ version 3.0 for C++
+ SunOS 5.7(32 and 64 bit) WorkShop Compilers 5.0 98/12/15 C 5.0
+ (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0
+ WorkShop Compilers 5.0 98/10/25
+ FORTRAN 90 2.0 Patch 107356-04
+ SunOS 5.8(32 and 64 bit) Sun WorkShop 6 update 2 C 5.3
+ (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
+ Sun WorkShop 6 update 2 C++ 5.3
+ TFLOPS r1.0.4 v4.4.0 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with
+ local modifications
+ IA-32 Linux 2.4.9 gcc 2.96
+ Intel(R) C++ Version 7.0
+ Intel(R) Fortran Compiler Version 7.0
+
+ IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731
+ Intel(R) C++ Version 7.0
+ Intel(R) Fortran Compiler Version 7.0
+ Windows 2000 (NT5.0) MSVC++ 6.0
+ DEC Visual Fortran 6.0
+ Intel C and F90 compilers version 7.1
+ Code Warrior 8.0
+ Windows XP MSVC++.NET
+ MAC OS X Darwin 6.8
+ gcc and g++ Apple Computer, Inc. GCC
+ version 1175, based on gcc version 3.1
+
+
+
+Supported Configuration Features Summary
+========================================
+
+ In the tables below
+ y = tested and supported
+ n = not supported or not tested in this release
+ x = not working in this release
+ dna = does not apply
+ ( ) = footnote appears below second table
+
+Platform C C F90 F90 C++ Shared zlib
+ parallel parallel libraries (4)
+Solaris2.7 64-bit y y (1) y y (1) y y y
+Solaris2.7 32-bit y y (1) y y (1) y y y
+Solaris2.8 64-bit y y (1) y y (1) y y y
+Solaris2.8 32-bit y y y y (1) y y y
+IRIX6.5 y y (1) n n n y y
+IRIX64_6.5 64-bit y y (2) y y y y y
+IRIX64_6.5 32-bit y y (2) n n n y y
+HPUX11.00 y y (1) y y y y y
+OSF1 v5.1 y y y y y y y
+T3E y y (5) y y (5) n n y
+SV1 y y (5) y y (5) n n y
+T90 IEEE y y (5) y y (5) n n y
+TFLOPS n y (1) n n n n y
+AIX-5.1 32-bit y y y y y n y
+AIX-5.1 64-bit y y y y y n y
+WinXP (6) y n n n y y y
+WinXP Intel y n n n y y y
+Win2000 y n y n y y y
+Win2000 Intel y n y n y y y
+WinNT CW y n n n n n y
+Mac OS X 10.2 y n n n y y y
+FreeBSD y y (1) n n y y y
+Linux 2.4 gcc (3) y y (1) y (PGI) n y y y
+Linux 2.4 Intel (3) y n y n y n y
+Linux 2.4 PGI (3) y n y n y n y
+Linux 2.4 IA32 Intel y n y n y n y
+Linux 2.4 IA64 Intel y n y n y n y
+
+
+ASCII Table 2 -- for RELEASE.txt
+
+Platform static- Thread- SZIP GASS STREAM- High-level H4/H5
+ exec safe VFD APIs tools (7)
+Solaris2.7 64-bit x y y n y y n
+Solaris2.7 32-bit x y y n y y y
+Solaris2.8 64-bit x y y n y y n
+Solaris2.8 32-bit x y y n y y y
+IRIX6.5 x n y n y y y
+IRIX64_6.5 64-bit x y y y y y y
+IRIX64_6.5 32-bit x y y y y y y
+HPUX11.00 x n y n y y y
+OSF1 v5.1 y n y n y y y
+T3E y n n n y y y
+SV1 y n n n y y y
+T90 IEEE y n n n y y n
+TFLOPS y n n n n n n
+AIX-5.1 32-bit y n y n y y y
+AIX-5.1 64-bit y n y n y y y
+WinXP (6) y n y n n y y
+WinXP Intel y n y n n y y
+Win2000 y n y n n y y
+Win2000 Intel y n y n n y y
+WinNT CW y n y n n y y
+Mac OS X 10.2 y n y n y y n
+FreeBSD y y y n y y y
+Linux 2.4 gcc (3) y y y n y y y
+Linux 2.4 Intel (3) y n y n y n n
+Linux 2.4 PGI (3) y n y n y n n
+Linux 2.4 IA32 Intel y n y n y y y
+Linux 2.4 IA64 Intel y n y n y y y
+
+ Notes: (1) Using mpich 1.2.4.
+ (2) Using mpt and mpich 1.2.4.
+ (3) Linux 2.4 with GNU, Intel, and PGI compilers, respectively.
+ (4) Shared libraries are provided only for the C library, except
+ on Windows where they are provided for C and C++.
+ (5) Using mpt.
+ (6) Binaries only; source code for this platform is not being
+ released at this time.
+ (7) Includes the H4toH5 Library and the h4toh5 and h5toh4
+ utilities.
+ Compiler versions for each platform are listed in the preceding
+ "Platforms Tested" table.
+
+
+
+Known Problems
+==============
+* Fortran subroutine h5pget_driver_f doesn't return a correct driver information.
+ The fix will be available in the 1.6.2 release.
+* There are two h5dump xml tests(h5dump --xml thlink.h5 and h5dump --xml tmany.h5)
+ failed on windows xp with .NET for debug and debug dll. Release and Release
+ dll work fine.
+
+* The h5dump tests may fail to match the expected output on some platforms
+ (e.g. parallel jobs, Windows) where the error messages directed to
+ "stderr" do not appear in the "right order" with output from stdout.
+ This is not an error.
+
+* The stream-vfd test uses ip port 10007 for testing. If another
+ application is already using that port address, the test will hang
+ indefinitely and has to be terminated by the kill command. To try the
+ test again, change the port address in test/stream_test.c to one not
+ being used in the host.
+
+* The --enable-static-exec configure flag fails to compile for Solaris
+ platforms. This is due to the fact that not all of the system
+ libraries on Solaris are available in a static format.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on IBM SP2 platform for the serial mode. The parallel mode works fine
+ with this option.
+
+ It is suggested that you don't use this option on these platforms
+ during configuration.
+
+* With the gcc 2.95.2 compiler, HDF 5 uses the `-ansi' flag during
+ compilation. The ANSI version of the compiler complains about not being
+ able to handle the `long long' datatype with the warning:
+
+ warning: ANSI C does not support `long long'
+
+ This warning is innocuous and can be safely ignored.
+
+
+* The Stream VFD was not tested yet under Windows. It is not supported
+ in the TFLOPS machine.
+
+
+* The ./dsets tests failed in the TFLOPS machine if the test program,
+ dsets.c, is compiled with the -O option. The hdf5 library still works
+ correctly with the -O option. The test program works fine if it is
+ compiled with -O1 or -O0. Only -O (same as -O2) causes the test
+ program to fail.
+
+* Certain platforms give false negatives when testing h5ls:
+ - Cray J90 and Cray T90IEEE give errors during testing when displaying
+ some floating-point values. These are benign differences due to
+ the different precision in the values displayed and h5ls appears to
+ be dumping floating-point numbers correctly.
+
+* Before building HDF5 F90 Library from source on Crays
+ replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
+ subdirectory in the top level directory with the Cray-specific files
+ from the site:
+
+* On some platforms that use Intel compilers to build HDF5 fortran library,
+ compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90
+ complaining about exit subroutine. Comment out the line
+ IF (total_error .ne. 0) CALL exit (total_error)
+
+ ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/hdf5-1.6.0/F90_source_for_Crays
+
+* On IA32 and IA64 systems, if you use a compiler other than GCC (such as
+ Intel's ecc or icc compilers), you will need to modify the generated
+ "libtool" program after configuration is finished. On or around line 104 of
+ the libtool file, there are lines which look like:
+
+ # How to pass a linker flag through the compiler.
+ wl=""
+
+ change these lines to this:
+
+ # How to pass a linker flag through the compiler.
+ wl="-Wl,"
+
+ UPDATE: This is now done automatically by the configure script. However, if
+ you still experience a problem, you may want to check this line in the
+ libtool file and make sure that it has the correct value.
+
+* Information about building with PGI and Intel compilers is available in
+ INSTALL file sections 5.7 and 5.8
+
+
+%%%%1.6.0%%%% Release Information for hdf5-1.6.0 (03/July/03)
+
+14. Release information for HDF5 version 1.6.0
+================================================
+
+
+INTRODUCTION
+
+This document describes the differences between HDF5-1.4.* and
+HDF5-1.6.0, and contains information on the platforms tested and
+known problems in HDF5-1.6.0. For more details check the HISTORY.txt
+file in the HDF5 source.
+
+The HDF5 documentation can be found on the NCSA ftp server
+(ftp.ncsa.uiuc.edu) in the directory:
+
+ /HDF/HDF5/docs/
+
+For more information look at the HDF5 home page at:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ hdfhelp@ncsa.uiuc.edu
+
+CONTENTS
+
+- New Features
+- Support for new platforms and languages
+- Bug Fixes since HDF5-1.4.0
+- Platforms Tested
+- Known Problems
+
+
+New Features
+============
+
+Configuration:
+--------------
+The following flags have been added to the configuration script:
+--enable-hdf5v1_4 Compile the HDF5 v1.4 compatibility interface
+--enable-filters=all Turn on all internal I/O filters. One may also
+ specify a comma-separated list of filters or the
+ word no. The default is all internal I/O filters.
+--with-mpe=DIR Use MPE instrumentation [default=no]
+--with-szlib=DIR Use szlib library for external szlib I/O filter
+ [default=no]
+
+Library:
+--------
+ Summary: This release has the following new features that are not
+ available in 1.4.* releases
+
+ 1. Generic properties to give application more control on I/O pipeline
+ 2. Time allocation and fill value properties
+ 3. New filters: external compression filter szip
+ internal shuffling and checksum filters
+ 4. Compact storage layout for datasets
+ 5. Redesigned I/O pipeline for better performance.
+
+ For more information see
+ http://hdf.ncsa.uiuc.edu/HDF5/doc_resource/SZIP/index.html
+ http://hdf.ncsa.uiuc.edu/HDF5/doc/ADGuide.html
+ http://hdf.ncsa.uiuc.edu/HDF5/doc/ADGuide/Changes.html
+
+ Complete list of changes:
+
+ * Changed dataset modification time to _not_ be updated when raw data is
+ written to a dataset. The modification time is only updated when the
+ dataset's metadata is modified. QAK - 2003/06/10
+ * Changed H5Sget_select_bounds to use 'hssize_t *' for start and end
+ parameters, instead of 'hsize_t *', to better match other parts of the
+ dataspace API. QAK - 2003/06/04
+ * Changed raw data I/O to only access each chunk once, improving performance
+ in many situations with hyperslabs and large chunks or chunks with
+ filters. These improvements are currently limited to serial I/O, with
+ similar parallel I/O improvements forthcoming sometime in the future.
+ QAK - 2003/05/07
+ * Added parameter to the MPI/POSIX driver. If GPFS is enabled (by
+ modifying the H5FDmpiposix.c file to uncomment the USE_GPFS_HINTS
+ macro), then this extra parameter will turn GPFS hints on and off
+ during runtime. BW - 2003/05/05
+ * Added option to print 1-byte integer datasets as ASCII to h5dump. BW -
+ 2003/04/30
+ * Added a new utility "h5fc". It can be used to compile easily Fortran
+ programs which use HDF5. It automatically uses the compiler the HDF5
+ library was built with and links in any libraries HDF5 requires.
+ BW - 2003/04/10
+ * Added new dataset creation property list functions for working with
+ I/O filters: H5Pmodify_filter, H5Pget_filter_by_id and
+ H5Pall_filters_avail. Also changed H5Zregister to use new method
+ of registering filters with library. QAK - 2003/04/08
+ * The first version of szip compression support were implemented.
+ User should have static szlib library installed. Using function
+ H5Pset_szip to pass the szip parameters to the HDF5 library.
+ More detailed description of the process will be followed.
+ KY-2003/04/01
+ * Added Fletcher32 checksum as a filter in pipeline. It only works in
+ chunked dataset. SLU - 2003/2/11
+ * MPICH/MPE instrumentation feature added. Use --with-mpe[=DIR] to configure
+ it. AKC - 2003/1/3
+ * New functions H5Gget_num_objs, H5Gget_objname_by_idx and H5Gget_objtype_by_idx
+ are added to the library. SLU - 2002/11/25
+ * H5Dget_offset is added to return the offset of a dataset's data relative
+ to the beginning of the file. SLU - 2002/11/7
+ * Functions H5Tget_native_type and H5Tis_variable_str are added. The first
+ one reconstructs a datatype based on native memory datatype. The second
+ one checks if a datatype is variable string. SLU - 2002/11/6
+ * Added environment variable "HDF5_DISABLE_VERSION_CHECK", which disables
+ the version checking between the header files and the library linked into
+ an application if set to '1'. This should be used with caution, mis-
+ matched headers and library binaries can cause _serious_ problems.
+ QAK - 2002/10/15
+ * Added new API function to get the name of an object in a file, using
+ an open ID (hid_t). QAK - 2002/10/14
+ * Added API functions to return pointer to low-level file handle
+ (H5Fget_vfd_handle and H5FDget_vfd_handle) and related property list
+ setting functions(H5Pset_family_offset and H5Pset_multi_type).
+ SLU - 2002/09/30
+ * Changed "H5P[set|get]_space_time" functions to "H5P[set|get]_alloc_time"
+ Unify all symbolic names for these functions to use "alloc time" instead
+ of other names. QAK - 2002/09/13
+ * Added "H5D_SPACE_ALLOC_INCR" setting to H5D_SPACE_ALLOC_EARLY and
+ H5D_SPACE_ALLOC_LATE for H5Dset_space_time(). This allows chunked
+ datasets to be incrementally allocated as in the 1.4.x branch.
+ QAK - 2002/08/27
+ * Compact dataset is added to the library. The data will be stored in
+ the header message of dataset layout. Space allocation time has to be
+ EARLY. No hyperslab is supported for parallel collective write. There
+ is no API changes except activating H5Pset_layout and H5Pget_layout for
+ compact dataset. -SLU, 2002/8/20
+ * Added 'closing' parameter to VFL 'flush' callback function and H5FDflush.
+ This allows the library to indicate that the file will be closed
+ immediately following the call to 'flush' and can be used to avoid actions
+ that are duplicated in the VFL 'close' callback function. QAK - 2002/05/20
+ * Added feature to parallel chunk allocation routine to not write fill
+ values to chunks allocated if the user has set the "fill time" to never.
+ This can improve parallel I/O performance for chunked
+ datasets. QAK - 2002/05/17
+ * New functions H5Glink2 and H5Gmove2 were added to allow link and move to
+ be in different locations in the same file. The old functions H5Glink
+ and H5Gmove remain valid. SLU - 2002/04/26
+ * Fill-value's behaviors for contiguous dataset have been redefined.
+ Basically, dataset won't allocate space until it's necessary. Full details
+ are available at http://hdf.ncsa.uiuc.edu/RFC/Fill_Value, at this moment.
+ SLU - 2002/04/11
+ * Added new routine "H5Dfill" to fill a selection with a particular value
+ in memory. QAK - 2002/04/09
+ * Improved performance of "regular" hyperslab I/O when using MPI-IO and the
+ datatype conversion is unnecessary. QAK - 2002/04/02
+ * Improved performance of single hyperslab I/O when datatype conversion is
+ unnecessary. QAK - 2002/04/02
+ * Added new "H5Sget_select_type" API function to determine which type of
+ selection is defined for a dataspace ("all", "none", "hyperslab" or
+ "point"). QAK - 2002/02/07
+ * Added support to read/write portions of chunks directly, if they are
+ uncompressed and too large to cache. This should speed up I/O on chunked
+ datasets for a few more cases. QAK - 2002/01/31
+ * Added H5Rget_obj_type() API function, which performs the same functionality
+ as H5Rget_object_type(), but requires the reference type as a parameter
+ in order to correctly handle dataset region references. Moved
+ H5Rget_object_type() to be only compiled into the library when v1.4
+ compatibility is enabled.
+ * Added a new file access property, file close degree, to control file
+ close behavior. It has four values, H5F_CLOSE_WEAK, H5F_CLOSE_SEMI,
+ H5F_CLOSE_STRONG, and H5F_CLOSE_DEFAULT. Two correspond functions
+ H5Pset_fclose_degree and H5Pget_fclose_degree are also provided. Two
+ new functions H5Fget_obj_count and H5Fget_obj_ids are offerted to assist
+ this new feature. For full details, please refer to the reference
+ manual under the description of H5Fcreate, H5Fopen, H5Fclose and the
+ functions mentioned above.
+ * Removed H5P(get|set)_hyper_cache API function, since the property is no
+ longer used.
+ * Improved performance of non-contiguous hyperslabs (built up with
+ several hyperslab selection calls).
+ * Improved performance of single, contiguous hyperslabs when reading or
+ writing.
+ * As part of the transition to using generic properties everywhere, the
+ parameter of H5Pcreate changed from H5P_class_t to hid_t, as well
+ the return type of H5Pget_class changed from H5P_class_t to hid_t.
+ Further changes are still necessary and will be documented here as they
+ are made.
+ * Improved regular hyperslab I/O by about a factor of 6 or so.
+ * Modified the Pablo build procedure to permit building of the instrumented
+ library to link either with the Trace libraries as before or with the
+ Pablo Performance Capture Facility.
+ * Added new F90 APIs for generic properties, new filters, and
+ time/space allocation properties.
+ * C++ API:
+ - Added two new member functions: Exception::getFuncName() and
+ Exception::getCFuncName() to provide the name of the member
+ function, where an exception is thrown.
+ - IdComponent::operator= becomes a virtual function because
+ DataType, DataSpace, and PropList provide their own
+ implementation. The new operator= functions invoke H5Tcopy,
+ H5Scopy, and H5Pcopy to make a copy of a datatype, dataspace,
+ and property list, respectively.
+
+Parallel Library:
+-----------------
+
+Tools:
+------
+ * When the "-S" option for "simple" output is chosen, h5ls now displays
+ modification times of datasets in UTC instead of local time.
+ QAK - 2003/06/06
+ * h5diff to compare two HDF5 files was added
+ * h5import to import ascii and binary data to an HDF5 file was added.
+ Old h5import tool in the tools/misc directory was renamed to
+ h5createU8 to reflect its purpose. h5createU8 will be deleted in
+ 1.6.1 release.
+ * Two new scripts h5fc and h5c++ were added to compile F90 and C++
+ HDF5 applications.
+
+Support for new platforms, languages and compilers.
+=======================================
+ * Added C++ API support on HPUX11.00. BMR - 2003/03/19
+ * Absoft compiler is supported for Fortran HDF5 Library.
+ When building with Absoft compiler, add -DH5_ABSOFT to
+ C compilation flags to get correct names of C functions
+ called by Fortran APIs.
+
+
+Bug Fixes since HDF5-1.4.0 release
+==================================
+
+Library
+-------
+ * Don't attempt to perform collective I/O on chunked datasets with
+ parallel I/O. QAK - 2003/06/05
+ * The library now correctly reuses space when objects are deleted in the
+ file. This should be handled correctly for every situation, except
+ datasets with variable-length datatypes are not returning the space they
+ use in the global heap currently. QAK - 2003/04/13
+ * Fixed error in B-tree deletion routine which could cause groups to be
+ corrupted when objects are removed from them.
+ QAK - 2003/04/11
+ * Fixed error in file space freeing code which could cause metadata to
+ fail to be written to the file.
+ QAK - 2003/04/11
+ * -O caused errors in AIX 5.x platforms. Removed it from
+ --enable-production mode. AKC - 2003/03/31
+ * Corrected memory/resource leaks in per-thread key information when
+ thread-safe operation was enabled. QAK - 2003/02/07
+ * Improved error assertion for nil VL strings, making it fails with error
+ stack instead of just assertion failure. SLU - 2002/12/16
+ * Added two new API functions: H5Zunregister & H5Zfilter_avail.
+ QAK - 2002/11/16
+ * Add data shuffle filter(source code H5Zshuffle.c), the combination of the
+ shuffling and compression can make data compression better without suffering
+ much encoding and decoding CPU time for many application datasets(especially
+ for floating point data). This adds a new API function: H5Pset_shuffle.
+ KY - 2002/11/13
+ * Allow scalar dataspaces to be used for parallel I/O. QAK - 2002/11/05
+ * New functions H5Gget_comment(modification), H5Aget_storage_size,
+ H5Arename. SLU - 2002/10/29
+ * Fixed an assertion of H5S_select_iterate that did not account for scalar
+ type that has no dimension sizes. AKC - 2002/10/15
+ * Partially fixed space allocation inefficiencies in the file by
+ improving our algorithms for re-using freed space. QAK - 2002/08/27
+ * Fixed data corruption problem which could occur when fill values were
+ written to a contiguously stored dataset in parallel. QAK - 2002/08/27
+ * Fixed VL memory leak when data is overwritten. The heap objects holding
+ old data are freed. If the fill value writing time is set to
+ H5D_FILL_TIME_NEVER, the library prohibits user to create VL type dataset.
+ The library free all the heap objects storing VL type if there is nested
+ VL type(a VL type contains another VL type). SLU - 2002/07/10
+ * Tweaked a few API functions to use 'size_t' instead of 'unsigned' or
+ 'hsize_t', which may cause errors in some cases.
+
+
+Configuration
+-------------
+ * Included the both the examples of fortran and c++ "make check-install"
+ testing. This tests the correctness of the h5fc command. AKC - 2003/04/22
+ * When using gcc 3.x, we use -std=c99 instead of -ansi for compiling.
+ QAK - 2003/04/11
+ * IA64 platform has its own configure setting and use Intel Compilers as
+ the default compilers (were gcc and pgf90 before.) This also eliminated
+ the segmentation fault in the fortran test. The missing reference of
+ "exit" is fixed too. AKC - 2003/04/02
+
+Performance
+-------------
+ * Improved dataset creation time by about 30% (relative to the 1.4.x
+ branch).
+
+Tools
+-----
+
+ * Added a -force option to h5redeploy. AKC - 2003/03/04
+ * The VL string bug(data and datatype cannot be shown) in h5dump is fixed.
+ -SLU - 2002/11/18
+ * Fixed segfault if h5dump was invoked with some options but no file
+ (e.g., h5dump -H). -AKC, 2002/10/15
+ * Fixed so that the "-i" flag works correctly with the h5dumper.
+ * Fixed segfault when "-v" flag was used with the h5dumper.
+
+
+Documentation
+-------------
+
+
+
+
+
+
+Platforms Tested
+================
+
+ AIX 5.1 (32 and 64-bit) xlc 6.0.0.2
+ xlf 8.1.0.3
+ xlC 6.0.0.4
+ xlc 5.0.2.5
+ xlf 7.1.1.2
+ xlC 5.0.2.5
+ mpcc_r 5.0.2.5
+ mpxlf_r 7.1.1.2
+ poe 3.2.0.10
+ Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.2
+ Cray Fortran Version 3.6.0.0.2
+ mpt 2.2.0.0
+ Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.2
+ mpt 2.2.0.0
+ Cray Fortran Version 3.6.0.0.2
+ Cray T90IEEE 10.0.1.01y Cray Standard C Version 6.4.0.2.3
+ Cray Fortran Version 3.4.0.3
+ mpt 2.1.0.0
+ FreeBSD 4.7 gcc 2.95.4
+ g++ 2.95.5
+ HP-UX B.11.00 HP C HP92453-01 A.11.01.20
+ HP F90 v2.4
+ HP ANSI C++ B3910B A.03.13
+ MPIch 1.2.4
+ IRIX 6.5 MIPSpro cc 7.30
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
+ F90 MIPSpro 7.3.1.3m (64 only)
+ MPIch 1.2.4
+ Linux 2.4.18 gcc 2.96, 3.2.2, 3.2.3
+ g++ 3.2.2, 3.2.3
+ Intel(R) C++ Version 7.1
+ Intel(R) Fortran Compiler Version 7.1
+ PGI compilers (pgcc, pgf90, pgCC) version 4.0-2
+ MPIch 1.2.4
+ OSF1 V5.1 Compaq C V6.4-014
+ Compaq C V6.3-027
+ Compaq Fortran V5.5-1877
+ Compaq C++ V6.5-014
+ MPI_64bit_R5
+ g++ version 3.0 for C++
+ SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
+ (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0
+ WorkShop Compilers 5.0 98/10/25
+ FORTRAN 90 2.0 Patch 107356-04
+ SunOS 5.8/32 Sun WorkShop 6 update 2 C 5.3
+ (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
+ Sun WorkShop 6 update 2 C++ 5.3
+ SunOS 5.8/64 Sun WorkShop 6 update 2 C 5.3
+ (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
+ Sun WorkShop 6 update 2 C++ 5.3
+ TFLOPS r1.0.4 v4.3.3 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with
+ local modifications
+ IA-32 Linux 2.4.9 gcc 2.96
+ Intel(R) C++ Version 7.0
+ Intel(R) Fortran Compiler Version 7.0
+
+ IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731
+ Intel(R) C++ Version 7.0
+ Intel(R) Fortran Compiler Version 7.0
+ Windows 2000 (NT5.0) MSVC++ 6.0
+ DEC Visual Fortran 6.0
+ Intel C and F90 compilers version 7.1
+ Code Warrior 8.0
+ Windows XP MSVC++.NET
+ MAC OS X Darwin 6.5
+ gcc and g++ Apple Computer, Inc. GCC
+ version 1161, based on gcc version 3.1
+
+
+
+Supported Configuration Features Summary
+========================================
+
+ In the tables below
+ y = tested and supported
+ n = not supported or not tested in this release
+ x = not working in this release
+ dna = does not apply
+ ( ) = footnote appears below second table
+
+Platform C C F90 F90 C++ Shared zlib
+ parallel parallel libraries (4)
+Solaris2.7 64-bit y y (1) y y (1) y y y
+Solaris2.7 32-bit y y (1) y y (1) y y y
+Solaris2.8 64-bit y y (1) y y (1) y y y
+Solaris2.8 32-bit y y y y (1) y y y
+IRIX6.5 y y (1) n n n y y
+IRIX64_6.5 64-bit y y (2) y y y y y
+IRIX64_6.5 32-bit y y (2) n n n y y
+HPUX11.00 y y (1) y y y y y
+OSF1 v5.1 y y y y y y y
+T3E y y (5) y y (5) n n y
+SV1 y y (5) y y (5) n n y
+T90 IEEE y y (5) y y (5) n n y
+TFLOPS n y (1) n n n n y
+AIX-5.1 32-bit y y y y y n y
+AIX-5.1 64-bit y y y y y n y
+WinXP (6) y n n n y y y
+WinXP Intel y n n n y y y
+Win2000 y n y n y y y
+Win2000 Intel y n y n y y y
+WinNT CW y n n n n n y
+Mac OS X 10.2 y n n n y y y
+FreeBSD y y (1) n n y y y
+Linux 2.4 gcc (3) y y (1) y (PGI) n y y y
+Linux 2.4 Intel (3) y n y n y n y
+Linux 2.4 PGI (3) y n y n y n y
+Linux 2.4 IA32 Intel y n y n y n y
+Linux 2.4 IA64 Intel y n y n y n y
+
+
+ASCII Table 2 -- for RELEASE.txt
+
+Platform static- Thread- SZIP GASS STREAM- High-level H4/H5
+ exec safe VFD APIs tools (7)
+Solaris2.7 64-bit x y y n y y n
+Solaris2.7 32-bit x y y n y y y
+Solaris2.8 64-bit x y y n y y n
+Solaris2.8 32-bit x y y n y y y
+IRIX6.5 x n y n y y y
+IRIX64_6.5 64-bit x y y y y y y
+IRIX64_6.5 32-bit x y y y y y y
+HPUX11.00 x n y n y y y
+OSF1 v5.1 y n y n y y y
+T3E y n n n y y y
+SV1 y n n n y y y
+T90 IEEE y n n n y y n
+TFLOPS y n n n n n n
+AIX-5.1 32-bit y n y n y y y
+AIX-5.1 64-bit y n y n y y y
+WinXP (6) y n y n n y y
+WinXP Intel y n y n n y y
+Win2000 y n y n n y y
+Win2000 Intel y n y n n y y
+WinNT CW y n y n n y y
+Mac OS X 10.2 y n y n y y n
+FreeBSD y y y n y y y
+Linux 2.4 gcc (3) y y y n y y y
+Linux 2.4 Intel (3) y n y n y n n
+Linux 2.4 PGI (3) y n y n y n n
+Linux 2.4 IA32 Intel y n y n y y y
+Linux 2.4 IA64 Intel y n y n y y y
+
+ Notes: (1) Using mpich 1.2.4.
+ (2) Using mpt and mpich 1.2.4.
+ (3) Linux 2.4 with GNU, Intel, and PGI compilers, respectively.
+ (4) Shared libraries are provided only for the C library, except
+ on Windows where they are provided for C and C++.
+ (5) Using mpt.
+ (6) Binaries only; source code for this platform is not being
+ released at this time.
+ (7) Includes the H4toH5 Library and the h4toh5 and h5toh4
+ utilities.
+ Compiler versions for each platform are listed in the preceding
+ "Platforms Tested" table.
+
+
+
+Known Problems
+==============
+
+* PGI C++ compiler fails when compiling the C++ library's tests.
+ Therefore, we cannot verify that the C++ library built with the PGI C++
+ compiler is correct.
+
+* The h5dump tests may fail to match the expected output on some platforms
+ (e.g. parallel jobs, Windows) where the error messages directed to
+ "stderr" do not appear in the "right order" with output from stdout.
+ This is not an error.
+
+* The stream-vfd test uses ip port 10007 for testing. If another
+ application is already using that port address, the test will hang
+ indefinitely and has to be terminated by the kill command. To try the
+ test again, change the port address in test/stream_test.c to one not
+ being used in the host.
+
+* The --enable-static-exec configure flag fails to compile for Solaris
+ platforms. This is due to the fact that not all of the system
+ libraries on Solaris are available in a static format.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on IBM SP2 platform for the serial mode. The parallel mode works fine
+ with this option.
+
+ It is suggested that you don't use this option on these platforms
+ during configuration.
+
+* With the gcc 2.95.2 compiler, HDF 5 uses the `-ansi' flag during
+ compilation. The ANSI version of the compiler complains about not being
+ able to handle the `long long' datatype with the warning:
+
+ warning: ANSI C does not support `long long'
+
+ This warning is innocuous and can be safely ignored.
+
+
+* The Stream VFD was not tested yet under Windows. It is not supported
+ in the TFLOPS machine.
+
+
+* The ./dsets tests failed in the TFLOPS machine if the test program,
+ dsets.c, is compiled with the -O option. The hdf5 library still works
+ correctly with the -O option. The test program works fine if it is
+ compiled with -O1 or -O0. Only -O (same as -O2) causes the test
+ program to fail.
+
+* Certain platforms give false negatives when testing h5ls:
+ - Cray J90 and Cray T90IEEE give errors during testing when displaying
+ some floating-point values. These are benign differences due to
+ the different precision in the values displayed and h5ls appears to
+ be dumping floating-point numbers correctly.
+
+* Before building HDF5 F90 Library from source on Crays
+ replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
+ subdirectory in the top level directory with the Cray-specific files
+ from the site:
+
+* On some platforms that use Intel compilers to build HDF5 fortran library,
+ compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90
+ complaining about exit subroutine. Comment out the line
+ IF (total_error .ne. 0) CALL exit (total_error)
+
+ ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/hdf5-1.6.0/F90_source_for_Crays
+
+* On IA32 and IA64 systems, if you use a compiler other than GCC (such as
+ Intel's ecc or icc compilers), you will need to modify the generated
+ "libtool" program after configuration is finished. On or around line 104 of
+ the libtool file, there are lines which look like:
+
+ # How to pass a linker flag through the compiler.
+ wl=""
+
+ change these lines to this:
+
+ # How to pass a linker flag through the compiler.
+ wl="-Wl,"
+
+ UPDATE: This is now done automatically by the configure script. However, if
+ you still experience a problem, you may want to check this line in the
+ libtool file and make sure that it has the correct value.
+
+* Information about building with PGI and Intel compilers is available in
+ INSTALL file sections 5.7 and 5.8
+-----------------------------------------------------------------------
+%%%%1.4.5%%%% Release Information for hdf5-1.4.5 (02/February/03)
+
+
+13. Release information for HDF5 version 1.4.5
+==============================================================================
+
+
+INTRODUCTION
+
+This document describes the differences between HDF5-1.4.4 and
+HDF5-1.4.5, and contains information on the platforms tested and
+known problems in HDF5-1.4.5. For additional information check the
+HISTORY.txt file in the HDF5 source.
+
+The HDF5 documentation can be found on the NCSA ftp server
+(ftp.ncsa.uiuc.edu) in the directory:
+
+ /HDF/HDF5/docs/
+
+For more information, see the HDF5 home page at:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ hdfhelp@ncsa.uiuc.edu
+
+
+CONTENTS
+
+- New Features
+- Bug Fixes since HDF5-1.4.4
+- Performance Improvements
+- Documentation
+- Platforms Tested
+- Supported Configuration Features
+- Known Problems
+
+
+New Features
+============
+ o Configuration
+ ================
+ * Added "unofficial support" for building with a C++ compiler (or at least
+ not failing badly when building with a C++ compiler). QAK - 2003/01/09
+ * Added "unofficial support" for AIX 64bits. See INSTALL for configure
+ details. AKC - 2002/08/29
+ * Added "--with-dmalloc" flag, to easily enable support for the 'dmalloc'
+ debugging malloc implementation. QAK - 2002/07/15
+
+ o Library
+ =========
+ o General
+ ---------
+ * Allow scalar dataspaces to be used for parallel I/O. QAK - 2002/11/05
+ * Added environment variable "HDF5_DISABLE_VERSION_CHECK", which disables
+ the version checking between the header files and the library linked
+ into an application if set to '1'. This should be used with caution,
+ mis-matched headers and library binaries can cause _serious_ problems.
+ QAK - 2002/10/15
+ * Partially fixed space allocation inefficiencies in the file by
+ improving our algorithms for re-using freed space. QAK - 2002/08/27
+ * API tracing has been improved. Nested API calls don't screw up the
+ output format; function call and return event times can be logged;
+ total time spent in each function can be logged. The following
+ HDF5_DEBUG environment variable words affect tracing:
+ trace -- turn on/off basic tracing
+ ttimes -- turn on tracing and report event times and
+ time spent in each API function.
+ ttop -- turn on tracing but display only top-level
+ API calls.
+
+ o APIs
+ ------
+ * Several missing fortran APIs have been added to the library:
+
+ h5get_libversion_f h5tget_member_index_f h5dget_storage_size_f
+ h5check_version_f h5tvlen_create_f h5dvlen_get_max_len_f
+ h5garbage_collect_f h5dwrite_vl_f
+ h5dont_atexit_f h5dread_vl_f
+
+ Functions h5dvlen_get_max_len_f, h5dwrite_vl_f, and h5dread_vl_f support
+ VL Length C APIs functionality for integer, real and string datatypes.
+ See HDF5 Reference Manual and HDF5 FORTRAN90 User's Notes for more
+ information and for the functions description.
+
+ o Parallel library
+ ==================
+ * The MPI-posix virtual file driver makes gpfs_fcntl() hints to tell
+ the underlying GPFS file system to avoid prefetching byte range
+ tokens if USE_GPFS_HINTS is defined when this file is compiled.
+ This temporary solution is intended to be removed once the HDF5
+ API supports the necessary functionality that makes it possible
+ for this sort of thing do be done at a higher software layer.
+ RPM - 2002/12/03
+ * Added MPI-posix VFL driver. This VFL driver uses MPI functions to
+ coordinate actions, but performs I/O directly with POSIX sec(2)
+ (i.e. open/close/read/write/etc.) calls. This driver should _NOT_
+ be used to access files that are not on a parallel filesystem.
+ The following API functions were added:
+ herr_t H5Pset_fapl_mpiposix(hid_t fapl_id, MPI_Comm comm);
+ herr_t H5Pget_fapl_mpiposix(hid_t fapl_id, MPI_Comm *comm/*out*/);
+ QAK - 2002/07/15
+
+
+
+ o Support for new platforms and languages
+ =========================================
+ * C++ API now works on the Origin2000 (IRIX6.5.14.) BMR - 2002/11/14
+
+
+ o Misc.
+ =========================================
+ HDF5 1.4.5 works with Portland Group Compilers (pgcc, pgf90 and pgCC
+ version 4.0-2) on Linux 2.4
+
+
+Bug Fixes since HDF5-1.4.4 Release
+==================================
+ * H5Fopen without the H5F_ACC_CREAT flag should not succeed in creating
+ a new file with the 'core' VFL driver. QAK - 2003/01/24
+ * Corrected metadata caching bug in parallel I/O which could cause hangs
+ when chunked datasets were accessed with independent transfer mode.
+ QAK - 2003/01/23
+ * Allow opening objects with unknown object header messages.
+ QAK - 2003/01/21
+ * Added improved error assertion for nil VL strings. It return error
+ stack instead of a simple assertion. SLU - 2002/12/16
+ * Fixed h5dump bug(cannot dump data and datatype) for VL string.
+ SLU - 2002/11/18
+ * Fixed error condition where "none" selections were not being handled
+ correctly in serial & parallel. QAK - 2002/10/29
+ * Fixed problem where optimized hyperslab routines were incorrectly
+ invoked for parallel I/O operations in collective mode. QAK - 2002/07/22
+ * Fixed metadata corruption problem which could occur when many objects
+ are created in a file during parallel I/O. QAK - 2002/07/19
+ * Fixed minor problem with configuration when users specified /usr/include
+ and /usr/lib for the --with-* options that some compilers can't
+ handle. BW - 2003/01/23
+
+
+
+Documentation
+=============
+ New PDF files are not available for this release.
+
+
+Platforms Tested
+================
+
+ AIX 5.1 (32 and 64-bit) C for AIX Compiler, Version 6
+ xlf 8.1.0.2
+ poe 3.2.0.11
+ Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.1.3
+ Cray Fortran Version 3.6.0.0.12
+ Cray SV1 10.0.1. 0 Cray Standard C Version 6.6.0.1.3
+ Cray Fortran Version 3.6.0.0.12
+ Cray T90IEEE 10.0.1.01u Cray Standard C Version 6.4.0.2.3
+ Cray Fortran Version 3.4.0.3
+ FreeBSD 4.7 gcc 2.95.4
+ g++ 2.95.5
+ HP-UX B.11.00 HP C HP92453-01 A.11.01.20
+ HP F90 v2.4
+ IRIX 6.5 MIPSpro cc 7.30
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
+ F90 MIPSpro 7.3.1.3m (64 only)
+ Linux 2.4.18 gcc 3.2.1
+ g++ 3.2.1
+ Intel(R) C++ Version 6.0
+ Intel(R) Fortran Compiler Version 6.0
+ PGI compilers (pgcc, pgf90, pgCC) version 4.0-2
+ pgf90 3.2-4
+ OSF1 V5.1 Compaq C V6.4-014
+ Compaq Fortran X5.4A-1684
+ gcc version 3.0 for C++
+ SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
+ (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0
+ WorkShop Compilers 5.0 98/10/25
+ FORTRAN 90 2.0 Patch 107356-04
+ SunOS 5.8/32 Sun WorkShop 6 update 1 C 5.2 2000/09/11
+ (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
+ Patch 109503-07 2001/08/11
+ Sun WorkShop 6 update 1 C++ 5.2 Patch
+ 109508-04 2001/07/11
+ SunOS 5.8/64 Sun WorkShop 6 update 1 C 5.2 2000/09/11
+ (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
+ Patch 109503-07 2001/08/11
+ Sun WorkShop 6 update 1 C++ 5.2 Patch
+ 109508-04 2001/07/11
+ TFLOPS r1.0.4 v4.3.3 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with
+ local modifications
+ IA-32 Linux 2.4.9 gcc 2.96
+ Intel(R) C++ Version 7.0
+ Intel(R) Fortran Compiler Version 7.0
+
+ IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731
+ Intel(R) C++ Version 7.0
+ Intel(R) Fortran Compiler Version 7.0
+ Windows 2000 (NT5.0) MSVC++ 6.0
+ DEC Visual Fortran 6.0
+ Windows XP .NET
+ Windows NT4.0 Code Warrior 6.0
+ MAC OS X Darwin 6.2
+ gcc and g++ Apple Computer, Inc. GCC
+ version 1161, based on gcc version 3.1
+
+
+
+Supported Configuration Features Summary
+========================================
+
+ In the tables below
+ y = tested and supported
+ n = not supported or not tested in this release
+ x = not working in this release
+ dna = does not apply
+ ( ) = footnote appears below second table
+
+
+ Platform C C F90 F90 C++ Shared zlib
+ parallel parallel libraries (5)
+ Solaris2.6 y n y n y y y
+ Solaris2.7 64-bit y y (1) y y (1) y y y
+ Solaris2.7 32-bit y y (1) y y (1) y y y
+ Solaris2.8 64-bit y n y y (1) y y y
+ Solaris2.8 32-bit y n y y (1) y y y
+ IRIX6.5 y y (1) n n n y y
+ IRIX64_6.5 64-bit y y (2) y y y y y
+ IRIX64_6.5 32-bit y y (2) n n n y y
+ HPUX11.00 y y (1) y n n y y
+ OSF1 v5.1 y n y n y y y
+ T3E (6) y n y n n n y
+ SV1 y n y n n n y
+ T90 IEEE y n y n n n y
+ TFLOPS n y (1) n n n n y
+ AIX-5.1 32-bit y y y y y n y
+ AIX-5.1 64-bit y y y y y n y
+ WinXP (7) y n n n y y y
+ WinNT/2000 y n y n y y y
+ WinNT CW y n n n n n y
+ Mac OS X 10.2 y n n n y y y
+ FreeBSD y y (1) n n y y y
+ Linux 2.2 y y (1) y y (1) y y y
+ Linux 2.4 gcc (3) y y (1) y n y y y
+ Linux 2.4 Intel (3) y n y n n n y
+ Linux 2.4 PGI (3) y n y n y n y
+ Linux 2.4 IA32 y n y n n n y
+ Linux 2.4 IA64 y n y n n n y
+
+
+ Platform static- Thread- SRB GASS STREAM-
+ exec safe VFD
+ Solaris2.6 x y n n y
+ Solaris2.7 64-bit x y n n y
+ Solaris2.7 32-bit x y n n y
+ Solaris2.8 64-bit x n n n y
+ Solaris2.8 32-bit x y n n y
+ IRIX6.5 x n n n y
+ IRIX64_6.5 64-bit x y n y y
+ IRIX64_6.5 32-bit x y n y y
+ HPUX11.00 x n n n y
+ OSF1 v5.1 y n n n y
+ T3E (6) y n n n y
+ SV1 y n n n y
+ T90 IEEE y n n n y
+ TFLOPS y n n n n
+ AIX-5.1 32-bit y n n n y
+ AIX-5.1 64-bit y n n n y
+ WinXP (7) dna n n n n
+ WinNT/2000 dna n n n n
+ WinNT CW dna n n n n
+ Mac OS X 10.2 y n n n y
+ FreeBSD y y n n y
+ Linux 2.2 y y n n y
+ Linux 2.4 gcc (3) y y n n y
+ Linux 2.4 Intel (3) y n n n y
+ Linux 2.4 PGI (3) y n n n y
+ Linux 2.4 IA32 y n n n y
+ Linux 2.4 IA64 y n n n y
+
+ Notes: (1) Using mpich 1.2.4.
+ (2) Using mpt and mpich 1.2.4.
+ (3) Linux 2.4 with GNU, Intel, and PGI compilers.
+ (4) No HDF4-related tools.
+ (5) Shared libraries are provided only for the C library,
+ except on Windows where they are provided for all languages.
+ (6) Debug mode only.
+ (7) Binaries only; source code for this platform is not being
+ released at this time.
+
+
+Known Problems
+==============
+
+ * On Linux 2.4 IA64, Fortran test fails for h5dwrite_vl_f
+ for integer and real base datatypes.
+
+ * When fortran library is built with Intel compilers, compilation
+ for fflush1.f90, fflush2.f90 and fortanlib_test.f90 will fail
+ complaining about EXEC function. Comment the call to EXEC subroutine
+ in each program, or get a patch for the HDF5 Fortran source code.
+
+ * Fortran external dataset test fails on Linux 2.4 with pgf90 compiler.
+
+ * On Windows, h5dump may abort printing if a VL string is longer than 4096
+ bytes due to a compiler problem. It'll be fixed in v1.6 release.
+
+ * Datasets or attributes which have a variable-length string datatype are
+ not printing correctly with h5dump and h5ls.
+
+ * When a dataset with the variable-length datatype is overwritten,
+ the library can develop memory leaks that cause the file to become
+ unnecessarily large. This is planned to be fixed in the next release.
+
+ * On the SV1, the h5ls test fails due to a difference between the
+ SV1 printf precision and the printf precision on other platforms.
+
+ * The h5dump tests may fail to match the expected output on some
+ platforms (e.g. SP2 parallel, Windows) where the error messages
+ directed to "stderr" do not appear in the "right order" with output
+ from stdout. This is not an error.
+
+ * The --enable-static-exec configure flag fails to compile for HP-UX
+ 11.00 platforms.
+
+ * The executables are always dynamic on IRIX64 6.5(64 and n32) and
+ IRIX 6.5 even if they are configured with --enable-static-exec.
+
+ * IRIX 6.5 fails to compile if configured with --enable-static-exec.
+
+ * The executables are always dynamic on Solaris 2.7 and 2.8(64 and n32)
+ even if they are configured with --enable-static-exec.
+
+ * The HDF5_MPI_OPT_TYPES optimization code in the parallel HDF5 will cause
+ a hang in some cases when chunked storage is used. This is now set to
+ be off by default. One may turn it on by setting the environment
+ variable HDF5_MPI_OPT_TYPES to a non-zero value such as 1.
+
+ * On OSF1 v5.1 and IA32 h5dumpgentst program that generates test files
+ for h5dump, gives segmentation fault.
+
+ * On Windows platforms, C and Fortran tests fail with the debug DLL version
+ of the Library if built from all_withf90.zip file.
+
+ * On Cray T3E (sn6606 2.0.6.08 unicosmk CRAY T3E) with Cray Standard C Version 6.6.0.1.3
+ compiler optimization causes errors in many HDF5 Library tests. Use -g -h zero flags
+ to build HDF5 Library.
+
+ * On Cray SV1 10.0.1. 0 datatype conversion test fails. Please check HDF FTP site
+ if patch is available. We will try to provide one in the nearest future.
+
+ * For configuration, building and testing with Intel and PGI compilers see
+ corresponding section in INSTALL file.
+
+
+%%%%1.4.4%%%% Release Information for hdf5-1.4.4 (02/July/02)
+
+12. Release information for HDF5 version 1.4.4
+==============================================================================
+
+INTRODUCTION
+
+This document describes the differences between HDF5-1.4.3 and
+HDF5-1.4.4, and contains information on the platforms tested and
+known problems in HDF5-1.4.4. For more details check the HISTORY.txt
+file in the HDF5 source.
+
+The HDF5 documentation can be found on the NCSA ftp server
+(ftp.ncsa.uiuc.edu) in the directory:
+
+ /HDF/HDF5/docs/
+
+For more information, see the HDF5 home page at:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ hdfhelp@ncsa.uiuc.edu
+
+
+CONTENTS
+
+- New Features
+- Bug Fixes since HDF5-1.4.3
+- Performance Improvements
+- Documentation
+- Platforms Tested
+- Supported Configuration Features
+- Known Problems
+
+
+New Features
+============
+ o Configuration
+ ================
+ * The H4 to H5 tools have been removed from the main source and placed
+ in a separate package. You can get these tools from the HDF ftp site
+ (ftp://hdf.ncsa.uiuc.edu/). The "--with-hdf4" command-line option
+ during configure is no longer valid. BW - 2002/06/25
+
+ o Library
+ =========
+ o General
+ ---------
+ * Fill-value forward-compatibility with release 1.5 was added. SLU -
+ 2002/04/11
+ * A new query function H5Tget_member_index has been added for compound
+ and enumeration data types. This function retrieves a member's index
+ by name. SLU - 2002/04/05
+ * Added serial multi-gigabyte file size test. "test/big -h" shows
+ the help page. AKC - 2002/03/29
+
+ o APIs
+ ------
+ * The F90 subroutines h5dwrite_f, h5dread_f, h5awrite_f, and h5aread_f
+ were overloaded with a "dims" argument of type INTEGER(HSIZE_T) to
+ specify the size of the array. We recommend using these subroutines
+ with the new type; module subroutines that accept "dims" as an i
+ INTEGER array of size 7 will be deprecated in release 1.6.
+ EIP - 2002/05/06
+
+ o Performance
+ -------------
+ * Added internal "small data" aggregation, which can reduce the number of
+ actual I/O calls made, improving performance. QAK - 2002/06/05
+ * Improved internal metadata aggregation, which can reduce the number of
+ actual I/O calls made, improving performance. Additionally, this can
+ reduce the size of files produced. QAK - 2002/06/04
+ * Improved internal metadata caching, which can reduce the number of
+ actual I/O calls made by a substantial amount, improving
+ performance. QAK - 2002/06/03
+
+
+ o Parallel library
+ ==================
+ * Fixed bug in parallel I/O routines where a collective I/O which used
+ MPI derived types, followed by an independent I/O would cause the library
+ to hang. QAK 2002/06/24
+ * Added environment variable flag to control whether creating MPI derived
+ types is preferred or not. This can affect performance, depending on
+ which way the MPI-I/O library is optimized. The default is set to
+ prefer MPI derived types for collective raw data transfers; setting the
+ HDF5_MPI_PREFER_DERIVED_TYPES environment variable to "0" (i.e.:
+ "setenv HDF5_MPI_PREFER_DERIVED_TYPES 0") changes the preference to avoid
+ using them whenever possible. QAK - 2002/06/19
+ * Changed MPI I/O routines to avoid creating MPI derived types (and thus
+ needing to set the file view) for contiguous selections within datasets.
+ This should result in some performance improvement for those types of
+ selections. QAK - 2002/06/18
+ * Changed MPI type support for collective I/O to be enabled by default.
+ This can be disabled by setting the HDF5_MPI_OPT_TYPES environment
+ variable to the value "0". QAK - 2002/06/14
+ * Allowed chunks in chunked datasets to be cached when parallel file is
+ opened for read-only access (bug #709). QAK - 2002/06/10
+ * Changed method for allocating chunked dataset blocks to only allocate
+ blocks that don't already exist, instead of attempting to create all the
+ blocks all the time. This improves performance for chunked
+ datasets. QAK - 2002/05/17
+ * Allowed the call to MPI_File_sync to be avoided when the file is going to
+ immediately be closed, improving performance. QAK - 2002/05/13
+ * Allowed the metadata writes to be shared among all processes, easing the
+ burden on process 0. QAK - 2002/05/10
+
+
+ o Tools
+ =======
+ * h5redeploy utility was added. It updates HDF5 compiler tools
+ after the HDF5 software has been installed in a new location.
+
+
+ o Support for new platforms and languages
+ =========================================
+ * Parallel Fortran Library works now on HP-UX B.11.00 Sys V.
+ EIP - 2002/05/06
+ * Intel C++ and F90 compilers Version 6.0 are supported on Linux 2.4.
+ * Intel C++ compilers Version 6.0 are supported on Windows 2000.
+
+
+ o Misc.
+ =========================================
+ * zlib has been moved out of the Windows source release. Users should go to
+ the ZLIB homepage(http://www.zlib.org) to download the corresponding
+ zlib library.
+ * The Windows binary release is built with the old version of the zlib
+ library. We expect users to use zlib 1.1.4 to build with the source
+ release.
+ * In the Windows-specific install document, we specify how to test backward
+ compatibility. However, in this release, we are not testing the backward
+ compatibility of HDF5.
+
+
+Bug Fixes since HDF5-1.4.3 Release
+==================================
+ * Fixed bug in chunking routines where they were using internal allocation
+ free routines, instead of malloc/free, preventing user filters from
+ working correctly. Chunks are now allocated/freed with malloc/free and
+ so should the chunks in user filters. QAK 2002/06/18
+ * Fixed bug where regular hyperslab selection could get incorrectly
+ transferred when the number of elements in a row did not fit evenly
+ into the buffer provided. QAK 2002/06/12
+ * Fixed bug (#499) which allowed an "empty" compound or enumerated datatype
+ (one with no members) to be used to create a dataset or to be committed
+ to a file. QAK - 2002/06/11
+ * Fixed bug (#777) which allowed a compound datatype to be inserted into
+ itself. QAK - 2002/06/10
+ * Fixed bug (#789) where creating 1-D dataset region reference caused the
+ library to go into infinite loop. QAK - 2002/06/10
+ * Fixed bug (#699, fix provided by a user) where a scalar dataspace was
+ written to the file and then subsequently queried with the
+ H5Sget_simple_extent_type function; type was reported as H5S_SIMPLE
+ instead of H5S_SCALAR. EIP - 2002/06/04
+ * Clear symbol table node "dirty" flag when flushing symbol tables to
+ disk, to reduce I/O calls made & improve performance. QAK - 2002/06/03
+ * Fixed bug where an object's header could get corrupted in certain
+ obscure situations when many objects were created in the
+ file. QAK - 2002/05/31
+ * Fixed bug where read/write intent in file IDs created with H5Freopen
+ was not being kept the same as the original file. QAK - 2002/05/14
+ * Fixed bug where selection offsets were not being used when iterating
+ through point and hyperslab selections with
+ H5Diterate(). QAK - 2002/04/29
+ * Fixed bug where the data for several level deep nested compound &
+ variable-length datatypes used for datasets were getting corrupted when
+ written to the file. QAK - 2002/04/17
+ * Fixed bug where selection offset was being ignored for certain hyperslab
+ selections when optimized I/O was being performed. QAK - 2002/04/02
+ * Fixed limitation in h5dumper with object names which reached over 1024
+ characters in length. We can now handle arbitrarily larger sizes for
+ object names. BW - 2002/03/29
+ * Fixed bug where variable-length string type did not behave as a
+ string. SLU - 2002/03/28
+ * Fixed bug in H5Gget_objinfo() which was not setting the 'fileno'
+ of the H5G_stat_t struct. QAK - 2002/03/27
+ * Fixed data corruption bug in hyperslab routines when contiguous
+ hyperslab that spans entire dimension and is larger than type
+ conversion buffer is attempted to be read. QAK - 2002/03/26
+
+
+Performance Improvements
+========================
+ This release of the HDF5 library has been extensively tuned to improve
+ performance, especially to improve parallel I/O performance.
+ Most of the specific information for particular performance improvements
+ is mentioned in the "New Features" and "Bug Fixes since HDF5-1.4.3" sections
+ of this document, but in general, the library should make fewer and larger
+ I/O requests when accessing a file. Additionally, improvements to the parallel
+ I/O portions of the library should have reduced the communications and barriers
+ used in various internal algorithms, improving the performance of the library.
+ However, with the extensive changes to some portions of the library that
+ were required for these improvements, some errors or unanticipated results may
+ have been introduced also. Please report any problems encountered to our
+ support team at hdfhelp@ncsa.uiuc.edu.
+ Hopefully these improvements will benefit all HDF5 applications, but if
+ there are particular I/O patterns that appear to be slower than necessary,
+ please send e-mail to hdfhelp@ncsa.uiuc.edu with a sample program showing the
+ problem behavior; we will look into the issue to see if it is possible to
+ address it.
+
+
+Documentation
+=============
+ * Documentation was updated for the hdf5-1.4.4 release.
+ * A new "HDF5 User's Guide" is under development. See
+ http://hdf.ncsa.uiuc.edu/HDF5/doc_dev_snapshot/H5_NewUG/current/.
+ * A "Parallel HDF5 Tutorial" is available at
+ http://hdf.ncsa.uiuc.edu/HDF5/doc/Tutor/.
+ * The "HDF5 Tutorial" is not distributed with this release. It is
+ available at http://hdf.ncsa.uiuc.edu/HDF5/doc/Tutor/.
+
+
+Platforms Tested
+================
+
+ AIX 4.3.3.0 (IBM SP powerpc) xlc 5.0.2.0
+ mpcc_r 5.0.2.0
+ xlf 07.01.0000.0002
+ mpxlf 07.01.0000.0002
+ AIX 4.3 (IBM SP RS6000) C for AIX Compiler, Version 5.0.2.0
+ xlf 7.1.0.2
+ poe 3.1.0.12 (includes mpi)
+ AIX 5.1 xlc 5.0.2.0
+ xlf 07.01.0000.0002
+ mpcc_r 5.0.2.0; mpxlf_r 07.01.0000.0002
+ Cray T3E sn6711 2.0.5.57 Cray Standard C Version 6.5.0.3
+ Cray Fortran Version 3.5.0.4
+ Cray SV1 10.0.1.1 Cray Standard C Version 6.5.0.3
+ Cray Fortran Version 3.5.0.4
+ FreeBSD 4.6 gcc 2.95.4
+ g++ 2.95.4
+ HP-UX B.10.20 HP C HP92453-01 A.10.32.30
+ HP F90 v2.3
+ HP-UX B.11.00 HP C HP92453-01 A.11.01.20
+ HP F90 v2.4
+ HP-UX B.11.00 SysV HP C HP92453-01 A.11.01.20
+ HP F90 v2.4
+ HP MPI [not a product] (03/24/2000) B6060BA
+ IRIX 6.5 MIPSpro cc 7.30
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
+ F90 MIPSpro 7.3.1.3m (64 only)
+ Linux 2.4.9-31smp gcc 2.95.3
+ g++ 2.95.3
+ Intel(R) C++ Version 6.0
+ Intel(R) Fortran Compiler Version 6.0
+ MPICH 1.2.2
+ Linux 2.2.18smp gcc 2.95.2
+ gcc 2.95.2 with mpich 1.2.1
+ g++ 2.95.2
+ pgf90 3.2-4
+ OSF1 V5.1 Compaq C V6.4-014
+ Compaq Fortran V5.5-1877-48BBF
+ gcc version 3.0 for C++
+ SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
+ (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0
+ WorkShop Compilers 5.0 98/10/25
+ FORTRAN 90 2.0 Patch 107356-04
+ SunOS 5.8/32 Sun WorkShop 6 update 1 C 5.2 2000/09/11
+ (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
+ Patch 109503-07 2001/08/11
+ Sun WorkShop 6 update 1 C++ 5.2 Patch
+ 109508-04 2001/07/11
+ SunOS 5.8/64 Sun WorkShop 6 update 1 C 5.2 2000/09/11
+ (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
+ Patch 109503-07 2001/08/11
+ Sun WorkShop 6 update 1 C++ 5.2 Patch
+ 109508-04 2001/07/11
+ TFLOPS r1.0.4 v4.2.2 i386 pgcc Rel 3.1-4i with mpich-1.2.3 with
+ local modifications
+ IA-32 Linux 2.4.9 cc Intel 5.0.1
+ gcc 2.96
+ Intel(R) C++ Version 6.0
+ Intel(R) Fortran Compiler Version 6.0
+
+ IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731
+ Intel(R) C++ Version 6.0
+ Intel(R) Fortran Compiler Version 6.0
+ Windows 2000 (NT5.0) MSVC++ 6.0
+ DEC Visual Fortran 6.0
+ Windows NT4.0 MSVC++ 6.0
+ DEC Visual Fortran 6.0
+ Windows NT4.0 Code Warrior 6.0
+
+
+Supported Configuration Features Summary
+========================================
+
+ In the tables below
+ y = tested and supported
+ n = not supported or not tested in this release
+ x = not working in this release
+ ( ) = footnote appears below second table
+
+
+ Platform C C F90 F90 C++ Shared zlib Tools
+ parallel parallel libraries(5)
+ Solaris2.6 y n y n y y y y
+ Solaris2.7 64 y y (1) y n y y y y
+ Solaris2.7 32 y y (1) y n y y y y
+ Solaris2.8 64 y n y n y y y y
+ Solaris2.8 32 y n y n y y y y
+ IRIX6.5 y y (1) n n n y y y
+ IRIX64_6.5 64 y y (2) y y n y y y
+ IRIX64_6.5 n32 y y (2) n n n y y y
+ HPUX10.20 y n y n n y y y
+ HPUX11.00 y n y n n y y y
+ HPUX11 SysV y y y y n y y y
+ OSF1 v5.1 y n y n y y y y
+ T3E y y y y n n y y
+ SV1 y n y n n n y y
+ TFLOPS n y (1) n n n n y y (4)
+ AIX-4.3 y y y y y n y y
+ AIX-5.1 y y y y n n y y
+ WinNT/2000 y n y n y y y y
+ WinNT CW y n n n n n y y
+ FreeBSD y n n n y y y y
+ Linux 2.2 y y (1) y n y y y y
+ Linux 2.4 y y (1) n n y y y y
+ Linux 2.4 Intel(6) y n y n y n y y
+ Linux 2.4 IA32 y n y n n n y y
+ Linux 2.4 IA64 y n y n n n y y
+
+
+ Platform 1.2 static- Thread- SRB GASS STREAM-
+ compatibility exec safe VFD
+ Solaris2.6 y x y n n y
+ Solaris2.7 64 y x y n n y
+ Solaris2.7 32 y x y n n y
+ Solaris2.8 64 y y n n n y
+ Solaris2.8 32 y x y n n y
+ IRIX6.5 y x n n n y
+ IRIX64_6.5 64 y x y n y y
+ IRIX64_6.5 n32 y x y n y y
+ HPUX10.20 y y n n n y
+ HPUX11.00 y x n n n y
+ HPUX11 SysV y x n n n y
+ OSF1 v5.1 y y n n n y
+ T3E y y n n n y
+ SV1 y y n n n y
+ TFLOPS y y n n n n
+ AIX-4.3 y y (3) n n n y
+ AIX-5.1 y y n n n y
+ WinNT/2000 y y n n n n
+ WinNT CW n n n n n n
+ FreeBSD y y y n n y
+ Linux 2.2 y y y n n y
+ Linux 2.4 y y y n n y
+ Linux 2.4 Intel(6) y y n n n y
+ Linux 2.4 IA32 y y n n n y
+ Linux 2.4 IA64 y y n n n y
+
+
+ Footnotes: (1) Using mpich.
+ (2) Using mpt and mpich.
+ (3) When configured with static-exec enabled, tests fail in
+ serial mode.
+ (4) No HDF4-related tools.
+ (5) Shared libraries are provided only for the C library,
+ except on Windows where they are provided for all languages.
+ (6) Linux 2.4 with Intel compilers.
+
+
+Known Problems
+==============
+
+ * Datasets or attributes which have a variable-length string datatype are
+ not printing correctly with h5dump and h5ls.
+
+ * When a dataset with the variable-length datatype is overwritten,
+ the library can develop memory leaks that cause the file to become
+ unnecessarily large. This is planned to be fixed in the next release.
+
+ * On the SV1, the h5ls test fails due to a difference between the
+ SV1 printf precision and the printf precision on other platforms.
+
+ * The h5dump tests may fail to match the expected output on some
+ platforms (e.g. SP2 parallel, Windows) where the error messages
+ directed to "stderr" do not appear in the "right order" with output
+ from stdout. This is not an error.
+
+ * The --enable-static-exec configure flag fails to compile for HP-UX
+ 11.00 platforms.
+
+ * The executables are always dynamic on IRIX64 6.5(64 and n32) and
+ IRIX 6.5 even if they are configured with --enable-static-exec.
+
+ * IRIX 6.5 fails to compile if configured with --enable-static-exec.
+
+ * The HDF5_MPI_OPT_TYPES optimization code in the parallel HDF5 will cause
+ a hang in some cases when chunked storage is used. This is now set to
+ be off by default. One may turn it on by setting the environment
+ variable HDF5_MPI_OPT_TYPES to a non-zero value such as 1.
+
+ * On IA32 and IA64 systems, if you use a compiler other than GCC (such as
+ Intel's ecc or icc compilers), you will need to modify the generated
+ "libtool" program after configuration is finished. On or around line 104
+ of the libtool file, there are lines which look like:
+
+ # How to pass a linker flag through the compiler.
+ wl=""
+
+ Change these lines to this:
+
+ # How to pass a linker flag through the compiler.
+ wl="-Wl,"
+
+ * To build the Fortran library using Intel compilers, one has to
+ x modify the source code in the fortran/src directory to remove the
+ !DEC and !MS compiler directives.
+ x The build will fail in the fortran/test directory and then in the
+ fortran/examples directory; to proceed, edit the work.pcl files in
+ those directories to contain two lines
+
+ work.pc
+ ../src/work.pc
+
+ * To build the Fortran library on IA64 use
+ setenv CC "ecc -DIA64"
+ setenv F9X "efc -cl,work.pcl"
+ before running configure and see the steps described above.
+
+
+%%%%1.4.3%%%% Release Information for hdf5-1.4.3 (18/Februaru/02)
+
+11. Release information for HDF5 version 1.4.3
+==============================================================================
+
+
+INTRODUCTION
+
+This document describes the differences between HDF5-1.4.2 and
+HDF5-1.4.3, and contains information on the platforms tested and
+known problems in HDF5-1.4.2. For more details check the HISTORY.txt
+file in the HDF5 source.
+
+The HDF5 documentation can be found on the NCSA ftp server
+(ftp.ncsa.uiuc.edu) in the directory:
+
+ /HDF/HDF5/docs/
+
+For more information look at the HDF5 home page at:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ hdfhelp@ncsa.uiuc.edu
+
+
+CONTENTS
+
+- New Features
+- Bug Fixes since HDF5-1.4.2
+- Documentation
+- Platforms Tested
+- Supported Configuration Features
+- Known Problems
+
+
+New Features
+============
+ o Configuration
+ ================
+ * Can use just enable-threadsafe if the C compiler has built-in pthreads
+ support.
+
+ o Library
+ =========
+ o General
+ ---------
+ * Added a new test to verify the information provided by the configure
+ command.
+ * Changed internal error handling macros to reduce code size of library by
+ about 10%.
+
+ o APIs
+ ------
+ * Changed prototype for H5Awrite from:
+ H5Awrite(hid_t attr_id, hid_t type_id, void *buf)
+ to:
+ H5Awrite(hid_t attr_id, hid_t type_id, const void *buf)
+ * The H5Pset_fapl_split() accepts raw and meta file names similar to the
+ syntax of H5Pset_fapl_multi() in addition to what it used to accept.
+
+ C++ API:
+ * Added operator= to class PredType
+ * Add the overloaded member function Attribute::getName to return
+ the attribute name's length as in C API. Note that the current
+ Attribute::getName, that returns "string", is still available.
+ * Following the change in the C library, the corresponding C++ API
+ is changed from:
+ void Attribute::write( const DataType& mem_type, void *buf )
+ to:
+ void Attribute::write( const DataType& mem_type, const void *buf )
+
+ o Performance
+ -------------
+ * Added perform programs to test the HDF5 library performance. Programs
+ are installed in directory perform/.
+ * Improved performance of byte-swapping during data conversions.
+ * Improved performance of single, contiguous hyperslabs when reading or
+ writing.
+ * Added support to read/write portions of chunks directly, if they are
+ uncompressed and too large to cache. This should speed up I/O on chunked
+ datasets for a few more cases. -QAK, 1/31/02
+
+ o Parallel Library
+ ==================
+ * Parallel C HDF5 now works on HP-UX platforms, Compaq clusters,
+ Linux clusters, Cplants (alpha-linux clusters).
+
+ o Tools
+ =======
+ * A helper script called ``h5cc'', which helps compilation of HDF5
+ programs, is now distributed with HDF5. See the reference manual
+ for information on how to use this feature.
+ * The H5Dumper can now dump comments associated with groups. -WCW 01-05-02
+
+ o Support for new platforms and languages
+ =========================================
+ * HDF5 C++ Library is supported on Windows platforms (shared and static)
+ * HDF5 F90 shared library is supported on Windows platforms.
+ * HDF5 C Library is supported on IA32 and IA64 platforms.
+
+
+
+Bug Fixes since HDF5-1.4.2 Release
+==================================
+
+ * Fixed a bug when reading chunked datasets where the edge of the dataset
+ would be incorrectly detected and generate an assertion failure.
+ * Fixed a bug where reading an entire dataset wasn't being handled
+ optimally when the dataset had unlimited dimensions. Dataset is read
+ in a single low-level I/O now, instead of being broken into separate
+ pieces internally.
+ * Fixed a bug where reading or writing chunked data which needed datatype
+ conversion could result in data values getting corrupted.
+ * Fixed a bug where appending a point selection to the current selection
+ would not actually append the point when there were no points defined
+ currently.
+ * Fixed a bug where 'or'ing a hyperslab with a 'none' selection would
+ fail. Now adds that hyperslab as the first hyperlab in the selection.
+ * Fixed a bug in the 'big' test where quota limits weren't being detected
+ properly if they caused close() to fail.
+ * Fixed a bug in internal B-tree code where a B-tree was not being copied
+ correctly.
+ * Fixed an off-by-one error in H5Sselect_valid when hyperslab selections
+ which would allow hyperslab selections which overlapped the edge of the
+ selection by one element as valid.
+ * Fixed the internal macros used to encode & decode file metadata, to avoid
+ an unaligned access warning on IA64 machines.
+ * Corrected behavior of H5Tinsert to not allow compound datatype fields to
+ be inserted past the end of the datatype.
+ * Retired the DPSS virtual file driver (--with-gridstorage configure
+ option).
+ * Fixed bug where variable-length datatypes for attributes was not working
+ correctly.
+ * Fixed bug where raw data re-allocated from the free-list would sometimes
+ overlap with the metadata accumulator and get corrupted. QAK - 1/23/02
+ * Fixed bug where a preempted chunk in the chunk data could still be
+ used by an internal pointer and cause an assertion failure or core
+ dump. QAK - 2/13/02
+ * Fixed bug where non-zero fill-value was not being read correctly from
+ certain chunked datasets when using an "all" or contiguous hyperslab
+ selection. QAK - 2/14/02
+
+
+Documentation
+=============
+ * Documentation was updated for the hdf5-1.4.3 release.
+ * A new "HDF5 User's Guide" is under development. See
+ http://hdf.ncsa.uiuc.edu/HDF5/doc_dev_snapshot/H5_NewUG/current/.
+ * Parallel Tutorial is available at http://hdf.ncsa.uiuc.edu/HDF5/doc/Tutor/
+
+
+Platforms Tested
+================
+
+ AIX 4.3.3.0 (IBM SP powerpc) xlc 5.0.2.0
+ mpcc_r 5.0.2.0
+ xlf 07.01.0000.0002
+ mpxlf 07.01.0000.0002
+ AIX 4.3 (IBM SP RS6000) C for AIX Compiler, Version 5.0.2.0
+ xlf 7.1.0.2
+ poe 3.1.0.12 (includes mpi)
+ Cray T3E sn6711 2.0.5.57 Cray Standard C Version 6.5.0.3
+ Cray Fortran Version 3.5.0.4
+ Cray SV1 10.0.0.8 Cray Standard C Version 6.5.0.3
+ Cray Fortran Version 3.5.0.4
+ FreeBSD 4.5 gcc 2.95.3
+ g++ 2.95.3
+ HP-UX B.10.20 HP C HP92453-01 A.10.32.30
+ HP F90 v2.3
+ HP-UX B.11.00 HP C HP92453-01 A.11.01.20
+ HP F90 v2.4
+ HP-UX B.11.00 SysV HP C HP92453-01 A.11.01.20
+ HP F90 v2.4
+ HP MPI [not a product] (03/24/2000) B6060BA
+ IRIX 6.5 MIPSpro cc 7.30
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.2m
+ Linux 2.4.4 gcc 2.95.3
+ g++ 2.95.3
+ Linux 2.2.18smp gcc 2.95.2
+ gcc 2.95.2 with mpich 1.2.1
+ g++ 2.95.2
+ pgf90 3.2-4
+ OSF1 V5.1 Compaq C V6.3-028
+ Compaq Fortran V5.4-1283
+ SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
+ (Solaris 2.7) Workshop Compilers 5.0 98/12/15 C++ 5.0
+ Workshop Compilers 5.0 98/10/25
+ FORTRAN 90 2.0 Patch 107356-04
+ SunOS 5.8/32 Sun WorkShop 6 update 1 C 5.2 2000/09/11
+ (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
+ Patch 109503-07 2001/08/11
+ Sun WorkShop 6 update 1 C++ 5.2 Patch
+ 109508-04 2001/07/11
+ SunOS 5.8/64 Sun WorkShop 6 update 1 C 5.2 2000/09/11
+ (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
+ Patch 109503-07 2001/08/11
+ Sun WorkShop 6 update 1 C++ 5.2 Patch
+ 109508-04 2001/07/11
+ TFLOPS r1.0.4 v4.0.8 i386 pgcc Rel 3.1-4i with mpich-1.2.1 with
+ local modifications
+ IA-32 Linux 2.2.10smpx cc Intel 5.0.1
+ egcs-2.91.66
+ IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731
+ Intel(R) C++ Itanium(TM) Compiler
+ for the Itanium(TM)-based applications,
+ Version 6.0 Beta, Build 20010905
+ Windows 2000 (NT5.0) MSVC++ 6.0
+ DEC Visual Fortran 6.0
+ Windows NT4.0 MSVC++ 6.0
+ DEC Visual Fortran 6.0
+ Windows NT4.0 Code Warrior 6.0
+ Windows 98 MSVC++ 6.0
+ DEC Visual Fortran 6.0
+
+
+Supported Configuration Features Summary
+========================================
+
+ In the tables below
+ y = tested and supported
+ n = not supported or not tested in this release
+ x = not working in this release
+ ( ) = footnote appears below second table
+
+
+ Platform C C F90 F90 C++ Shared zlib Tools
+ parallel parallel libraries
+ (5)
+ Solaris2.7 y y (1) y n y y y y
+ Solaris2.8 64 y n y n y y y y
+ Solaris2.8 32 y n y n y y y y
+ IA-64 y n n n n n y y
+ IRIX6.5 y y (1) n n n y y y
+ IRIX64_6.5 64 y y (2) y y n y y y
+ IRIX64_6.5 32 y y (2) n n n y y y
+ HPUX10.20 y n y n n y y y
+ HPUX11.00 y y y n n y y y
+ HPUX11 SysV y y y n n y y y
+ DECOSF y n y n y y y y
+ T3E y y y y n n y y
+ SV1 y n y n n n y y
+ TFLOPS y y (1) n n n n y y (4)
+ AIX-4.3 SP2 y y y y n n y n
+ AIX-4.3 SP3 y y y y y n y n
+ Win2000 y n y n y (6) y y y
+ Win98 y n y n y (6) y y y
+ WinNT y n y n y (6) y y y
+ WinNT CW y n n n n n y y
+ FreeBSD y n n n y y y y
+ Linux 2.2 y y (1) y n y y y y
+ Linux 2.4 y y (1) n n y y y y
+
+
+ Platform 1.2 static- Thread- SRB GASS STREAM-
+ compatibility exec safe VFD
+ Solaris2.7 n x y n n y
+ Solaris2.8 64 n y n n n y
+ Solaris2.8 32 n x n n n y
+ IA-64 n n n n n y
+ IRIX6.5 n x y n n y
+ IRIX64_6.5 64 n x y n y y
+ IRIX64_6.5 32 n x y n y y
+ HPUX10.20 n y n n n y
+ HPUX11.00 n x n n n y
+ HPUX11 SysV n x n n n y
+ DECOSF n y n n n y
+ T3E n y n n n y
+ SV1 n y n n n y
+ TFLOPS n y n n n n
+ AIX-4.3 SP2 n y (3) n n n y
+ AIX-4.3 SP3 n y n n n y
+ Win2000 n y n n n n
+ Win98 n y n n n n
+ WinNT n y n n n n
+ WinNT CW n n n n n n
+ FreeBSD n y y n n y
+ Linux 2.2 n y y n n y
+ Linux 2.4 n y y n n y
+
+
+ Footnotes: (1) Using mpich.
+ (2) Using mpt and mpich.
+ (3) When configured with static-exec enabled, tests fail
+ in serial mode.
+ (4) No HDF4-related tools.
+ (5) Shared libraries are provided only for the C library.
+ (6) Exception of (5): DLL is available for C++ API on Windows
+
+
+Known Problems
+==============
+
+ * Datasets or attributes which have a variable-length string datatype are
+ not printing correctly with h5dump and h5ls.
+
+ * When a dataset with the variable-legth datatype is overwritten,
+ the library can develop memory leaks that cause the file to become
+ unnecessarily large. This is planned to be fixed in the next release.
+
+ * On the SV1, the h5ls test fails due to a difference between the
+ SV1 printf precision and the printf precision on other platforms.
+
+
+ * The h5dump tests may fail to match the expected output in some
+ platforms (e.g. SP2 parallel, Windows) where the error messages
+ directed to "stderr" do not appear in the "right order" with output
+ from stdout. This is not an error.
+
+ * The --enable-static-exec configure flag fails to compile for HP-UX
+ 11.00 platforms.
+
+ * The executables are always dynamic on IRIX64 6.5(64 and n32) and
+ IRIX 6.5 even if they are configured with --enable-static-exec.
+
+ * IRIX 6.5 fails to compile if configured with --enable-static-exec.
+
+ * The HDF5_MPI_OPT_TYPES optimization code in the parallel HDF5 will cause
+ a hang in some cases when chunked storage is used. This is now set to
+ be off by default. One may turn it on by setting environment variable
+ HDF5_MPI_OPT_TYPES to a non-zero value such as 1.
+
+ * On IA64 systems one has to use -DIA64 compilation flag to compile
+ h4toh5 and h5toh4 utilities. After configuration step manually modify
+ Makefile in the tools/h4toh4 and tools/h5toh4 directories to add
+ -DIA64 to the compilation flags.
+
+ * On IA32 ansd IA64 systems, if you use a compiler other than GCC
+ (such as Intel's ecc compiler), you will need to modify the generated
+ "libtool" program after configuration is finished. On or around line 102
+ of the libtool file, there are lines which look like:
+
+ # How to pass a linker flag through the compiler.
+ wl=""
+
+ change the lines to this:
+
+ # How to pass a linker flag through the compiler.
+ wl="-Wl,"
+
+
+%%%%1.4.2%%%% Release Information for hdf5-1.4.2 (31/July/01)
+
+10. Release Information for hdf5-1.4.2
+=================================================================
+
+
+INTRODUCTION
+
+This document describes the differences between HDF5-1.4.1 and
+HDF5-1.4.2, and contains information on the platforms tested and
+known problems in HDF5-1.4.2.
+
+The HDF5 documentation can be found on the NCSA ftp server
+(ftp.ncsa.uiuc.edu) in the directory:
+
+ /HDF/HDF5/docs/
+
+For more information look at the HDF5 home page at:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ hdfhelp@ncsa.uiuc.edu
+
+
+CONTENTS
+
+- New Features
+- Bug Fixes since HDF5-1.4.1
+- Documentation
+- Platforms Tested
+- Supported Configuration Features
+- Known Problems
+
+
+New Features
+============
+
+ * File sizes greater than 2GB are now supported on Linux systems with
+ version 2.4.x or higher kernels.
+ * Added a global string variable H5_lib_vers_info_g which holds the
+ HDF5 library version information. This can be used to identify
+ an hdf5 library or hdf5 application binary.
+ Also added a verification of the consistency between H5_lib_vers_info_g
+ and other version information in the source code.
+ * Parallel HDF5 now runs on the HP V2500 and HP N4000 machines.
+ * F90 API:
+ - Added additional parameter "dims" to the h5dread_f/h5dwrite_f and
+ h5aread_f/h5awrite_f subroutines. This parameter is a 1-D array
+ of size 7 and contains the sizes of the data buffer dimensions.
+ This change enables portability between Windows and UNIX platforms.
+ In previous versions of the F90 APIs, the data buffer parameters of
+ the above functions were declared as assumed-shape arrays, which
+ were passed to the C functions by a descriptor. There is no
+ portable means, however, of passing descriptors from F90 to C,
+ causing portability problems between Windows and UNIX and among
+ UNIX platforms. With this change, the data buffers are assumed-
+ size arrays, which can be portably passed to the C functions.
+ * F90 static library is available on Windows platforms.
+ See INSTALL_Windows_withF90.txt for details.
+ * F90 APIs are available on HPUX 11.00 and 10.20 and IBM SP platforms.
+ * H5 <-> GIF converter has been added. This is available under
+ tools/gifconv. The converter supports the ability to create animated
+ gifs as well.
+ * Verified correct operation of library on Solaris 2.8 in both 64-bit and
+ 32-bit compilation modes. See INSTALL document for instructions on
+ compiling the distribution with 64-bit support.
+ * Added support for the Metrowerks Code Warrior compiler for Windows.
+ * For H4->H5 converter utility, added a new option to choose not to convert
+ HDF4 specified attributes(reference number, class) into HDF5 attributes.
+ * Added support chunking and compression in SDS and image in H4->H5 converter.
+ Currently HDF5 only supports gzip compression, so by default an HDF4 file
+ with any other compression method will be converted into an HDF5 file in
+ gzip compression.
+ * correct the order or reading HDF4 image array in H4->H5 conversion.
+ * Added new parallel hdf5 tests in t_mpi. The new test checks if the
+ filesystem or the MPI-IO can really handle greater than 2GB files.
+ If it fails, it prints information message only without failing the
+ test.
+ * Added a parallel HDF5 example examples/ph5example.c to illustrate
+ the basic way of using parallel HDF5.
+ * Added a new public macro, H5_VERS_INFO, which is a string holding
+ the HDF5 library version information. This string is also compiled
+ into all HDF5 binary code which helps to identify the version information
+ of the binary code. One may use the Unix strings command on the binary
+ file and looks for the pattern "HDF5 library version".
+ * Added new checking in H5check_version() to verify the five HDF5 version
+ information macros (H5_VERS_MAJOR, H5_VERS_MINOR, H5_VERS_RELEASE,
+ H5_VERS_SUBRELEASE and H5_VERS_INFO) are consistent.
+
+
+Bug Fixes since HDF5-1.4.1 Release
+==================================
+
+ * Fixed bug with non-zero userblock sizes causing raw data to not
+ write correctly.
+ * Fixed problems with Pablo build and linking with non-standard MPI I/O.
+ * Fixed build on Linux systems with --enable-static-exec flag. It now
+ works correctly.
+ * IMPORTANT: Fixed file metadata corruption bug which could cause
+ metadata data loss in certain situations.
+ * The allocation by alignment (H5Pset_alignment) feature code somehow
+ got dropped in some 1.3.x version. Re-implemented it with "new and
+ improved" algorithm. It keeps track of "wasted" file-fragment in
+ the free-list too.
+ * Removed limitation that the data transfer buffer size needed to be
+ set for datasets whose dimensions were too large for the 'all'
+ selection code to handle. Any size dimensioned datasets should be
+ handled correctly now.
+ * Changed behavior of H5Tget_member_type to correctly emulate HDF5 v1.2.x
+ when --enable-hdf5v1_2 configure flag is enabled.
+ * Added --enable-linux-lfs flag to allow more control over whether to
+ enable or disable large file support on Linux.
+ * Fixed various bugs related to SDS dimensional scale conversions in H4->H5
+ converter.
+ * Fixed a bug to correctly convert HDF4 objects with fill value into HDF5.
+ * Fixed a bug of H5pubconf.h causing repeated definitions if it is included
+ more than once. hdf5.h now includes H5public.h which includes
+ H5pubconf.h. Applications should #include hdf5.h which handles multiple
+ inclusion correctly.
+ * Fixed H5FDmpio.h to be C++ friendly by making Parallel HDF5 API's to be
+ external to C++.
+ * Fixed a bug in H5FD_mpio_flush() that might result in negative file seek
+ if both MPIO and Split-file drivers are used together.
+
+
+
+Documentation
+=============
+
+ * The H5T_conv_t and H5T_cdata_t structures are now properly defined
+ in the H5Tregister entry in the "H5T" section of the "HDF5 Reference
+ Manual" and described in detail in section 12, "Data Conversions," in
+ the "Datatypes" chapter of the "HDF5 User's Guide."
+ * The new tools h52gif and gif2h5 have been added to the "Tools" section
+ of the Reference Manual.
+ * A "Freespace Management" section has been added to the "Performance"
+ chapter of the User's Guide.
+ * Several user-reported bugs have been fixed since Release 1.4.1.
+ * The "HDF5 Image and Palette Specification" (in the "HDF5 Application
+ Developer's Guide") has been heavily revised. Based on extensive user
+ feedback and input from visualization software developers, Version 1.2
+ of the image specification is substantially different from prior
+ versions.
+
+
+Platforms Tested
+================
+
+ AIX 4.3.3.0 (IBM SP powerpc) xlc 3.6.6.0
+ mpcc_r 3.6.6.0
+ xlf 07.01.0000.0002
+ mpxlf 07.01.0000.0002
+ AIX 4.3 (IBM SP RS6000) C for AIX Compiler, Version 5.0.2.0
+ xlf 7.1.0.2
+ poe 2.4.0.14 (includes mpi)
+ Cray T3E sn6711 2.0.5.49a Cray Standard C Version 6.5.0.1
+ Cray SV1 10.0.0.2 Cray Standard C Version 6.5.0.1
+ Cray Fortran Version 3.5.0.1
+ FreeBSD 4.3 gcc 2.95.3
+ g++ 2.95.3
+ HP-UX B.10.20 HP C HP92453-01 A.10.32.30
+ HP F90 v2.3
+ HP-UX B.11.00 HP C HP92453-01 A.11.01.20
+ HP F90 v2.4
+ HP-UX B.11.00 SysV HP C HP92453-01 A.11.01.20
+ HP F90 v2.4
+ IRIX 6.5 MIPSpro cc 7.30
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.2m
+ Linux 2.4.4 gcc 2.95.3
+ g++ 2.95.3
+ Linux 2.2.18smp gcc 2.95.2
+ gcc 2.95.2 with mpich 1.2.1
+ g++ 2.95.2
+ pgf90 3.2-4
+ OSF1 V4.0 DEC-V5.2-040 on Digital UNIX V4.0 (Rev 564)
+ Digital Fortran 90 V4.1-270
+ SunOS 5.6 WorkShop Compilers 5.0 98/12/15 C 5.0
+ (Solaris 2.6) WorkShop Compilers 5.0 98/10/25 FORTRAN 90
+ 2.0 Patch 107356-04
+ SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
+ (Solaris 2.7) Workshop Compilers 5.0 98/12/15 C++ 5.0
+ Workshop Compilers 5.0 98/10/25 FORTRAN 90
+ 2.0 Patch 107356-04
+ SunOS 5.8/32 Sun WorkShop 6 update 1 C 5.2 2000/09/11
+ (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
+ 2000/09/11
+ Sun WorkShop 6 update 1 C++ 5.2 2000/09/11
+ SunOS 5.8/64 Sun WorkShop 6 update 1 C 5.2 2000/09/11
+ (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
+ 2000/09/11
+ Sun WorkShop 6 update 1 C++ 5.2 2000/09/11
+ TFLOPS r1.0.4 v4.0.7 i386 pgcc Rel 3.1-4i with mpich-1.2.1 with
+ local modifications
+ Windows 2000 (NT5.0) MSVC++ 6.0
+ Windows NT4.0 MSVC++ 6.0
+ DEC Visual Fortran 6.0
+ Windows NT4.0 Code Warrior 6.0
+ Windows 98 MSVC++ 6.0
+ DEC Visual Fortran 6.0
+
+
+Supported Configuration Features Summary
+========================================
+
+ In the tables below
+ y = tested and supported
+ n = not supported or not tested in this release
+ x = not working in this release
+ ( ) = footnote appears below second table
+
+
+ Platform C C F90 F90 C++ Shared zlib Tools
+ parallel parallel libraries
+ (5)
+ Solaris2.6 y n y n y y y y
+ Solaris2.7 y y (1) y n y y y y
+ Solaris2.8 64 y n n n y y y y
+ Solaris2.8 32 y n y n y y y y
+ IRIX6.5 y y (1) n n n y y y
+ IRIX64_6.5 64 y y (2) y y n y y y
+ IRIX64_6.5 32 y y (2) n n n y y y
+ HPUX10.20 y n y n n y y y
+ HPUX11.00 y n y n n y y y
+ HPUX11 SysV y n y n n y y y
+ DECOSF y n y n n y y y
+ T3E y y y y n n y y
+ SV1 y n y n n n y y
+ TFLOPS y y (1) n n n n y y (4)
+ AIX-4.3 SP2 y y y y n n y n
+ AIX-4.3 SP3 y y y y n n y n
+ Win2000 y n n n n y y y
+ Win98 y n y n n y y y
+ WinNT y n y n n y y y
+ WinNT CW y n n n n n y y
+ FreeBSD y n n n y y y y
+ Linux 2.2 y y (1) y n y y y y
+ Linux 2.4 y y (1) n n y y y y
+
+
+ Platform 1.2 static- Thread- SRB GASS STREAM-
+ compatibility exec safe VFD
+ Solaris2.6 y x n n n y
+ Solaris2.7 y x y n n y
+ Solaris2.8 64 y y n n n y
+ Solaris2.8 32 y x n n n y
+ IRIX6.5 y x y n n y
+ IRIX64_6.5 64 y x n n n y
+ IRIX64_6.5 32 y x n n n y
+ HPUX10.20 y y n n n y
+ HPUX11.00 y x n n n y
+ HPUX11 SysV y x n n n y
+ DECOSF y y n n n y
+ T3E y y n n n y
+ SV1 y y n n n y
+ TFLOPS y y n n n n
+ AIX-4.3 SP2 y y (3) n n n y
+ AIX-4.3 SP3 y y n n n y
+ Win2000 y y n n n n
+ Win98 n y n n n n
+ WinNT y y n n n n
+ WinNT CW n n n n n n
+ FreeBSD y y n n n y
+ Linux 2.2 y y y n n y
+ Linux 2.4 y y y n n y
+
+
+ Footnotes: (1) Using mpich.
+ (2) Using mpt and mpich.
+ (3) When configured with static-exec enabled, tests fail
+ in serial mode.
+ (4) No HDF4-related tools.
+ (5) Shared libraries are provided only for the C library.
+
+
+Known Problems
+==============
+
+ * When a dataset with the variable-legth datatype is overwritten,
+ the library can develop memory leaks that cause the file to become
+ unnecessarily large. This is planned to be fixed in the next release.
+
+ * On the SV1, the h5ls test fails due to a difference between the
+ SV1 printf precision and the printf precision on other platforms.
+
+ * The h5dump tests may fail to match the expected output in some
+ platforms (e.g. SP2 parallel, Windows) where the error messages
+ directed to "stderr" do not appear in the "right order" with output
+ from stdout. This is not an error.
+
+ * The --enable-static-exec configure flag fails to compile for HP-UX
+ 11.00 platforms.
+
+ * The executables are always dynamic on IRIX64 6.5(64 and n32) and
+ IRIX 6.5 even if they are configured with --enable-static-exec.
+
+ * IRIX 6.5 fails to compile if configured with --enable-static-exec.
+
+ * For 24-bit image conversion from H4->H5, the current conversion is
+ not consistent with HDF5 image specification.
+
+ * In some cases, and SDS with an UNLIMITED dimension that has not
+ been written (current size = 0) is not converted correctly.
+
+ * After "make install" or "make install-doc" one may need to reload
+ the source from the tar file before doing another build.
+
+ * The HDF5_MPI_OPT_TYPES optimization code in the parallel HDF5 will cause
+ a hang in some cases when chunked storage is used. This is now set to
+ be off by default. One may turn it on by setting environment variable
+ HDF5_MPI_OPT_TYPES to a non-zero value such as 1.
+
+%%%%1.4.1%%%% Release Information for hdf5-1.4.1 (April/01)
+
+9. Release Information for hdf5-1.4.1 (April/01)
+=====================================================================
+
+
+
+ HDF5 Release 1.4.1
+
+
+INTRODUCTION
+
+This document describes the differences between HDF5-1.4.0 and
+HDF5-1.4.1, and contains information on the platforms tested and
+known problems in HDF5-1.4.1.
+
+The HDF5 documentation can be found on the NCSA ftp server
+(ftp.ncsa.uiuc.edu) in the directory:
+
+ /HDF/HDF5/docs/
+
+For more information look at the HDF5 home page at:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ hdfhelp@ncsa.uiuc.edu
+
+
+CONTENTS
+
+- New Features
+- Bug Fixes since HDF5-1.4.0
+- Documentation
+- Platforms Tested
+- Supported Configuration Features
+- Known Problems
+
+
+New Features
+============
+
+ * XML output option for h5dump utility.
+
+ A new option --xml to output data in XML format has been added. The
+ XML output contains a complete description of the file, marked up in
+ XML.
+
+ The XML conforms to the HDF5 Document Type Definition (DTD), which
+ is available at:
+
+ http://hdf.ncsa.uiuc.edu/DTDs/HDF5-File.dtd
+
+ The XML output is suitable for use with other tools, including the
+ Java Tools:
+
+ http://hdf.ncsa.uiuc.edu/java-hdf5-html
+
+
+Bug Fixes since HDF5-1.4.0 Release
+==================================
+
+ * h4toh5 utility: conversion of images is fixed
+
+ Earlier releases of the h4toh5 utility produced images that did not
+ correctly conform to the HDF5 Image and Palette Specification.
+
+ http://hdf.ncsa.uiuc.edu/HDF5/doc/ImageSpec.html
+
+ Several required HDF5 attributes are omitted, and the dataspace
+ is reversed (i.e., the ht. and width of the image dataset is
+ incorrectly described.) For more information, please see:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/H5Image/ImageDetails.htm
+
+ * Fixed bug with contiguous hyperslabs not being detected, causing
+ slower I/O than necessary.
+ * Fixed bug where non-aligned hyperslab I/O on chunked datasets was
+ causing errors during I/O
+ * The RCSID string in H5public.h was causing the C++ compiling problem
+ because when it was included multiple times, C++ did not like
+ multiple definitions of the same static variable. All occurrence of
+ RCSID definition are removed since we have not used it consistently
+ before.
+
+
+Documentation
+=============
+
+ PDF and Postscript versions of the following documents are available
+ for this release:
+ Document Filename
+ -------- --------
+ Introduction to HDF5 H5-R141-Introduction.pdf
+ HDF5 Reference Manual H5-R141-RefManual.pdf
+ C++ APIs to HDF5 documents H5-R141-Cplusplus.pdf
+ Fortran90 APIs to HDF5 documents H5-R141-Fortran90.pdf
+
+ PDF and Postscript files containing H5-R141-DocSet.pdf
+ all of the above H5-R141-DocSet.ps
+
+ These files are not included in this distribution, but are available
+ via the Web or FTP at the following locations:
+ http://hdf.ncsa.uiuc.edu/HDF5/doc/PSandPDF/
+ ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/docs/
+
+ While these documents are labeled Release 1.4.1, they describe
+ Release 1.4.0 as well.
+
+
+Platforms Tested
+================
+
+Due to the nature of this release only C, C++ libraries and tools were tested.
+
+ AIX 4.3.3.0 (IBM SP powerpc) xlc 3.6.6
+ mpcc_r 3.6.6
+ Cray T3E sn6711 2.0.5.47 Cray Standard C Version 6.5.0.0
+ Cray SV1 10.0.0.8 Cray Standard C Version 6.5.0.0
+ FreeBSD 4.3 gcc 2.95.2
+ HP-UX B.10.20 HP C HP92453-01 A.10.32.30
+ HP-UX B.11.00 HP C HP92453-01 A.11.01.20
+ IRIX 6.5 MIPSpro cc 7.30
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m
+ Linux 2.2.18smp gcc-2.95.2
+ g++ 2.95.2
+ OSF1 V4.0 DEC-V5.2-040
+ Digital Fortran 90 V4.1-270
+ SunOS 5.6 WorkShop Compilers 5.0 98/12/15 C 5.0
+ (Solaris 2.6)
+
+ SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
+ (Solaris 2.7) Workshop Compilers 5.0 98/12/15 C++ 5.0
+ TFLOPS r1.0.4 v4.0 mpich-1.2.1 with local changes
+ Windows NT4.0, 2000 (NT5.0) MSVC++ 6.0
+ Windows 98 MSVC++ 6.0
+
+
+Supported Configuration Features Summary
+========================================
+
+ * See "Supported Configuration Features Summary" section for the HDF5
+ 1.4.0 release in the HISTORY.txt file.
+
+Known Problems
+==============
+
+ * The h5dump tests may fail to match the expected output in some
+ platforms (e.g. SP2 parallel, Windows) where the error messages
+ directed to "stderr" do not appear in the "right order" with output
+ from stdout. This is not an error.
+
+ * The --enable-static-exec configure flag fails to compile for HP-UX
+ 11.00 platforms.
+
+ * The executable are always dynamic on IRIX64 6.5(64 and n32) and
+ IRIX 6.5 even if they are configured with --enable-static-exec.
+
+ * The shared library failed compilation on IRIX 6.5.
+
+ * After "make install" or "make install-doc" one may need to reload the source
+ from the tar file before doing another build.
+
+ * See "Known problems" section for the HDF5 1.4.0 release in the
+ HISTORY.txt file.
+
+%%%%1.4.0%%%% Release Information for hdf5-1.4.0 (2/22/01)
+
+8. Release Information for hdf5-1.4.0
+===================================================================
+
+ HDF5 Release 1.4.0
+
+
+INTRODUCTION
+
+This document describes the differences between HDF5-1.2.0 and
+HDF5-1.4.0, and contains information on the platforms tested and
+known problems in HDF5-1.4.0. For more details check the HISTORY.txt
+file in the HDF5 source.
+
+The HDF5 documentation can be found on the NCSA ftp server
+(ftp.ncsa.uiuc.edu) in the directory:
+
+ /HDF/HDF5/docs/
+
+For more information look at the HDF5 home page at:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ hdfhelp@ncsa.uiuc.edu
+
+
+CONTENTS
+
+- New Features
+- h4toh5 Utility
+- F90 Support
+- C++ Support
+- Pablo Support
+- Bug Fixes since HDF5-1.2.0
+- Bug Fixes since HDF5-1.4.0-beta2
+- Bug Fixes since HDF5-1.4.0
+- Documentation
+- Platforms Tested
+- Supported Configuration Features
+- Known Problems
+
+
+New Features
+============
+ * The Virtual File Layer, VFL, was added to replace the old file
+ drivers. It also provides an API for user defined file drivers.
+ * New features added to snapshots. Use 'snapshot help' to see a
+ complete list of features.
+ * Improved configure to detect if MPIO routines are available when
+ parallel mode is requested.
+ * Added Thread-Safe support. Phase I implemented. See:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/papers/mthdf/MTHDFpaper.htm
+
+ for more details.
+ * Added data sieve buffering to raw data I/O path. This is enabled
+ for all VFL drivers except the mpio & core drivers. Setting the
+ sieve buffer size is controlled with the new API function,
+ H5Pset_sieve_buf_size(), and retrieved with H5Pget_sieve_buf_size().
+ * Added new Virtual File Driver, Stream VFD, to send/receive entire
+ HDF5 files via socket connections.
+ * As parts of VFL, HDF-GASS and HDF-SRB are also added to this
+ release. To find out details, please read INSTALL_VFL file.
+ * Increased maximum number of dimensions for a dataset (H5S_MAX_RANK)
+ from 31 to 32 to align with HDF4 & netCDF.
+ * Added 'query' function to VFL drivers. Also added 'type' parameter to
+ VFL 'read' & 'write' calls, so they are aware of the type of data
+ being accessed in the file. Updated the VFL document also.
+ * A new h4toh5 utility, to convert HDF4 files to analogous HDF5 files.
+ * Added a new array datatype to the datatypes which can be created.
+ Removed "array fields" from compound datatypes (use an array datatype
+ instead).
+ * Parallel HDF5 works correctly with mpich-1.2.1 on Solaris, SGI, Linux.
+ * You can now install the HDF5 documentation using the
+ ``make install-doc'' command. The documentation is installed in the
+ $(prefix)/doc directory where $(prefix) is the prefix specified by
+ the (optional) ``--prefix'' flag during configuration.
+ * HDF5 can operate correctly in the OpenMP environment in a limited way.
+ Check doc/html/TechNotes/openmp-hdf5.html for details.
+
+
+h4toh5 Utility
+==============
+ The h4toh5 utility is a new utility that converts an HDF4 file to an
+ HDF5 file. For details, see the document, "Mapping HDF4 Objects to
+ HDF5 Objects":
+ http://hdf.ncsa.uiuc.edu/HDF5/papers/H4-H5MappingGuidelines.pdf
+
+ Known Bugs:
+
+ The h4toh5 utility produces images that do not correctly conform
+ to the HDF5 Image and Palette Specification.
+
+ http://hdf.ncsa.uiuc.edu/HDF5/doc/ImageSpec.html
+
+ Several required HDF5 attributes are omitted, and the dataspace
+ is reversed (i.e., the ht. and width of the image dataset is
+ incorrectly described.) For more information, please see:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/H5Image/ImageDetails.html
+
+ This bug has been fixed for the snapshot of hdf5 1.4 release. March 12th,2001
+
+ Known Limitations of the h4toh5 release
+ ---------------------------------------------
+
+ 1. Error handlings
+
+ h4toh5 utility will print out an error message when an error occurs.
+
+ 2. String Datatype
+
+ HDF4 has no 'string' type. String valued data are usually defined as
+ an array of 'char' in HDF4. The h4toh5 utility will generally map
+ these to HDF5 'String' types rather than array of char, with the
+ following additional rules:
+
+ * For the data of an HDF4 SDS, image, and palette, if the data is
+ declared 'DFNT_CHAR8' it will be assumed to be integer and will
+ be an H5T_INTEGER type.
+ * For attributes of any HDF4 object, data of type 'DFNT_CHAR8'
+ will be converted to an HDF5 'H5T_STRING' type.
+ * For an HDF4 Vdata, it is difficult to determine whether data
+ of type 'DFNT_CHAR8' is intended to be bytes or characters. The
+ h4toh5 utility will consider them to be C characters, and will
+ convert them to an HDF5 'H5T_STRING' type.
+
+
+ 3. Compression, Chunking and External Storage
+
+ Chunking is supported, but compression and external storage is not.
+
+ An HDF4 object that uses chunking will be converted to an HDF5 file
+ with analogous chunked storage.
+
+ An HDF4 object that uses compression will be converted to an
+ uncompressed HDF5 object.
+
+ An HDF4 object that uses external storage will be converted to an
+ HDF5 object without external storage.
+
+ 4. Memory Use
+
+ This version of the h4toh5 utility copies data from HDF4 objects
+ in a single read followed by a single write to the HDF5 object. For
+ large objects, this requires a very large amount of memory, which may
+ be extremely slow or fail on some platforms.
+
+ Note that a dataset that has only been partly written will
+ be read completely, including uninitialized data, and all the
+ data will be written to the HDF5 object.
+
+ 5. Platforms
+
+ The h4toh5 utility requires HDF5-1.4.0 and HDF4r1.4
+
+ h4toh5 utility has been tested on all platforms listed below (see
+ section "Platforms Tested") except TFLOPS.
+
+
+F90 Support
+===========
+ This is the first release of the HDF5 Library with fully integrated
+ F90 API support. The Fortran Library is created when the
+ --enable-fortran flag is specified during configuration.
+
+ Not all F90 subroutines are implemented. Please refer to the HDF5
+ Reference Manual for more details.
+
+ F90 APIs are available for the Solaris 2.6 and 2.7, Linux, DEC UNIX,
+ T3E, SV1 and O2K (64 bit option only) platforms. The Parallel version of
+ the HDF5 F90 Library is supported on the O2K and T3E platforms.
+
+ Changes since the last prototype release (July 2000)
+ ----------------------------------------------------
+ * h5open_f and h5close_f must be called instead of h5init_types and
+ h5close_types.
+
+ * The following subroutines are no longer available:
+
+ h5pset_xfer_f
+ h5pget_xfer_f
+ h5pset_mpi_f
+ h5pget_mpi_f
+ h5pset_stdio_f
+ h5pget_stdio_f
+ h5pset_sec2_f
+ h5pget_sec2_f
+ h5pset_core_f
+ h5pget_core_f
+ h5pset_family_f
+ h5pget_family_f
+
+ * The following functions have been added:
+
+ h5pset_fapl_mpio_f
+ h5pget_fapl_mpio_f
+ h5pset_dxpl_mpio_f
+ h5pget_dxpl_mpio_f
+
+ * In the previous HDF5 F90 releases, the implementation of object
+ references and dataset region references was not portable. This
+ release introduces a portable implementation, but it also introduces
+ changes to the read/write APIs that handle references. If object or
+ dataset region references are written or read to/from an HDF5 file,
+ h5dwrite_f and h5dread_f must use the extra parameter, n, for the
+ buffer size:
+
+ h5dwrite(read)_f(dset_id, mem_type_id, buf, n, hdferr, &
+ ^^^
+ mem_space_id, file_space_id, xfer_prp)
+
+ For other datatypes the APIs were not changed.
+
+
+C++ Support
+===========
+ This is the first release of the HDF5 Library with fully integrated
+ C++ API support. The HDF5 C++ library is built when the --enable-cxx
+ flag is specified during configuration.
+
+ Check the HDF5 Reference Manual for available C++ documentation.
+
+ C++ APIs are available for Solaris 2.6 and 2.7, Linux, and FreeBSD.
+
+
+Pablo Support
+=============
+ This version does not allow proper building of the Pablo-instrumented
+ version of the library. A version supporting the pablo build is
+ available on the Pablo Website at
+ www-pablo.cs.uiuc.edu/pub/Pablo.Release.5/HDFLibrary/hdf5_v1.4.tar.gz
+
+
+Bug Fixes since HDF5-1.2.0
+==========================
+
+Library
+-------
+ * The function H5Pset_mpi is renamed as H5Pset_fapl_mpio.
+ * Corrected a floating point number conversion error for the Cray J90
+ platform. The error did not convert the value 0.0 correctly.
+ * Error was fixed which was not allowing dataset region references to
+ have their regions retrieved correctly.
+ * Corrected a bug that caused non-parallel file drivers to fail in
+ the parallel version.
+ * Added internal free-lists to reduce memory required by the library
+ and H5garbage_collect API function
+ * Fixed error in H5Giterate which was not updating the "index"
+ parameter correctly.
+ * Fixed error in hyperslab iteration which was not walking through the
+ correct sequence of array elements if hyperslabs were staggered in a
+ certain pattern
+ * Fixed several other problems in hyperslab iteration code.
+ * Fixed another H5Giterate bug which was causes groups with large
+ numbers of objects in them to misbehave when the callback function
+ returned non-zero values.
+ * Changed return type of H5Aiterate and H5A_operator_t typedef to be
+ herr_t, to align them with the dataset and group iterator functions.
+ * Changed H5Screate_simple and H5Sset_extent_simple to not allow
+ dimensions of size 0 with out the same dimension being unlimited.
+ * QAK - 4/19/00 - Improved metadata hashing & caching algorithms to
+ avoid many hash flushes and also remove some redundant I/O when
+ moving metadata blocks in the file.
+ * The "struct(opt)" type conversion function which gets invoked for
+ certain compound datatype conversions was fixed for nested compound
+ types. This required a small change in the datatype conversion
+ function API.
+ * Re-wrote lots of the hyperslab code to speed it up quite a bit.
+ * Added bounded garbage collection for the free lists when they run
+ out of memory and also added H5set_free_list_limits API call to
+ allow users to put an upper limit on the amount of memory used for
+ free lists.
+ * Checked for non-existent or deleted objects when dereferencing one
+ with object or region references and disallow dereference.
+ * "Time" datatypes (H5T_UNIX_D*) were not being stored and retrieved
+ from object headers correctly, fixed now.
+ * Fixed H5Dread or H5Dwrite calls with H5FD_MPIO_COLLECTIVE requests
+ that may hang because not all processes are transfer the same amount
+ of data. (A.K.A. prematured collective return when zero amount data
+ requested.) Collective calls that may cause hanging is done via the
+ corresponding MPI-IO independent calls.
+ * If configure with --enable-debug=all, couple functions would issue
+ warning messages to "stderr" that the operation is expensive time-wise.
+ This messed up applications (like testings) that did not expect the
+ extra output. It is changed so that the warning will be printed only
+ if the corresponding Debug key is set.
+
+Configuration
+-------------
+ * The hdf5.h include file was fixed to allow the HDF5 Library to be
+ compiled with other libraries/applications that use GNU autoconf.
+ * Configuration for parallel HDF5 was improved. Configure now attempts
+ to link with libmpi.a and/or libmpio.a as the MPI libraries by
+ default. It also uses "mpirun" to launch MPI tests by default. It
+ tests to link MPIO routines during the configuration stage, rather
+ than failing later as before. One can just do "./configure
+ --enable-parallel" if the MPI library is in the system library.
+ * Added support for pthread library and thread-safe option.
+ * The libhdf5.settings file shows the correct machine byte-sex.
+ * Added option "--enable-stream-vfd" to configure w/o the Stream VFD.
+ For Solaris, added -lsocket to the LIBS list of libraries.
+
+Tools
+-----
+ * h5dump now accepts both short and long command-line parameters:
+ -h, --help Print a usage message and exit
+ -B, --bootblock Print the content of the boot block
+ -H, --header Print the header only; no data is displayed
+ -i, --object-ids Print the object ids
+ -V, --version Print version number and exit
+ -a P, --attribute=P Print the specified attribute
+ -d P, --dataset=P Print the specified dataset
+ -g P, --group=P Print the specified group and all members
+ -l P, --soft-link=P Print the value(s) of the specified soft link
+ -o F, --output=F Output raw data into file F
+ -t T, --datatype=T Print the specified named data type
+ -w #, --width=# Set the number of columns
+
+ P - is the full path from the root group to the object.
+ T - is the name of the data type.
+ F - is a filename.
+ # - is an integer greater than 1.
+ * A change from the old way command line parameters were interpreted
+ is that multiple attributes, datasets, groups, soft-links, and
+ object-ids cannot be specified with just one flag but you have to
+ use a flag with each object. I.e., instead of doing this:
+
+ h5dump -a /attr1 /attr2 foo.h5
+
+ do this:
+
+ h5dump -a /attr1 -a /attr2 foo.h5
+
+ The cases are similar for the other object types.
+ * h5dump correctly displays compound datatypes.
+ * Corrected an error in h5toh4 which did not convert the 32bits
+ int from HDF5 to HDF4 correctly for the T3E platform.
+ * h5dump correctly displays the committed copy of predefined types
+ correctly.
+ * Added an option, -V, to show the version information of h5dump.
+ * Fixed a core dumping bug of h5toh4 when executed on platforms like
+ TFLOPS.
+ * The test script for h5toh4 used to not able to detect the hdp
+ dumper command was not valid. It now detects and reports the
+ failure of hdp execution.
+ * Merged the tools with the 1.2.2 branch. Required adding new
+ macros, VERSION12 and VERSION13, used in conditional compilation.
+ Updated the Windows project files for the tools.
+ * h5dump displays opaque and bitfield data correctly.
+ * h5dump and h5ls can browse files created with the Stream VFD
+ (eg. "h5ls :").
+ * h5dump has a new feature "-o " which outputs the raw data
+ of the dataset into ascii text file .
+ * h5toh4 used to converts hdf5 strings type to hdf4 DFNT_INT8 type.
+ Corrected to produce hdf4 DFNT_CHAR type instead.
+ * h5dump and h5ls displays array data correctly.
+
+
+Bug Fixes since HDF5-1.4.0-beta2
+================================
+ * Fixed a bug in the conversion from a little endian double to a big
+ endian float in some special cases.
+ * Corrected configuration error which was not including compression
+ support correctly.
+ * Cleaned up lots of warnings.
+ * Changed a few h5dump command line switches and added long versions of
+ the switches.
+ * Changed parameters for H5Tconvert, H5Pset_bufer and H5Pget_buffer from
+ size_t to hsize_t
+ * Fixed fairly obscure bug in hyperslab I/O which could (in rare cases)
+ not copy all the data during a transfer.
+ * Removed ragged array code from library.
+ * F90 library and module files are installed properly now on all supported
+ platforms.
+
+
+Bug Fixes since HDF5-1.4.0 Release
+==================================
+
+ * Fixed bug with contiguous hyperslabs not being detected, causing
+ slower I/O than necessary.
+ * Fixed bug where non-aligned hyperslab I/O on chunked datasets was
+ causing errors during I/O
+ * Implemented XML support in h5dump.
+
+
+Documentation
+=============
+ * A new document summarizing the changes in the library leading up to
+ the current release has been added:
+ HDF5 Software Changes from Release to Release
+ This document is in the Application Developer's Guide and is of
+ particular interest to developers who must keep an application
+ synchronized with the library.
+ * The documentation for the Fortran90 and C++ APIs is linked to the
+ opening page of the Reference Manual. Fortran90 functions are
+ individually referenced from the corresponding C functions through-
+ out the Reference Manual.
+ * User's Guide and Reference Manual were updated to reflect changed
+ function syntax and to fix reported bugs.
+ * Functions that are new at this release were added to the Reference
+ Manual.
+ * Functions that have been removed from the library were removed from
+ the User's Guide and the Reference Manual.
+ * PostScript and PDF versions of the Release 1.4 document set are
+ not available at the time of Release 1.4.0.
+
+
+Platforms Tested
+================
+ AIX 4.3.3.0 (IBM SP powerpc) xlc 3.6.6
+ mpcc_r 3.6.6
+ Cray T3E sn6711 2.0.5.45 Cray Standard C Version 6.4.0.0
+ Cray Fortran Version 3.4.0.2
+ Cray SV1 sn9605 10.0.0.7 Cray Standard C Version 6.4.0.0
+ Cray Fortran Version 3.4.0.2
+ FreeBSD 4.2 gcc 2.95.2
+ g++ 2.95.2
+ HP-UX B.10.20 HP C HP92453-01 A.10.32.30
+ HP-UX B.11.00 HP C HP92453-01 A.11.00.13
+ IRIX 6.5 MIPSpro cc 7.30
+ mpich-1.2.1
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m
+ mpt.1.4.0.2
+ mpich-1.2.1
+ Linux 2.2.16-3smp gcc-2.95.2
+ g++ 2.95.2
+ pgf90 3.1-3
+ mpich-1.2.1
+ OSF1 V4.0 DEC-V5.2-040
+ Digital Fortran 90 V4.1-270
+ SunOS 5.6 WorkShop Compilers 5.0 98/12/15 C 5.0
+ (Solaris 2.6) WorkShop Compilers 5.0 99/10/25 Fortran 90
+ 2.0 Patch 107356-04
+ Workshop Compilers 5.0 98/12/15 C++ 5.0
+ SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
+ (Solaris 2.7) WorkShop Compilers 5.0 99/10/25 Fortran 90
+ 2.0 Patch 107356-04
+ Workshop Compilers 5.0 98/12/15 C++ 5.0
+ mpich-1.2.1
+ SunOS 5.5.1 gcc-2.7.2
+ (Solaris 2.5.1 (x86))
+ TFLOPS r1.0.4 v4.0 mpich-1.2.1 with local changes
+ Windows NT4.0, 2000 (NT5.0) MSVC++ 6.0
+ Windows 98 MSVC++ 6.0
+
+
+Supported Configuration Features Summary
+========================================
+ In the tables below
+ y = tested and supported
+ n = not supported or not working in this release
+ ( ) = footnote appears below table
+
+ Platform C C F90 F90 C++ Shared zlib Tools
+ parallel parallel libraries
+ Solaris2.6 y n y n y y y y
+ Solaris2.7 y y (1) y n y y y y
+ Solarisx86 y n n n n y y y
+ IRIX6.5 y y (1) n n n n y y
+ IRIX64_6.5 64 y y (2) y y n y y y
+ IRIX64_6.5 32 y y (2) n n n y y y
+ HPUX10.20 y n n n n y y y
+ DECOSF y n y n n y y y
+ T3E y y y y n n y y
+ SV1 y n y n n n y y
+ TFLOPS y y (1) n n n n y y (4)
+ AIX-4.3 y y n n n n y n
+ Win2000 y n n n n y y y
+ Win98 y n n n n y y y
+ WinNT y n n n n y y y
+ FreeBSD y n n n y y y y
+ Linux y y (1) y n y y y y
+
+
+ Platform 1.2 static- Thread- SRB GASS STREAM-
+ compatibility exec safe VFD
+ Solaris2.6 y n n n n y
+ Solaris2.7 y n y n n y
+ Solarisx86 y n n n n y
+ IRIX6.5 y n y n n y
+ IRIX64_6.5 64 y n n n n y
+ IRIX64_6.5 32 y n n n n y
+ HPUX10.20 y y n n n y
+ DECOSF y y n n n y
+ T3E y y n n n y
+ SV1 y y n n n y
+ TFLOPS y y n n n n
+ AIX-4.3 y y (3) n n n y
+ Win2000 y y n n n n
+ Win98 y y n n n n
+ WinNT y y n n n n
+ FreeBSD y y n n n y
+ Linux y n y n n y
+
+ Footnotes: (1) Using mpich.
+ (2) Using mpt and mpich.
+ (3) When configured with static-exec enabled, tests fail
+ in serial mode.
+ (4) No HDF4-related tools.
+
+
+Known Problems
+==============
+ * The stream-vfd test uses ip port 10007 for testing. If another
+ application is already using that port address, the test will hang
+ indefinitely and has to be terminated by the kill command. To try the
+ test again, change the port address in test/stream_test.c to one not
+ being used in the host.
+
+ * The --enable-static-exec configure flag fails to compile for Solaris
+ platforms. This is due to the fact that not all of the system
+ libraries on Solaris are available in a static format.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on Linux platforms using the gcc-2.95.2 compiler.
+
+ The --enable-static-exec configure flag also fails to correctly compile
+ on IBM SP2 platform for the serial mode. The parallel mode works fine
+ with this option.
+
+ The compilation fails if configured with --enable-static-exec on IRIX 6.5.
+
+ The executable files in hdf5/bin are dynamic-linked for IRIX64 6.5(64 and
+ n32 modes) and IRIX 6.5, even though they are compiled with static library.
+
+ It is suggested that you don't use this option on these platforms
+ during configuration.
+
+ * testhdf5 got bus error with configuration options --prefix and --with-hdf4
+ on IRIX 6.5.
+
+ * With the gcc 2.95.2 compiler, HDF 5 uses the `-ansi' flag during
+ compilation. The ANSI version of the compiler complains about not being
+ able to handle the `long long' datatype with the warning:
+
+ warning: ANSI C does not support `long long'
+
+ This warning is innocuous and can be safely ignored.
+
+ * SunOS 5.6 with C WorkShop Compilers 4.2: Hyperslab selections will
+ fail if library is compiled using optimization of any level.
+
+ * When building hdf5 tools and applications on windows platform, a linking
+ warning: defaultlib "LIBC" conflicts with use of other libs will appear
+ on debug version when running VC++6.0. This warning doesn't affect building
+ and testing hdf5 applications. We will continue investigating this.
+
+ * h5toh4 converter fails two cases(tstr.h5 and tmany.h5) for release dll
+ version on windows 2000 and NT. The reason is possibly due to Windows NT
+ DLL convention on freeing memory. It seems that memory cannot be freed
+ across library or DLL. It is still under investigation.
+
+ * HDF-GASS testings and testhdf5 in the test directory will get bus error if
+ the configured with --with-gass.
+
+ * HDF-SRB testing got segmentation error on Solaris 2.7.
+
+ * The Stream VFD was not tested yet under Windows.
+ It is not supported in the TFLOPS machine.
+
+ * Shared library option is broken for IBM SP and some Origin 2000 platforms.
+ One needs to run ./configure with '--disable-shared --enable-static'.
+
+ * The ./dsets tests failed in the TFLOPS machine if the test program,
+ dsets.c, is compiled with the -O option. The hdf5 library still works
+ correctly with the -O option. The test program works fine if it is
+ compiled with -O1 or -O0. Only -O (same as -O2) causes the test
+ program to fail.
+
+ * Certain platforms give false negatives when testing h5ls:
+ - Solaris x86 2.5.1, Cray T3E and Cray J90 give errors during testing
+ when displaying object references in certain files. These are benign
+ differences due to the difference in sizes of the objects created on
+ those platforms. h5ls appears to be dumping object references
+ correctly.
+ - Cray J90 give errors during testing when displaying
+ some floating-point values. These are benign differences due to the
+ different precision in the values displayed and h5ls appears to be
+ dumping floating-point numbers correctly.
+
+ * Before building HDF5 F90 Library from source on Crays (T3E and SV1)
+ replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
+ subdirectory in the top level directory with the Cray-specific files from
+ the ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/hdf5-1.4.0/src/crayf90/ directory.
+
+ * The h4toh5 utility produces images that do not correctly conform
+ to the HDF5 Image and Palette Specification.
+
+ http://hdf.ncsa.uiuc.edu/HDF5/doc/ImageSpec.html
+
+ Several required HDF5 attributes are omitted, and the dataspace
+ is reversed (i.e., the ht. and width of the image dataset is
+ incorrectly described.) For more information, please see:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/H5Image/ImageDetails.htm
+
+%%%%1.2.2%%%% Release Information for hdf5-1.2.2 (6/23/00)
+
+7. Release Information for hdf5-1.2.2
+=================================================================
+INTRODUCTION
+
+This document describes the differences between HDF5-1.2.1 and
+HDF5-1.2.2, and contains information on the platforms where HDF5-1.2.2
+was tested and known problems in HDF5-1.2.2.
+
+The HDF5 documentation can be found on the NCSA ftp server
+(ftp.ncsa.uiuc.edu) in the directory:
+
+ /HDF/HDF5/docs/
+
+For more information look at the HDF5 home page at:
+
+ http://hdf.ncsa.uiuc.edu/HDF5/
+
+If you have any questions or comments, please send them to:
+
+ hdfhelp@ncsa.uiuc.edu
+
+
+CONTENTS
+
+- Features Added since HDF5-1.2.1
+- Bug Fixes since HDF5-1.2.1
+- Known Problems
+- Platforms Tested
+
+
+Features Added since HDF5-1.2.1
+===============================
+ * Added internal free-lists to reduce memory required by the library and
+ H5garbage_collect API function.
+ * h5dump displays opaque and bitfield types.
+ * New features added to snapshots. Use 'snapshot help' to see a
+ complete list of features.
+ * Improved configure to detect if MPIO routines are available when
+ parallel mode is requested.
+
+Bug Fixes since HDF5-1.2.1
+==========================
+ * h5dump correctly displays compound datatypes, including simple and
+ nested compound types.
+ * h5dump correctly displays the committed copy of predefined types.
+ * Corrected an error in h5toh4 which did not convert the 32-bit
+ int from HDF5 to HDF4 correctly for the T3E platform.
+ * Corrected a floating point number conversion error for the
+ Cray J90 platform. The error did not convert the value 0.0
+ correctly.
+ * Fixed error in H5Giterate which was not updating the "index" parameter
+ correctly.
+ * Fixed error in hyperslab iteration which was not walking through the
+ correct sequence of array elements if hyperslabs were staggered in a
+ certain pattern.
+ * Fixed several other problems in hyperslab iteration code.
+ * Fixed another H5Giterate bug which caused groups with large numbers
+ of objects in them to misbehave when the callback function returned
+ non-zero values.
+ * Changed return type of H5Aiterate and H5A_operator_t typedef to be
+ herr_t, to align them with the dataset and group iterator functions.
+ * Changed H5Screate_simple and H5Sset_extent_simple to not allow dimensions
+ of size 0 without the same dimension being unlimited.
+ * Improved metadata hashing & caching algorithms to avoid
+ many hash flushes and also removed some redundant I/O when moving metadata
+ blocks in the file.
+ * The libhdf5.settings file shows the correct machine byte-sex.
+ * The "struct(opt)" type conversion function which gets invoked for
+ certain compound datatype conversions was fixed for nested compound
+ types. This required a small change in the datatype conversion
+ function API.
+
+Known Problems
+==============
+
+o SunOS 5.6 with C WorkShop Compilers 4.2: hyperslab selections will
+ fail if library is compiled using optimization of any level.
+o TFLOPS: dsets test fails if compiled with optimization turned on.
+o J90: tools fail to display data for the datasets with a compound datatype.
+
+Platforms Tested
+================
+
+ AIX 4.3.3 (IBM SP) 3.6.6 | binaries
+ mpicc using mpich 1.1.2 | are not
+ mpicc_r using IBM MPI-IO prototype | available
+ AIX 4.3.2.0 (IBM SP) xlc 5.0.1.0
+ Cray J90 10.0.0.7 cc 6.3.0.2
+ Cray T3E 2.0.5.29 cc 6.3.0.2
+ mpt.1.3
+ FreeBSD 4.0 gcc 2.95.2
+ HP-UX B.10.20 HP C HP92453-01 A.10.32
+ HP-UX B.11.00 HP92453-01 A.11.00.13 HP C Compiler
+ (static library only, h5toh4 tool is not available)
+ IRIX 6.5 MIPSpro cc 7.30
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m
+ mpt.1.4
+
+ Linux 2.2.10 SMP gcc 2.95.1
+ mpicc(gcc-2.95.1)
+ gcc (egcs-2.91.66)
+ mpicc (egcs-2.91.66)
+ Linux 2.2.16 (RedHat 6.2) gcc 2.95.2
+
+ OSF1 V4.0 DEC-V5.2-040
+ SunOS 5.6 cc WorkShop Compilers 5.0 no optimization
+ SunOS 5.7 cc WorkShop Compilers 5.0
+ SolarisX86 SunOS 5.5.1 gcc version 2.7.2 with --disable-hsizet
+ TFLOPS 3.2.1 pgcc Rel 3.1-3i
+ mpich-1.1.2 with local changes
+ Windows NT4.0 sp5 MSVC++ 6.0
+ Windows 98 MSVC++ 6.0
+ Windows 2000 MSVC++ 6.0
+
+
+
+%%%%1.2.1%%%% Release Information for hdf5-1.2.1
+
+6. Release Information for hdf5-1.2.1
+================================================================
+
+
+Bug fixes since HDF5-1.2.0
+==========================
+
+Configuration
+-------------
+
+ * The hdf5.h include file was fixed to allow the HDF5 Library to be compiled
+ with other libraries/applications that use GNU autoconf.
+ * Configuration for parallel HDF5 was improved. Configure now attempts to
+ link with libmpi.a and/or libmpio.a as the MPI libraries by default.
+ It also uses "mpirun" to launch MPI tests by default. It tests to
+ link MPIO routines during the configuration stage, rather than failing
+ later as before. One can just do "./configure --enable-parallel"
+ if the MPI library is in the system library.
+
+Library
+-------
+
+ * Error was fixed which was not allowing dataset region references to have
+ their regions retrieved correctly.
+ * Added internal free-lists to reduce memory required by the library and
+ H5garbage_collect API function
+ * Fixed error in H5Giterate which was not updating the "index" parameter
+ correctly.
+ * Fixed error in hyperslab iteration which was not walking through the
+ correct sequence of array elements if hyperslabs were staggered in a
+ certain pattern
+ * Fixed several other problems in hyperslab iteration code.
+
+Tests
+------
+
+ * Added additional tests for group and attribute iteration.
+ * Added additional test for staggered hyperslab iteration.
+ * Added additional test for random 5-D hyperslab selection.
+
+Tools
+------
+
+ * Added an option, -V, to show the version information of h5dump.
+ * Fixed a core dumping bug of h5toh4 when executed on platforms like
+ TFLOPS.
+ * The test script for h5toh4 used to not able to detect the hdp
+ dumper command was not valid. It now detects and reports the
+ failure of hdp execution.
+
+Documentation
+-------------
+
+ * User's Guide and Reference Manual were updated.
+ See doc/html/PSandPDF/index.html for more details.
+
+
+Platforms Tested:
+================
+Note: Due to the nature of bug fixes, only static versions of the library and tools were tested.
+
+
+ AIX 4.3.2 (IBM SP) 3.6.6
+ Cray T3E 2.0.4.81 cc 6.3.0.1
+ mpt.1.3
+ FreeBSD 3.3-STABLE gcc 2.95.2
+ HP-UX B.10.20 HP C HP92453-01 A.10.32
+ IRIX 6.5 MIPSpro cc 7.30
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m
+ mpt.1.3 (SGI MPI 3.2.0.0)
+
+ Linux 2.2.10 SuSE egcs-2.91.66 configured with
+ (i686-pc-linux-gnu) --disable-hsizet
+ mpich-1.2.0 egcs-2.91.66 19990314/Linux
+
+ OSF1 V4.0 DEC-V5.2-040
+ SunOS 5.6 cc WorkShop Compilers 4.2 no optimization
+ SunOS 5.7 cc WorkShop Compilers 5.0
+ TFLOPS 2.8 cicc (pgcc Rel 3.0-5i)
+ mpich-1.1.2 with local changes
+ Windows NT4.0 sp5 MSVC++ 6.0
+
+Known Problems:
+==============
+
+o SunOS 5.6 with C WorkShop Compilers 4.2: Hyperslab selections will
+ fail if library is compiled using optimization of any level.
+
+
+
+%%%%1.2.0%%%% Release Information for hdf5-1.2.0
+
+5. Release Information for hdf5-1.2.0
+===================================================================
+
+A. Platforms Supported
+ -------------------
+
+Operating systems listed below with compiler information and MPI library, if
+applicable, are systems that HDF5 1.2.0 was tested on.
+
+ Compiler & libraries
+ Platform Information Comment
+ -------- ---------- --------
+
+ AIX 4.3.2 (IBM SP) 3.6.6
+
+ Cray J90 10.0.0.6 cc 6.3.0.0
+
+ Cray T3E 2.0.4.61 cc 6.2.1.0
+ mpt.1.3
+
+ FreeBSD 3.2 gcc 2.95.1
+
+ HP-UX B.10.20 HP C HP92453-01 A.10.32
+ gcc 2.8.1
+
+ IRIX 6.5 MIPSpro cc 7.30
+
+ IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m
+ mpt.1.3 (SGI MPI 3.2.0.0)
+
+ Linux 2.2.10 egcs-2.91.66 configured with
+ --disable-hsizet
+ lbraries: glibc2
+
+ OSF1 V4.0 DEC-V5.2-040
+
+ SunOS 5.6 cc WorkShop Compilers 4.2
+ no optimization
+ gcc 2.8.1
+
+ SunOS 5.7 cc WorkShop Compilers 5.0
+ gcc 2.8.1
+
+ TFLOPS 2.7.1 cicc (pgcc Rel 3.0-4i)
+ mpich-1.1.2 with local changes
+
+ Windows NT4.0 intel MSVC++ 5.0 and 6.0
+
+ Windows NT alpha 4.0 MSVC++ 5.0
+
+ Windows 98 MSVC++ 5.0
+
+
+B. Known Problems
+ --------------
+
+* NT alpha 4.0
+ Dumper utiliy h5dump fails if linked with DLL.
+
+* SunOS 5.6 with C WorkShop Compilers 4.2
+ Hyperslab selections will fail if library is compiled using optimization
+ of any level.
+
+
+C. Changes Since Version 1.0.1
+ ---------------------------
+
+1. Documentation
+ -------------
+
+* More examples
+
+* Updated user guide, reference manual, and format specification.
+
+* Self-contained documentation for installations isolated from the
+ Internet.
+
+* HDF5 Tutorial was added to the documentation
+
+2. Configuration
+ -------------
+
+* Better detection and support for MPI-IO.
+
+* Recognition of compilers with known code generation problems.
+
+* Support for various compilers on a single architecture (e.g., the
+ native compiler and the GNU compilers).
+
+* Ability to build from read-only media and with different compilers
+ and/or options concurrently.
+
+* Added a libhdf5.settings file which summarizes the configuration
+ information and is installed along with the library.
+
+* Builds a shared library on most systems that support it.
+
+* Support for Cray T3E, J90 and Windows/NT.
+
+3. Debugging
+ ---------
+
+* Improved control and redirection of debugging and tracing messages.
+
+4. Datatypes
+ ---------
+
+* Optimizations to compound datatype conversions and I/O operations.
+
+* Added nearly 100 optimized conversion functions for native datatypes
+ including support for non-aligned data.
+
+* Added support for bitfield, opaque, and enumeration types.
+
+* Added distinctions between signed and unsigned char types to the
+ list of predefined native hdf5 datatypes.
+
+* Added HDF5 type definitions for C9x types like int32_t.
+
+* Application-defined type conversion functions can handle non-packed
+ data.
+
+* Changed the H5Tunregister() function to use wildcards when matching
+ conversion functions. H5Tregister_hard() and H5Tregister_soft()
+ were combined into H5Tregister().
+
+* Support for variable-length datatypes (arrays of varying length per
+ dataset element). Variable length strings currently supported only
+ as variable length arrays of 1-byte integers.
+
+5. Dataspaces
+ ----------
+
+* New query functions for selections.
+
+* I/O operations bypass the stripmining loop and go directly to
+ storage for certain contiguous selections in the absence of type
+ conversions. In other cases the stripmining buffers are used more
+ effectively.
+
+* Reduced the number of I/O requests under certain circumstances,
+ improving performance on systems with high I/O latency.
+
+6. Persistent Pointers
+ -------------------
+
+* Object (serial and parallel) and dataset region (serial only)
+ references are implemented.
+
+7. Parallel Support
+ ----------------
+
+* Improved parallel I/O performance.
+
+* Supported new platforms: Cray T3E, Linux, DEC Cluster.
+
+* Use vendor supported version of MPIO on SGI O2K and Cray platforms.
+
+* Improved the algorithm that translates an HDF5 hyperslab selection
+ into an MPI type for better collective I/O performance.
+
+8. New API functions
+ -----------------
+
+ a. Property List Interface:
+ ------------------------
+
+ H5Pset_xfer - set data transfer properties
+ H5Pset_preserve - set dataset transfer property list status
+ H5Pget_preserve - get dataset transfer property list status
+ H5Pset_hyper_cache - indicates whether to cache hyperslab blocks during I/O
+ H5Pget_hyper_cache - returns information regarding the caching of
+ hyperslab blocks during I/O
+ H5Pget_btree_ratios - sets B-tree split ratios for a dataset
+ transfer property list
+ H5Pset_btree_ratios - gets B-tree split ratios for a dataset
+ transfer property list
+ H5Pset_vlen_mem_manager - sets the memory manager for variable-length
+ datatype allocation
+ H5Pget_vlen_mem_manager - sets the memory manager for variable-length
+ datatype allocation
+
+ b. Dataset Interface:
+ ------------------
+
+ H5Diterate - iterate over all selected elements in a dataspace
+ H5Dget_storage_size - return the amount of storage required for a dataset
+ H5Dvlen_reclaim - reclaim VL datatype memory buffers
+
+ c. Dataspace Interface:
+ --------------------
+ H5Sget_select_hyper_nblocks - get number of hyperslab blocks
+ H5Sget_select_hyper_blocklist - get the list of hyperslab blocks
+ currently selected
+ H5Sget_select_elem_npoints - get the number of element points
+ in the current selection
+ H5Sget_select_elem_pointlist - get the list of element points
+ currently selected
+ H5Sget_select_bounds - gets the bounding box containing
+ the current selection
+
+ d. Datatype Interface:
+ -------------------
+ H5Tget_super - return the base datatype from which a
+ datatype is derived
+ H5Tvlen_create - creates a new variable-length dataype
+ H5Tenum_create - creates a new enumeration datatype
+ H5Tenum_insert - inserts a new enumeration datatype member
+ H5Tenum_nameof - returns the symbol name corresponding to a
+ specified member of an enumeration datatype
+ H5Tvalueof - return the value corresponding to a
+ specified member of an enumeration datatype
+ H5Tget_member_value - return the value of an enumeration datatype member
+ H5Tset_tag - tags an opaque datatype
+ H5Tget_tag - gets the tag associated with an opaque datatype
+
+ e. Identifier Interface:
+ ---------------------
+ H5Iget_type - retrieve the type of an object
+
+ f. Reference Interface:
+ --------------------
+ H5Rcreate - creates a reference
+ H5Rdereference - open the HDF5 object referenced
+ H5Rget_region - retrieve a dataspace with the specified region selected
+ H5Rget_object_type - retrieve the type of object that an
+ object reference points to
+
+ g. Ragged Arrays (alpha) (names of those API functions were changed):
+ ------------------------------------------------------------------
+ H5RAcreate - create a new ragged array (old name was H5Rcreate)
+ H5RAopen - open an existing array (old name was H5Ropen)
+ H5RAclose - close a ragged array (old name was H5Rclose)
+ H5RAwrite - write to an array (old name was H5Rwrite)
+ H5RAread - read from an array (old name was H5Rread)
+
+
+9. Tools
+ -----
+
+* Enhancements to the h5ls tool including the ability to list objects
+ from more than one file, to display raw hexadecimal data, to
+ show file addresses for raw data, to format output more reasonably,
+ to show object attributes, and to perform a recursive listing,
+
+* Enhancements to h5dump: support new data types added since previous
+ versions.
+
+* h5toh4: An hdf5 to hdf4 converter.
+
+
+
+%%%%1.0.1%%%% Release Information for hdf5-1.0.1
+
+4. Changes from Release 1.0.0 to Release 1.0.1
+=====================================================================
+
+* [Improvement]: configure sets up the Makefile in the parallel tests
+ suit (testpar/) correctly.
+
+* [Bug-Fix]: Configure failed for all IRIX versions other than 6.3.
+ It now configures correctly for all IRIX 6.x version.
+
+* Released Parallel HDF5
+
+ Supported Features:
+ ------------------
+
+ HDF5 files are accessed according to the communicator and INFO
+ object defined in the property list set by H5Pset_mpi.
+
+ Independent read and write accesses to fixed and extendable dimension
+ datasets.
+
+ Collective read and write accesses to fixed dimension datasets.
+
+ Supported Platforms:
+ -------------------
+
+ Intel Red
+ IBM SP2
+ SGI Origin 2000
+
+ Changes In This Release:
+ -----------------------
+
+ o Support of Access to Extendable Dimension Datasets.
+ Extendable dimension datasets must use chunked storage methods.
+ A new function, H5Dextend, is created to extend the current
+ dimensions of a dataset. The current release requires the
+ MPI application must make a collective call to extend the
+ dimensions of an extendable dataset before writing to the
+ newly extended area. (The serial does not require the
+ call of H5Dextend. The dimensions of an extendable
+ dataset is increased when data is written to beyond the
+ current dimensions but within the maximum dimensions.)
+ The required collective call of H5Dextend may be relaxed
+ in future release.
+
+ This release only support independent read and write accesses
+ to extendable datasets. Collective accesses to extendable
+ datasets will be implemented in future releases.
+
+ o Collective access to fixed dimension datasets.
+ Collective access to a dataset can be specified in the transfer
+ property list argument in H5Dread and H5Dwrite. The current
+ release supports collective access to fixed dimension datasets.
+ Collective access to extendable datasets will be implemented in
+ future releases.
+
+ o HDF5 files are opened according to Communicator and INFO object.
+ H5Dopen now records the communicator and INFO setup by H5Pset_mmpi
+ and pass them to the corresponding MPIO open file calls for
+ processing.
+
+ o This release has been tested on IBM SP2, Intel Red and SGI Origin 2000
+ systems. It uses the ROMIO version of MPIO interface for parallel
+ I/O supports.
+
+
+
+%%%%1.0.0%%%% Release Information for hdf5-1.0.0
+
+3. Changes from the Beta 1.0.0 Release to Release 1.0.0
+====================================================================
+
+* Added fill values for datasets. For contiguous datasets fill value
+ performance may be quite poor since the fill value is written to the
+ entire dataset when the dataset is created. This will be remedied
+ in a future version. Chunked datasets using fill values do not
+ incur any additional overhead. See H5Pset_fill_value().
+
+* Multiple hdf5 files can be "mounted" on one another to create a
+ larger virtual file. See H5Fmount().
+
+* Object names can be removed or changed but objects are never
+ actually removed from the file yet. See H5Gunlink() and H5Gmove().
+
+* Added a tuning mechanism for B-trees to insure that sequential
+ writes to chunked datasets use less overhead. See H5Pset_btree_ratios().
+
+* Various optimizations and bug fixes.
+
+
+
+%%%%1.0.0 Beta%%%% Release Information for hdf5-1.0.0 Beta
+
+2. Changes from the Second Alpha 1.0.0 Release to the Beta 1.0.0 Release
+=========================================================================
+
+* Strided hyperslab selections in dataspaces now working.
+
+* The compression API has been replaced with a more general filter
+ API. See doc/html/Filters.html for details.
+
+* Alpha-quality 2d ragged arrays are implemented as a layer built on
+ top of other hdf5 objects. The API and storage format will almost
+ certainly change.
+
+* More debugging support including API tracing. See Debugging.html.
+
+* C and Fortran style 8-bit fixed-length character string types are
+ supported with space or null padding or null termination and
+ translations between them.
+
+* Added function H5Fflush() to write all cached data immediately to
+ the file.
+
+* Datasets maintain a modification time which can be retrieved with
+ H5Gstat().
+
+* The h5ls tool can display much more information, including all the
+ values of a dataset.
+
+
+
+%%%%1.0.0 Alpha 2%%%% Release Information for hdf5-1.0.0 Alpha 2
+
+1. Changes from the First Alpha 1.0.0 Release to
+ the Second Alpha 1.0.0 Release
+=====================================================================
+
+* Two of the packages have been renamed. The data space API has been
+ renamed from `H5P' to `H5S' and the property list (template) API has
+ been renamed from `H5C' to `H5P'.
+
+* The new attribute API `H5A' has been added. An attribute is a small
+ dataset which can be attached to some other object (for instance, a
+ 4x4 transformation matrix attached to a 3-dimensional dataset, or an
+ English abstract attached to a group).
+
+* The error handling API `H5E' has been completed. By default, when an
+ API function returns failure an error stack is displayed on the
+ standard error stream. The H5Eset_auto() controls the automatic
+ printing and H5E_BEGIN_TRY/H5E_END_TRY macros can temporarily
+ disable the automatic error printing.
+
+* Support for large files and datasets (>2GB) has been added. There
+ is an html document that describes how it works. Some of the types
+ for function arguments have changed to support this: all arguments
+ pertaining to sizes of memory objects are `size_t' and all arguments
+ pertaining to file sizes are `hsize_t'.
+
+* More data type conversions have been added although none of them are
+ fine tuned for performance. There are new converters from integer
+ to integer and float to float, but not between integers and floating
+ points. A bug has been fixed in the converter between compound
+ types.
+
+* The numbered types have been removed from the API: int8, uint8,
+ int16, uint16, int32, uint32, int64, uint64, float32, and float64.
+ Use standard C types instead. Similarly, the numbered types were
+ removed from the H5T_NATIVE_* architecture; use unnumbered types
+ which correspond to the standard C types like H5T_NATIVE_INT.
+
+* More debugging support was added. If tracing is enabled at
+ configuration time (the default) and the HDF5_TRACE environment
+ variable is set to a file descriptor then all API calls will emit
+ the function name, argument names and values, and return value on
+ that file number. There is an html document that describes this.
+ If appropriate debugging options are enabled at configuration time,
+ some packages will display performance information on stderr.
+
+* Data types can be stored in the file as independent objects and
+ multiple datasets can share a data type.
+
+* The raw data I/O stream has been implemented and the application can
+ control meta and raw data caches, so I/O performance should be
+ improved from the first alpha release.
+
+* Group and attribute query functions have been implemented so it is
+ now possible to find out the contents of a file with no prior
+ knowledge.
+
+* External raw data storage allows datasets to be written by other
+ applications or I/O libraries and described and accessed through
+ HDF5.
+
+* Hard and soft (symbolic) links are implemented which allow groups to
+ share objects. Dangling and recursive symbolic links are supported.
+
+* User-defined data compression is implemented although we may
+ generalize the interface to allow arbitrary user-defined filters
+ which can be used for compression, checksums, encryption,
+ performance monitoring, etc. The publicly-available `deflate'
+ method is predefined if the GNU libz.a can be found at configuration
+ time.
+
+* The configuration scripts have been modified to make it easier to
+ build debugging vs. production versions of the library.
+
+* The library automatically checks that the application was compiled
+ with the correct version of header files.
+
+
+ Parallel HDF5 Changes
+
+* Parallel support for fixed dimension datasets with contiguous or
+ chunked storages. Also, support unlimited dimension datasets which
+ must use chunk storage. No parallel support for compressed datasets.
+
+* Collective data transfer for H5Dread/H5Dwrite. Collective access
+ support for datasets with contiguous storage only, thus only fixed
+ dimension datasets for now.
+
+* H5Pset_mpi and H5Pget_mpi no longer have the access_mode
+ argument. It is taken over by the data-transfer property list
+ of H5Dread/H5Dwrite.
+
+* New functions H5Pset_xfer and H5Pget_xfer to handle the
+ specification of independent or collective data transfer_mode
+ in the dataset transfer properties list. The properties
+ list can be used to specify data transfer mode in the H5Dwrite
+ and H5Dread function calls.
+
+* Added parallel support for datasets with chunked storage layout.
+ When a dataset is extend in a PHDF5 file, all processes that open
+ the file must collectively call H5Dextend with identical new dimension
+ sizes.
+
+
+ LIST OF API FUNCTIONS
+
+The following functions are implemented. Errors are returned if an
+attempt is made to use some feature which is not implemented and
+printing the error stack will show `not implemented yet'.
+
+Library
+ H5check - check that lib version matches header version
+ H5open - initialize library (happens automatically)
+ H5close - shut down the library (happens automatically)
+ H5dont_atexit - don't call H5close on exit
+ H5get_libversion - retrieve library version info
+ H5check_version - check for specific library version
+
+Property Lists
+ H5Pclose - release template resources
+ H5Pcopy - copy a template
+ H5Pcreate - create a new template
+ H5Pget_chunk - get chunked storage properties
+ H5Pset_chunk - set chunked storage properties
+ H5Pget_class - get template class
+ H5Pget_istore_k - get chunked storage properties
+ H5Pset_istore_k - set chunked storage properties
+ H5Pget_layout - get raw data layout class
+ H5Pset_layout - set raw data layout class
+ H5Pget_sizes - get address and size sizes
+ H5Pset_sizes - set address and size sizes
+ H5Pget_sym_k - get symbol table storage properties
+ H5Pset_sym_k - set symbol table storage properties
+ H5Pget_userblock - get user-block size
+ H5Pset_userblock - set user-block size
+ H5Pget_version - get file version numbers
+ H5Pget_alignment - get data alignment properties
+ H5Pset_alignment - set data alignment properties
+ H5Pget_external_count- get count of external data files
+ H5Pget_external - get information about an external data file
+ H5Pset_external - add a new external data file to the list
+ H5Pget_driver - get low-level file driver class
+ H5Pget_stdio - get properties for stdio low-level driver
+ H5Pset_stdio - set properties for stdio low-level driver
+ H5Pget_sec2 - get properties for sec2 low-level driver
+ H5Pset_sec2 - set properties for sec2 low-level driver
+ H5Pget_core - get properties for core low-level driver
+ H5Pset_core - set properties for core low-level driver
+ H5Pget_split - get properties for split low-level driver
+ H5Pset_split - set properties for split low-level driver
+ H5P_get_family - get properties for family low-level driver
+ H5P_set_family - set properties for family low-level driver
+ H5Pget_cache - get meta- and raw-data caching properties
+ H5Pset_cache - set meta- and raw-data caching properties
+ H5Pget_buffer - get raw-data I/O pipe buffer properties
+ H5Pset_buffer - set raw-data I/O pipe buffer properties
+ H5Pget_preserve - get type conversion preservation properties
+ H5Pset_preserve - set type conversion preservation properties
+ H5Pget_nfilters - get number of raw data filters
+ H5Pget_filter - get raw data filter properties
+ H5Pset_filter - set raw data filter properties
+ H5Pset_deflate - set deflate compression filter properties
+ H5Pget_mpi - get MPI-IO properties
+ H5Pset_mpi - set MPI-IO properties
+ H5Pget_xfer - get data transfer properties
+ + H5Pset_xfer - set data transfer properties
+ + H5Pset_preserve - set dataset transfer property list status
+ + H5Pget_preserve - get dataset transfer property list status
+ + H5Pset_hyper_cache - indicates whether to cache hyperslab blocks during I/O
+ + H5Pget_hyper_cache - returns information regarding the caching of
+ hyperslab blocks during I/O
+ + H5Pget_btree_ratios - sets B-tree split ratios for a dataset
+ transfer property list
+ + H5Pset_btree_ratios - gets B-tree split ratios for a dataset
+ transfer property list
+ + H5Pset_vlen_mem_manager - sets the memory manager for variable-length
+ datatype allocation
+ + H5Pget_vlen_mem_manager - sets the memory manager for variable-length
+ datatype allocation
+
+Datasets
+ H5Dclose - release dataset resources
+ H5Dcreate - create a new dataset
+ H5Dget_space - get data space
+ H5Dget_type - get data type
+ H5Dget_create_plist - get dataset creation properties
+ H5Dopen - open an existing dataset
+ H5Dread - read raw data
+ H5Dwrite - write raw data
+ H5Dextend - extend a dataset
+ + H5Diterate - iterate over all selected elements in a dataspace
+ + H5Dget_storage_size - return the amount of storage required for a dataset
+ + H5Dvlen_reclaim - reclaim VL datatype memory buffers
+
+Attributes
+ H5Acreate - create a new attribute
+ H5Aopen_name - open an attribute by name
+ H5Aopen_idx - open an attribute by number
+ H5Awrite - write values into an attribute
+ H5Aread - read values from an attribute
+ H5Aget_space - get attribute data space
+ H5Aget_type - get attribute data type
+ H5Aget_name - get attribute name
+ H5Anum_attrs - return the number of attributes for an object
+ H5Aiterate - iterate over an object's attributes
+ H5Adelete - delete an attribute
+ H5Aclose - close an attribute
+
+Errors
+ H5Eclear - clear the error stack
+ H5Eprint - print an error stack
+ H5Eget_auto - get automatic error reporting settings
+ H5Eset_auto - set automatic error reporting
+ H5Ewalk - iterate over the error stack
+ H5Ewalk_cb - the default error stack iterator function
+ H5Eget_major - get the message for the major error number
+ H5Eget_minor - get the message for the minor error number
+
+Files
+ H5Fclose - close a file and release resources
+ H5Fcreate - create a new file
+ H5Fget_create_plist - get file creation property list
+ H5Fget_access_plist - get file access property list
+ H5Fis_hdf5 - determine if a file is an hdf5 file
+ H5Fopen - open an existing file
+ H5Freopen - reopen an HDF5 file
+ H5Fmount - mount a file
+ H5Funmount - unmount a file
+ H5Fflush - flush all buffers associated with a file to disk
+
+Groups
+ H5Gclose - close a group and release resources
+ H5Gcreate - create a new group
+ H5Gopen - open an existing group
+ H5Giterate - iterate over the contents of a group
+ H5Gmove - change the name of some object
+ H5Glink - create a hard or soft link to an object
+ H5Gunlink - break the link between a name and an object
+ H5Gget_objinfo - get information about a group entry
+ H5Gget_linkval - get the value of a soft link
+ H5Gget_comment - get the comment string for an object
+ H5Gset_comment - set the comment string for an object
+
+Dataspaces
+ H5Screate - create a new data space
+ H5Scopy - copy a data space
+ H5Sclose - release data space
+ H5Screate_simple - create a new simple data space
+ H5Sset_space - set simple data space extents
+ H5Sis_simple - determine if data space is simple
+ H5Sset_extent_simple - set simple data space dimensionality and size
+ H5Sget_simple_extent_npoints - get number of points in simple extent
+ H5Sget_simple_extent_ndims - get simple data space dimensionality
+ H5Sget_simple_extent_dims - get simple data space size
+ H5Sget_simple_extent_type - get type of simple extent
+ H5Sset_extent_none - reset extent to be empty
+ H5Sextent_copy - copy the extent from one data space to another
+ H5Sget_select_npoints - get number of points selected for I/O
+ H5Sselect_hyperslab - set hyperslab dataspace selection
+ H5Sselect_elements - set element sequence dataspace selection
+ H5Sselect_all - select entire extent for I/O
+ H5Sselect_none - deselect all elements of extent
+ H5Soffset_simple - set selection offset
+ H5Sselect_valid - determine if selection is valid for extent
+ + H5Sget_select_hyper_nblocks - get number of hyperslab blocks
+ + H5Sget_select_hyper_blocklist - get the list of hyperslab blocks
+ currently selected
+ + H5Sget_select_elem_npoints - get the number of element points
+ in the current selection
+ + H5Sget_select_elem_pointlist - get the list of element points
+ currently selected
+ + H5Sget_select_bounds - gets the bounding box containing
+ the current selection
+
+Datatypes
+ H5Tclose - release data type resources
+ H5Topen - open a named data type
+ H5Tcommit - name a data type
+ H5Tcommitted - determine if a type is named
+ H5Tcopy - copy a data type
+ H5Tcreate - create a new data type
+ H5Tequal - compare two data types
+ H5Tlock - lock type to prevent changes
+ H5Tfind - find a data type conversion function
+ H5Tconvert - convert data from one type to another
+ H5Tregister - register a conversion function
+ H5Tunregister - remove a conversion function
+ H5Tget_overflow - get function that handles overflow conv. cases
+ H5Tset_overflow - set function to handle overflow conversion cases
+ H5Tget_class - get data type class
+ H5Tget_cset - get character set
+ H5Tget_ebias - get exponent bias
+ H5Tget_fields - get floating point fields
+ H5Tget_inpad - get inter-field padding
+ H5Tget_member_dims - get struct member dimensions
+ H5Tget_member_name - get struct member name
+ H5Tget_member_offset - get struct member byte offset
+ H5Tget_member_type - get struct member type
+ H5Tget_nmembers - get number of struct members
+ H5Tget_norm - get floating point normalization
+ H5Tget_offset - get bit offset within type
+ H5Tget_order - get byte order
+ H5Tget_pad - get padding type
+ H5Tget_precision - get precision in bits
+ H5Tget_sign - get integer sign type
+ H5Tget_size - get size in bytes
+ H5Tget_strpad - get string padding
+ H5Tinsert - insert scalar struct member
+ H5Tinsert_array - insert array struct member
+ H5Tpack - pack struct members
+ H5Tset_cset - set character set
+ H5Tset_ebias - set exponent bias
+ H5Tset_fields - set floating point fields
+ H5Tset_inpad - set inter-field padding
+ H5Tset_norm - set floating point normalization
+ H5Tset_offset - set bit offset within type
+ H5Tset_order - set byte order
+ H5Tset_pad - set padding type
+ H5Tset_precision - set precision in bits
+ H5Tset_sign - set integer sign type
+ H5Tset_size - set size in bytes
+ H5Tset_strpad - set string padding
+ + H5Tget_super - return the base datatype from which a
+ datatype is derived
+ + H5Tvlen_create - creates a new variable-length dataype
+ + H5Tenum_create - creates a new enumeration datatype
+ + H5Tenum_insert - inserts a new enumeration datatype member
+ + H5Tenum_nameof - returns the symbol name corresponding to a
+ specified member of an enumeration datatype
+ + H5Tvalueof - return the value corresponding to a
+ specified member of an enumeration datatype
+ + H5Tget_member_value - return the value of an enumeration datatype member
+ + H5Tset_tag - tags an opaque datatype
+ + H5Tget_tag - gets the tag associated with an opaque datatype
+
+ - H5Tregister_hard - register specific type conversion function
+ - H5Tregister_soft - register general type conversion function
+
+Filters
+ H5Tregister - register a conversion function
+
+Compression
+ H5Zregister - register new compression and uncompression
+ functions for a method specified by a method number
+
+Identifiers
+ + H5Iget_type - retrieve the type of an object
+
+References
+ + H5Rcreate - creates a reference
+ + H5Rdereference - open the HDF5 object referenced
+ + H5Rget_region - retrieve a dataspace with the specified region selected
+ + H5Rget_object_type - retrieve the type of object that an
+ object reference points to
+
+Ragged Arrays (alpha)
+ H5RAcreate - create a new ragged array
+ H5RAopen - open an existing array
+ H5RAclose - close a ragged array
+ H5RAwrite - write to an array
+ H5RAread - read from an array
+
+
diff --git a/release_docs/HISTORY-1_0-1_8_0_rc3.txt b/release_docs/HISTORY-1_0-1_8_0_rc3.txt
deleted file mode 100644
index 3669f4d..0000000
--- a/release_docs/HISTORY-1_0-1_8_0_rc3.txt
+++ /dev/null
@@ -1,8985 +0,0 @@
-HDF5 HISTORY
-============
-This file contains history of the HDF5 libraries releases starting with
-HDF5-1.0.0 and ending with HDF5-1.8.0-rc3 (the state of the code before
-the HDF5 1.8.0 release).
-
-CONTENTS
-
-22. Changes from 1.6.0 to 1.8.0-rc3
-21. Release Information for hdf5-1.6.7
-20. Release Information for hdf5-1.6.6
-19. Release Information for hdf5-1.6.5
-18. Release Information for hdf5-1.6.4
-17. Release Information for hdf5-1.6.3
-16. Release Information for hdf5-1.6.2
-15. Release Information for hdf5-1.6.1
-14. Release Information for hdf5-1.6.0
-13. Release Information for hdf5-1.4.5
-12. Release Information for hdf5-1.4.4
-11. Release Information for hdf5-1.4.3
-10. Release Information for hdf5-1.4.2
-9. Release Information for hdf5-1.4.1
-8. Release Information for hdf5-1.4.0
-7. Release Information for hdf5-1.2.2
-6. Release Information for hdf5-1.2.1
-5. Release Information for hdf5-1.2.0
-4. Changes from Release 1.0.0 to Release 1.0.1
-3. Changes from the Beta 1.0.0 Release to Release 1.0.0
-2. Changes from the Second Alpha 1.0.0 Release to the Beta 1.0.0 Release
-1. Changes from the First Alpha 1.0.0 Release to the
- Second Alpha 1.0.0 Release
-
-[Search on the string '%%%%' for per-release section breaks.]
-
-%%%%1.8.0-rc3%%%% Changes from 1.6.0 to 1.8.0-rc3
-
-
-HDF5 version 1.8.0-rc3
-================================================================================
-
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.6.* and
-Hdf5 1.8.0 release candidate "HDF5-1.8.0-rc3", and contains information
-on the platforms tested and known problems in HDF5-1.8.0-rc3.
-For more details check the HISTORY.txt file in the HDF5 source.
-
-
-Links to HDF5 1.8.0-rc3 source code, documentation, and additional materials
-can be found on THG's development server (www.hdfgroup.uiuc.edu) at the
-following location:
- http://www.hdfgroup.uiuc.edu/HDF5/release/beta/obtain518.html
-User documentation for the beta can be accessed directly at this location:
- http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/doc/
-
-New features of the upcoming 1.8.0 release are described in
-the "What's New in 1.8.0?" document:
- http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/WhatsNew180.html
-
-New and modified APIs are described briefly in
- http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/WhatsNew180.html
-and will be listed in the "HDF5 Software Changes" document:
- http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/doc/ADGuide/Changes.html
-
-
-
-For more information, see the HDF5 home page:
-
- http://www.hdfgroup.org/HDF5/
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.6.0
-- Platforms Tested
-- Known Problems
-
-
-New Features
-============
-
- Configuration:
- --------------
- - Removed stream-vfd from the HDF5 library. - AKC 2007/11/19.
- - Updated versions of autotools. HDF5 now uses automake 1.10.0,
- autoconf 2.61, and libtool 1.5.22. MAM - 2007/7/25.
- - Changed default fortran compiler to g95 when gcc is used. - AKC
- 2007/2/17.
- - 'make check-vfd' can now be run from the top level directory. Not all
- tests that 'make check' invokes work with certain Virtual File Drivers,
- so those tests have been skipped. - MAM 2006/7/17
- - Added the variable HDF5TestExpress to control how long tests run.
- Setting it to a value between 0 and 3 controls how thoroughly the
- library is tested, with 0 being an "exhaustive run" and 3 being a
- very quick "smoke test." 1 (a "full run") is the default.
- -JML 2006/6/21
- - If both shared and static libraries are installed, now both will be
- tested during 'make install'. -MAM 2006/06/21
- - Added support to explicitly enable stream_vfd or shared libraries
- when using parallel via the '--enable-stream_vfd' and
- '--enable-shared' options, respectively. If not explicitly defined,
- These settings default to enabled when parallel is not used,
- and disabled when parallel is used. -MAM 2006/06/17
- - Remove the flexible parallel code and the --enable-fphdf5
- configure option, it was never up to production standards
- anyway. -QAK 2006/4/20
- - Added a macro hdf5_mpi_special_collective_io_works to filter out
- some mpi-io packages that don't support collective IO for no IO
- contributions in some processes. -KY 2006/2/16
- - Added -shlib option to link against installed shared libraries to
- h5c++ and h5fc. -JML 2005/11/1
- - Added --enable-build-all option to configure, which only developers
- should need to use. -JML 2005/10/24
- - Configure uses the 'TR' variable to let the user override the path
- to the 'tr' utility. -JML 2005/10/17
- - Configure can recognize -lmpich as a form of MPI library. -AKC-
- 2005/9/28.
- - MD5 checksumming has been added to snapshot releases. Release
- tarballs will be accompanied by .md5 checksum files, which can
- be verified using the md5sum utility. -JML 2005/9/6
- - Some configure flags are incompatible (e.g., the C++ APIs cannot
- be built using the parallel version of HDF5). configure will now
- output errors when some common incompatible features are used
- together. -JML 2005/9/6
- - A new API function, H5Tis_hard(), was added to the library. It
- checks if a conversion function is a compiler (hard) conversion.
- SLU - 2005/9/6
- - t_mpi will run the test_mpio_derived_dtype by default unless it is
- known not working (indicated by macro H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS
- not defined.) -AKC- 2005/8/23.
- - Test execution has changed in a number of ways:
- When make is invoked in parallel (using -j), sequential tests
- are now executed as parallel make targets. This should make them
- finish more quickly on machines with multiple processors.
- Since test output is garbled when they are executed by parallel make,
- tests now dump their output to foo.log files and foo.logsh files
- (for test scripts). These logs are printed to the screen only
- when a test fails or when all tests in the current directory have
- completed successfully.
- When tests pass, they will create a foo.chkexe file.
- This prevents the test from executing again until the test or
- main library changes.
- All files generated by tests (*.chkexe, *.log, and any *.h5 files
- created) can be removed by invoking 'make check-clean'.
- Sequential and parallel library tests can now be invoked separately.
- 'make check-s' will execute only sequential tests, and 'make check-p'
- will execute only parallel tests. 'make check' will still execute
- all tests.
- JML - 2005/08/03
- - On windows, all.zip is deprecated. users should
- read INSTALL_Windows.txt to know the details.
- Reasons to deprecate all.zip:
- 1. Avoid confliction for windows programmers
- 2. Decrease size of CVS tree by adding all.zip
- 3. Avoid using winzip as the intermediate step
- --KY 2005/04/22
- - When HDF5 is created as a shared library, it now uses libtool's
- shared library versioning scheme. -JML 2005/04/18
- - HDF5 now uses automake 1.9.5 to generate Makefiles.in.
- This has a number of effects on users:
- The Fortran compiler should be set using the environment
- variable $FC, not $F9X. F9X still works, but is depreciated.
- The output of make may be different. This should be only a
- cosmetic effect.
- make depend (or make dep) is no longer recognized, since automake
- handles dependency tracking.
- Some new configure options exist. --enable-dependency-tracking
- and --disable-dependency-tracking are used to control automake's
- dependency tracking. Dependencies are on by default *on most
- platforms and compilers*. If --enable-dependency-tracking is
- used, they will be enabled on any platform. However, this can
- slow down builds or even cause build errors in some cases.
- Likewise, --disable-dependency-tracking can speed up builds and
- avoid some build errors.
- Some make targets have alternate names. make check-install and
- make installcheck do the same thing, for instance.
- pmake on IRIX can be invoked from the root directory, but the
- -V flag must be used to invoke it in any subdirectory or it
- will give an error about undefined variables.
- JML 2005/01 - 2005/03
- - Hardware conversion between long double and integers is also added.
- SLU 2005/02/10
- - Started to support software conversion between long double and
- integers. Hardware conversion will come very soon. SLU - 2005/1/6
- - Intel v8.0 compiler would infinite loop when compiling some test
- code with -O3 option. Changed enable-production default compiler
- option to -O2. AKC - 2004/12/06
- - Long double is assumed to be a supported C data type. It is a
- stanadard C89 type. AKC - 2004/10/22
- - The IA64 will use ecc as the C++ compiler by default.
- - Added some initial support for making valgrind/Purify (or similar
- memory checking products) happier by initializing buffers to zero
- and disabling the internal free list code. To take advantage of
- this, use the "--enable-using-memchecker" configure option when
- building the library. QAK - 2004/07/23
- - Fixed the long compile time of H5detect.c when v7.x Intel Compiler
- is used with optimization NOT off. AKC - 2004/05/20
- - Fixed configure setting of C++ for OSF1 platform. AKC - 2004/01/06
- - Prefix default is changed from /usr/local to `pwd`/hdf5.
- AKC - 2003/07/09
-
- Library:
- --------
- - Removed size restrictions on attributes, when using the "latest"
- version of the file format. - QAK - 2007/02/21
- - Relaxed restrictions on attribute operations to allow a file ID to
- be used as the "location ID". If a file ID is used, the attribute
- operation will occur on the root group of the file.
- - QAK - 2007/02/09
- - Enabled the CORE driver to read an existing file depending on
- the setting of the backing_store for H5Pset_fapl_core and file
- open flags. - SLU - 2006/11/30
- - Added new H5Gget_info_by_idx() routine to query the information about
- a group according to the order within an index.
- - QAK - 2006/11/27
- - Added new H5Gget_info() routine to query the information about a
- group by name.
- - QAK - 2006/11/27
- - Added new H5Oget_info_by_idx() routine to query the information about
- an object in a group according to the order within an index.
- - QAK - 2006/11/26
- - Added new H5Oget_info() routine to query the information about an
- object in a group by name.
- - QAK - 2006/11/26
- - Added new H5Oopen_by_idx() routine to open an object in a group
- according to the order within an index.
- - QAK - 2006/11/20
- - Added new H5Literate() routine to iterate over links in a group
- according to the order within an index.
- - QAK - 2006/11/20
- - Added new H5Ldelete_by_idx() routine to delete a link according to
- the order within an index.
- - QAK - 2006/11/13
- - Added new H5Lget_val_by_idx() routine to query the value of a soft link
- according to the order within an index.
- - QAK - 2006/11/13
- - Added new H5Lget_name_by_idx() routine to query the name of a link
- according to the order within an index.
- - QAK - 2006/11/12
- - Added new H5Rget_name() routine to determine the name of the object
- that a reference points to, as long as the object is still
- reachable in the group hierarchy.
- - QAK - 2006/11/10
- - Added new H5Lget_info_by_idx() routine to query the link information
- according to the order within an index.
- - QAK - 2006/11/10
- - Added feature to H5Iget_name to allow retrieving the name of any
- object's ID, as long as the object is still reachable in the
- group hierarchy.
- - LA - 2006/11/01
- - Added External and User-defined links.
- External links are links from one HDF5 file to another; they
- require both the name of the file and a path within that file.
- User-defined links allow users to supply callback functions
- for link traversals, allowing links to exhibit essentially
- any behavior.
- External links are a kind of user-defined link, so their default
- behavior can be overridden by the user.
- -JML 2006/8/23
- - Added H5Oopen and H5Oclose for opening objects of unknown type
- (as link callback functions do).
- -JML 2006/8/23
- - Added H5Oopen_by_addr, H5Oincr_refcount, and H5Odecr_refcount for
- opening objects by address. Be very careful with these!
- -JML 2006/8/23
- - Added H5Fget_intent to get the "intent" of a file (whether it
- was opened with read-write access or read-only.
- -JML 2006/8/23
- - Added Link Access Property Lists. They currently contain two
- properties, nlinks (H5Pget/set_nlinks) and elink_prefix
- (H5Pget/set_elink_prefix). nlinks controls how many soft and
- user-defined traversals are allowed before HDF5 assumes it has
- found a cycle (previously this defaulted to 16).
- The elink_prefix is a filesystem path that is prefixed to the
- names of any external link files opened using this LAPL.
- -JML 2006/8/23
- - Add H5L link APIs. Old APIs (H5Glink, H5Gmove, etc.) are still
- supported but deprecated.
- New APIs are:
- H5Llink - create a link to an object given its ID
- H5Lmove - just like H5Gmove2
- H5Lcopy - copy a link without copying the underlying object
- H5Lcreate_hard - like H5Glink2 for hard links
- H5Lcreate_soft - like H5Glink2 for soft links
- H5Ldelete - just like H5Gunlink
- H5Lget_val - just like H5Gget_linkval
- H5Lget_info - gets link-specific info (like H5Gget_objinfo)
-
- In addition, H5Gcreate_anon, H5Tcommit_anon, and H5Dcreate_anon
- no longer create links to objects; objects must be manually linked
- using H5Llink or they will be deleted when the ID is closed.
-
- Link Creation Property Lists can be used to pass character
- encoding (ASCII or UTF-8) for link names and to set the Intermediate
- Group Creation Flag:
- H5Pset_char_encoding, H5Pget_char_encoding
- H5Pset_copy_object, H5Pget_copy_object
- -JML 2006/7/5
- - Added managements of collective IO supports for chunking storage
- inside parallel HDF5
- 1) Implemented One IO with collective mode for all chunks in the
- application by building one MPI derived datatype across all
- chunks.
- 2) Implemented the decision-making support to do collective IO inside
- MPI-IO per chunk.
- 3) Added the decision-making support to do one IO across all chunks
- or to do multiple IOs with each IO per chunk.
- 4) Added the support to handle the case some processes won't do any IOs in
- collectively.
- 5) Some MPI-IO package(mpich 1.2.6 or lower, e.g.) cannot handle
- collective IO correctly for the case when some processes have no
- contributions to IOs, a special macro is added to change
- collective IO mode to independent IO mode inside HDF5 library.
-
- Currently we find that MPICH at Linux and vendor MPI-IO package at NCSA
- Altix cannot handle this case.
-
- "hdf5_mpi_special_collective_io_works=${hdf5_mpi_special_collective_io_works='no'}"
- has been added at the end of file and
- .
-
- If MPI-IO packages at your Linux and Altix support this case,
- please comment out the last line and report to us at
- help@hdfgroup.org. We can tune in our configuration to
- support this.
-
- KY - 2006/02/16
- - Added character encoding to attribute creation property lists.
- JML - 2006/01/02
- - Added H5Gcopy() routine to copy objects between while keeping
- data in compressed form. QAK - 2005/11/06
- - Added H5Sextent_equal() routine. QAK - 2005/11/06
- - Added HSYS_ERROR which retrieves the system error message and pushes
- it to the error stack. This gives more information of the failed
- system call. AKC - 2005/08/04
- - Added H5F_OBJ_LOCAL flag to H5Fget_obj_count() & H5Fget_obj_ids(), to
- allow querying for objects in file that were opened with a particular
- file ID, instead of all objects opened in file with any file ID.
- QAK - 2005/06/01
- - Added H5T_CSET_UTF8 character set to mark datatypes that use the
- UTF-8 Unicode character encoding. Added tests to ensure that
- library handles UTF-8 object names, attributes, etc. -JL 2005/05/13
- - HDF5 supports collective MPI-IO for irregular selection with HDF5
- dataset. Irregular selection is when users use H5Sselect_hyperslab
- more than once for the same dataset.
- Currently, not all MPI-IO packages support complicated MPI derived
- datatype used in the implementation of irregular
- selection INSIDE HDF5.
- 1) DEC 5.x is not supporting complicated derived datatype.
- 2) For AIX 5.1,
- if your poe version number is 3.2.0.19 or lower,
- please edit powerpc-ibm-aix5.x under hdf5/config,
- Find the line with
- << hdf5_mpi_complex_derived_datatype_works>>
- and UNCOMMENT this line before the configure.
- check poe version with the following command:
- lpp -l all | grep ppe.poe
- 3) For Linux cluster,
- if mpich version is 1.2.5 or lower, collective irregular selection
- IO is not supported, internally independent IO is used.
- 4) For IRIX 6.5,
- if C compiler version is 7.3 or lower, collective irregular selection
- IO is not supported, internally independent IO is used.
- 5) For platforms which internally used mpich, if the
- mpich version is 1.2.5 or lower, please find the
- corresponding config file and add
- hdf5_mpi_complex_derived_datatype_works='no' at the
- end of the configuration file. For example, at NCSA
- SGI Altix, the internal mpich library is 1.2.5. So
- hdf5_mpi_complex_derived_datatype_works='no' should be
- added at the end of the config file ia64-linux-gnu.
- KY - 2005/09/12
- We also found not all MPI-IO packages support collective IO with one
- or more processes to have no contributions to IO.
- For mpich version 1.2.6 or lower and all IRIX machine,
- if the library checks that there are no IO contributions for some
- processes, collective IO request is replaced with
- independent inside HDF5.
- KY - 2006/05/04
-
- - HDF5 N-bit filter
- HDF5 support N-bit filter from this version,
- The N-Bit filter is used effectively for compressing data of N-Bit
- datatype as well as compound and array datatype with N-Bit fields.
- KY - 2005/04/15
- - HDF5 scaleoffset filter
- HDF5 supports scaleoffset filter for users to do data
- compression through HDF5 library.
- Scale-Offset compression performs a scale and/or offset operation
- on each data value and truncates the resulting value to a minimum
- number of bits and then stores the data.
- Scaleoffset filter supports floating-point and integer datatype.
- Please check the HDF5 reference manual for this.
- KY - 2005/06/06
- - Retired SRB vfd (--with-srb). Functions H5Pset_fapl_srb and
- H5Pget_fapl_srb were removed. EIP - 2005/04/07
- - Retired GASS vfd (--with-gass). Functions H5Pset_fapl_gass and
- H5Pget_fapl_gass are removed too. AKC - 2005/3/3
- - Pablo was removed from the source code EIP - 2005/01/21
- - Modified registration of SZIP to dynamically detect the presence
- or absence of the encoder. Changed configure and Makefiles,
- and tests to dynamically detect encoder. BEM - 2004/11/02
- - Added function H5Pget_data_transform, together with the previously
- added H5Pset_data_transform, to support the data transform
- feature. AKC - 2004/10/26
- - Compound datatype has been enhanced with a new feature of size
- adjustment. The size can be increased and decreased(without
- cutting the last member) as long as it doesn't go down to zero.
- No API change is involved. SLU - 2004/10/1
- - Put back 6 old error API functions to be backward compatible with
- version 1.6. They are H5Epush, H5Eprint, H5Ewalk, H5Eclear,
- H5Eset_auto, H5Eget_auto. Their new equivalent functions are
- called H5Epush_stack, H5Eprint_stack, H5Ewalk_stack,
- H5Eclear_stack, H5Eset_auto_stack, H5Eget_auto_stack. SLU -
- 2004/9/2
- - 4 new API functions, H5Tencode, H5Tdecode, H5Sencode, H5Sdecode were
- added to the library. Given object ID, these functions encode and
- decode HDF5 objects(data type and space) information into and from
- binary buffer. SLU - 2004/07/21
- - Modified the way how HDF5 calculates 'pixels_per_scanline' parameter for
- SZIP compression. Now there is no restriction on the size and shape of the
- chunk except that the total number of elements in the chunk cannot be
- bigger than 'pixels_per_block' parameter provided by the user.
- EIP - 2004/07/21
- - Added support for SZIP without encoder. Added H5Zget_filter_info
- and changed H5Pget_filter and H5Pget_filter_by_id to support this
- change. JL/NF - 2004/06/30
- - SZIP always uses K13 compression. This flag no longer needs to
- be set when calling H5Pset_szip. If the flag for CHIP
- compression is set, it will be ignored (since the two are mutually
- exclusive). JL/NF - 2004/6/30
- - A new API function H5Fget_name was added. It returns the name
- of the file by object(file, group, data set, named data type,
- attribute) ID. SLU - 2004/06/29
- - Added support for user defined identifier types. NF/JL - 2004/06/29
- - A new API function H5Fget_filesize was added. It returns the
- actual file size of the opened file. SLU - 2004/06/24
- - New Feature of Data transformation is added. AKC - 2004/05/03.
- - New exception handler for datatype conversion is put in to
- replace the old overflow callback function. This exception
- handler is set through H5Pset_type_conv_cb function.
- SLU - 2004/4/27
- - Added option that if $HDF5_DISABLE_VERSION_CHECK is set to 2,
- will suppress all library version mismatch warning messages.
- AKC - 2004/4/14
- - A new type of dataspace, null dataspace(dataspace without any
- element) was added. SLU - 2004/3/24
- - Data type conversion(software) from integer to float was added.
- SLU - 2004/3/13
- - Data type conversion(software) from float to integer was added.
- Conversion from integer to float will be added later.
- SLU -2004/2/4
- - Added new H5Premove_filter routine to remove I/O pipeline filters
- from dataset creation property lists. PVN - 2004/01/26
- - Added new 'compare' callback parameter to H5Pregister & H5Pinsert
- routines. QAK - 2004/01/07
- - Data type conversion(hardware) between integers and floats was added.
- SLU 2003/11/21
- - New function H5Iget_file_id() was added. It returns file ID given
- an object(dataset, group, or attribute) ID. SLU 2003/10/29
- - Added new fields to the H5G_stat_t for more information about an
- object's object header. QAK 2003/10/06
- - Added new H5Fget_freespace() routine to query the free space in a
- given file. QAK 2003/10/06
- - Added backward compatibility with v1.6 for new Error API. SLU -
- 2003/09/24
- - Changed 'objno' field in H5G_stat_t structure from 'unsigned long[2]'
- to 'haddr_t'. QAK - 2003/08/08
- - Changed 'fileno' field in H5G_stat_t structure from 'unsigned long[2]'
- to 'unsigned long'. QAK - 2003/08/08
- - Changed 'hobj_ref_t' type from structure with array field to 'haddr_t'.
- QAK - 2003/08/08
- - Object references (hobj_ref_t) can now be compared with the 'objno'
- field in the H5G_stat_t struct for testing if two objects are the
- same within a file. QAK - 2003/08/08
- - Switched over to new error API. SLU - 2003/07/25
-
- Parallel Library:
- -----------------
- - Added mpich2 as a testing "platform" informally. AKC - 2005/9/28.
- - A dataset created in serial mode with H5D_ALLOC_TIME_INCR allocation
- setting was not extendible, either explicitly by H5Dextend or
- implicitly by writing to unallocated chunks. Library now allocates
- more space when needed or directed if the file is opened by parallel
- mode, independent of what the dataset allocation mode is.
- CC/AKC - 2005/08/29.
- - Allow compressed, chunked datasets to be read in parallel.
- QAK - 2004/10/04
- - Add options of using atomicity and file-sync to test_mpio_1wMr.
- AKC - 2003/11/13
- - Added parallel test, test_mpio_1wMr, which tests if the
- underlying parallel I/O system is conforming to the POSIX
- write/read requirement. AKC - 2003/11/12
-
- Fortran Library:
- ----------------
- - added support for shared Fortran libraries. -JML 2005/09/20
- - added missing h5tget_member_class_f function
- EIP 2005/04/06
- - added new functions h5fget_name_f and h5fget_filesize_f
- EIP 2004/07/08
- - h5dwrite/read_f and h5awrite/read_f functions only accept dims parameter
- of the type INTEGER(HSIZE_T).
- - added support for native integers of 8 bytes (i.e. when special
- compiler flag is specified to set native fortran integers to 8 bytes,
- for example, -i8 flag for PGI and Absoft Fortran compilers,
- -qintsize=8 flag for IBM xlf compiler).
- EIP 2005/06/20
- - added support for "big" REAL and DOUBLE PRECISION types
- (usually the size is specified by compilers flags like
- -r8, -r16, etc.)
- Known problem: multi file test fails when REAL is 16 bytes.
- EIP 2005/09/8
-
- C++ Library:
- ----------------
- - added support for shared C++ libraries. -JML 2005/09/20
- - Added missing member functions
- H5::CompType::getMemberArrayType
- H5::CompType::getMemberVarLenType
- H5::AbstractDs::getArrayType
- H5::AbstractDs::getVarLenType
- H5::CommonFG::openArrayType
- H5::CommonFG::openVarLenType
- H5::PropList::copyProp -- this will replace the current
- H5::PropList::copyProp in later releases due
- to incorrect prototype.
- H5::IdComponent::getHDFObjType
- BMR - 2005/08/08
-
-
- Tools:
- ------
- - h5repack and h5diff changed command line parameter syntax to be
- similar to h5dump, adding also long switch names. PVN - 2008/1/16
- - h5repack now supports adding multiple filters to all objects.
- PVN - 2008/1/16
- - h5dump lists groups and attributes in requested orders (by name and
- creation order, both ascending and descending). PVN - 2007/10/5
- - h5import imports string (text) data. PVN - 2007/10/5
- - h52gif and gif2h5: Both these tools were revised to include the High
- Level Image API support, and tests were added to /hl/tools/gif2h5.
- PVN - 2007/04/13
- - h5dump: added support for double long type H5T_NATIVE_LDOUBLE. PVN
- 2007/03/13
- - h5dump: added support for binary output, see usage. PVN 2007/03/13
- - h5repack: added support for the new nbit and scaleoffset filters.
- PVN - 2007/05/07
- - h5repack: now uses the API function H5Ocopy (of the tool h5copy) to
- recreate objects if there is not a user input for changes. PVN -
- 2007/05/07
- - h5repack: added support for reading and repacking by hyperslabs for
- large files. PVN - 2007/03/01
- - h5repack: a new option allows the copy using the file type (default)
- instead of the previous conversion to native type. PVN - 2007/03/01
- - h5repack: output the percentage of compression used. PVN - 2007/03/01
- - h5diff: added support for -p option for unsigned long_long data. PVN
- 2007/02/26
- - h5diff: added support for comparing dataset regions. PVN - 2007/02/20
- - h5diff: added support for reading and comparing by hyperslabs for large files.
- PVN - 2007/02/20
- - h5diff: printing of dataset dimensions along with dataset name. PVN -2007/02/19
- - h5dump now uses the new API function H5Rget_name to display the name
- of the dataset referenced instead of its ID. PVN - 2007/02/19
- - Added new tool, h5mkgrp. QAK - 2007/02/14
- - Added new tool, h5copy. PVN - 2006/7/15
- - Removed obsolete pdb2hdf5 tool from tools/misc -JML 2005/10/24
- - Added build_h5perf_alone.sh that builds h5perf by standalone mode.
- AKC - 2005/09/18.
- - Sped up h5dump on files with large numbers of objects.
- QAK - 2005/08/25
- - Added a standalone mode for building h5perf. AKC - 2005/08/12
- - new tool, h5jam. See reference manual. 2004/10/08
- - h5repack.sh did not report errors encountered during tests. It does
- now. AKC - 2004/04/02
- - Added the MPI-I/O and MPI-POSIX drivers to the list of VFL drivers
- available for h5dump and h5ls. RPM & QAK - 2004/02/01
- - Added option --vfd= to h5ls to allow a VFL driver to be selected
- by a user. RPM & QAK - 2004/02/01
- - Added option -showconfig to compiler tools (h5cc,h5fc,h5c++).
- AKC - 2004/01/08
- - Install the "h5cc" and "h5fc" tools as "h5pcc" and "h5pfc"
- respectively if library is built in parallel mode.
- WCW - 2003/11/04
- - Added metadata benchmark (perform/perf_meta). SLU - 2003/10/03
- - Changed output of "OID"s from h5dump from "-" to
- ":::" to ":"
- QAK - 2003/08/08
-
- High-Level APIs:
- ------
- - Fortran interfaces for the Image, Table and Lite APIs. PVN - 2007/5/1
- - New HDF5 Dimension Scale API (H5DS) allows dimension scales to be
- created in an HDF5 file and associated with specific datasets. PVN - 2007/5/1
- - There are two new functions in the Lite library, H5LTtext_to_dtype
- and H5LTdtype_to_text. H5LTtext_to_dtype creates a HDF5 data type
- given a text description; H5LTdtype_to_text converts a data type
- to text description. Only DDL definition is supported as text
- description now. SLU - 2006/05/17
- - Added Packet Table API for creating tables with less overhead than
- H5TB API. Added C++ wrapper for Packet Tables. See documentation.
- JML - 2004/03/28
-
- Documentation
- -------------
- - The documentation for this release is largely complete, but
- trails the source code. A few of the newer functions are
- not yet documented. FMB - 2007/04/18
- - The user documents for this release can be accessed directly at
- this location:
- http://www.hdfgroup.uiuc.edu/HDF5/doc_1.8pre/doc/
- The most recent document versions (updated daily) in the
- 1.8 development branch can be accessed at this location:
- http://www.hdfgroup.uiuc.edu/HDF5/doc_dev_snapshot/H5_dev/
- FMB - 2007/04/18
-
-
-Support for new platforms, languages and compilers.
-=======================================
- - Added support for Free-BSD on amd64 with GNU C and Fortran compilers
- 4.2.1
- EIP - 2007/06/25
- - Added support for sequential and parallel libraries for Intel 64 Linux
- cluster (abe.ncsa.uiuc.edu). Among three MPICH packages available on
- this machine, only Open MPI works. The VMI has seg fault in hyperslab.c
- and bittests.c tests. The MVAPICH2 complained about mpd not running
- the parallel test. (see Known Problems section for more info)
- EIP - 2007/06/25
- - Added support for HPUX11.23 for both 32 and 64-bit; HDF5 C++
- - Added support for 64-bit Windows with Visual Studio .NET and 2005.
- SJW - 2007/06/25
- - Added support for HPUX11.23 for both 32 and 64-bit; HDF5 C++
- shared library is not supported with +DD64 flag.
- EIP - 2006/06/22
- - Added support for VAX floating numbers for Alpha Open VMS 7.3.2
- EIP - 2006/05/05
- - Fixed broken make.com files in tools directories
- EIP - 2006/05/05
- - Added support for Alpha Open VMS 7.3.2 EIP - 2006/04/15
- - Added support for Cray X1. JML - 2005/10/03
- - PGI Fortran compiler is supported on Linux64 systems (x86_64)
- EIP - 2004/08/19
- - Absoft compiler f95 v9.0 supported on Linux 2.4
- EIP - 2004/07/29
- - HDF5 Fortran APIs are supported on Mac OSX with IBM XL Fortran
- compiler version 8.1. This is a default compiler.
- - HDF5 Fortran APIs are supported on MAC OSX with Absoft F95 compiler
- version 8.2; set F9X environment variable to f95, for example
- setenv F9X f95
- Use --disable-shared --enable-static configure flags when Absoft
- compiler is used.
- EIP - 2004/07/27
- - HDF5 Fortran APIs are supported on MAC OSX with IBM XL Fortran
- Compiler version 8.1 Use "--disable-shared --enable-static"
- configure flags along with the "--enable-fortran" flag to build
- Fortran library. EIP - 2004/01/07
-
-Bug Fixes since HDF5-1.6.0 release
-==================================
-
- Library
- -------
- - Changed library's behavior for reading files that might have
- corrupted object header information from a previous (buggy)
- version of the library. By default, the library now rebuilds the
- correct object header information instead of issuing an error.
- Previous "strict" file format interpretation can be enabled with
- the "--enable-strict-format-checks" configure option.
- QAK - 2008/01/13
- - Fixed several bugs with writing fill values for datasets that have
- a variable-length datatype or component datatype. QAK - 2007/06/19
- - STDIO driver didn't support files bigger than 2GB because the OFFSET
- parameter of fseek is of type LONG INT, not big enough for big files.
- Use fseeko instead for big files if it's available on the system.
- SLU - 2007/4/5
- - Fixed a bug in H5Sselect_valid() that caused an incorrect value to
- be returned (0) instead of FAIL on error conditions such as the
- selection or extent not being defined. CMC - 2007/01/17
- - Fixed the MULTI driver problem (Bug #731) that corruptted the data.
- SLU - 2007/1/12
- - Fixed file corruption bug which could write an incorrect number of
- messages to an object's header under certain circumstances.
- Generally, the sequence of actions to generate this bug looks
- like this:
- - Create an object
- - Close the file
- - Re-open the file
- - Add 2 (or more) attributes to the object
- - Close the file
- - Re-open the file
- - Delete one of the attributes on the object
- - Add a smaller attribute to the object
- - Delete the smaller attribute on the object
- - Add a larger attribute on the object
-
- After this, the number of header messages stored for the object
- will be off by one. Other sequences of modifying attributes on an
- object could also trigger this bug. If you are opening an
- object and the bottom few messages of the HDF5 error stack
- resembles this, the object has been affected by this bug:
-
- #007: ../../hdf5_v1.6/src/H5C.c line 3887 in H5C_load_entry(): unable to load entry
- major(08): Meta data cache layer
- minor(40): Unable to load metadata into cache
- #008: ../../hdf5_v1.6/src/H5Ocache.c line 332 in H5O_load(): corrupt object header - too few messages
- major(12): Object header layer
- minor(40): Unable to load metadata into cache
-
- Specifically, "corrupt object header" is the best string to search
- for in the HDF5 error stack output.
-
- If your files have been affected by this bug, or you are concerned
- that your files might have been, please contact the HDF Helpdesk
- at help@hdfgroup.org for a tool to detect and repair files
- affected by this problem. QAK - 2006/6/16
- - Fixed various problems with retrieving names of objects, especially
- with mounted files. QAK - 2005/12/25
- - Fixed core dump when closing root groups opened through two different
- file handles that operate on the same actual file. QAK - 2005/10/02
- - Corrected errors when performing various operations on a group opened
- by dereferencing an object reference. QAK - 2005/07/30
- - Fixed a bug with named datatypes where a copy of a named datatype
- used to create a dataset would accidentally use the original
- named datatype for the dataset's datatype. QAK - 2005/07/23
- - Made H5Fget_name() be consistent and always return name of actual
- file the ID is in. (Instead of the name of the top file in a
- file mounting hierarchy). QAK - 2005/07/19
- - Reworked internal file mounting semantics to hopefully eliminate
- mounting problems. We now require that files that are mounting
- together all have the same "file close degree". QAK - 2005/07/19
- - More bug fixes on holding open files that are mounted and have
- IDs open. QAK - 2005/07/14
- - Don't unmount child files until the parent file actually closes.
- (Previously, if an object is holding open a file, the child files
- would get unmounted too early). QAK - 2005/07/05
- - Fixed bug where unmounted files could cause the library to go into
- an infinite loop when shutting down. QAK - 2005/06/30
- - The library didn't save the information of family driver in file.
- The original file member size was lost after file was closed (see
- bug #213). This has been fixed by saving driver name and member
- file size in the superblock. SLU - 2005/6/24
- - Fixed bug with hyperslab selections that use selection offsets and
- operate on chunked datasets going into infinite loop or dumping
- core. QAK - 2005/06/17
- - Corrected memory leak and possible corruption when opening a group.
- QAK - 2005/06/17
- - Added check for opaque datatype tags being too long (check against
- H5T_OPAQUE_TAG_MAX, currently set to 256). QAK - 2005/06/14
- - Fixed various errors in maintaining names for open objects in the
- face of unusual mount & unmount operations. QAK - 2005/06/08
- - "SEMI" and "STRONG" file close degree settings now apply only to the
- particular file ID being closed, instead of operating on all open
- file IDs for a given file. QAK - 2005/06/01
- - For family driver, the library didn't save member size in file.
- When file is reopened, the size of 1st member file determine the
- member size. Now member size is saved in file and is used to
- define member file size. Wrong file access property of member size
- will result in a failure. Using any other driver except family
- will cause library to return error. So is multi driver. SLU -
- 2005/05/24
- - Fixed error in opening object in group that was opened in mounted
- file which has been unmounted. QAK - 2005/03/17
- - Fixed a racing condition in MPIPOSIX virtual file drive close
- function. Now all processes must completed the close before any
- of them is returned. This prevents some "faster" processes start
- accessing the file for another purpose (e.g., open with truncate)
- while other "slower" processes have not closed the same file with
- the previous purpose. AKC - 2005/03/01
- - H5Tget_member_value calls for enum datatype didn't return correct
- value if H5Tenum_valueof was called first. It's fixed. SLU -
- 2005/02/08
- - For variable-length string, H5Tget_class returned H5T_STRING as its
- class. But H5Tdetect_class and H5Tget_member_class considered it
- as H5T_VLEN. This is fixed to let all these 3 functions treat it
- as H5T_STRING. SLU - 2005/02/08
- - The byte order of 1-byte integer types was fixed as little endian
- even on a big-endian machine. This has been corrected. SLU -
- 2005/02/07
- - Fix segmentation fault when calling H5Fflush with an attribute that
- hasn't had a value written to it open. QAK - 2004/10/18
- - Back up supporting bitfield and time types in H5Tget_native_type.
- Leave it to future support. The function simply returns error
- message of "not support" for bitfield and time types.
- SLU - 2004/10/5
- - Fixed address check in Core VFL driver to avoid spurious address/size
- overflows for odd valued addresses and/or sizes. QAK - 2004/09/27
- - Fixed parallel bug in which some processes attempted collective
- I/O while others did independent I/O. Bug appeared when some
- processes used point selections, and others didn't. JRM - 2004/9/15
- - Corrected error where dataset region references were written in an
- incorrect way on Cray machines. PVN & QAK - 2004/09/13
- - The H5Tget_native_type now determines the native type for integers
- based on the precision. This is to avoid cases of wrongly converting
- an int to a short in machines that have a short of 8 bytes but with
- 32bit precision (e.g Cray SV1). PVN - 2004/09/07
- - Changed H5Dread() to not overwrite data in an application's buffer
- with garbage when accessing a chunked dataset with an undefined
- fill value and an unwritten chunk is uncountered. QAK - 2004/08/25
- - Fixed error which could cause a core dump when a type conversion
- routine was registered after a compound datatype had been
- converted and then an equivalment compound datatype was converted
- again. QAK - 2004/08/07
- - Fixed memory overwrite when encoding "multi" file driver information
- for file's superblock. QAK - 2004/08/05
- - Fixed obscure bug where a filter which failed during chunk allocation
- could allow library to write uncompressed data to disk but think
- the data was compressed. QAK - 2004/07/29
- - Fixed bug where I/O to an extendible chunked dataset with zero-sized
- dimensions would cause library to fail an assertion.
- QAK - 2004/07/27
- - Fixed bug where chunked datasets which have filters defined,
- allocation time set to "late" and whose chunks don't align with
- the dataspace bounds could have incorrect data stored when
- overwriting the entire dataset on the first write. QAK - 2004/07/27
- - Added check to ensure that dataspaces have extents set. JML-2004/07/26
- - Fixed bug on some Solaris systems where HDF5 would try to use
- gettimeofday() when that function didn't work properly.
- JML - 2004/07/23
- - Fixed bug in H5Sset_extent_simple where setting maximum size to
- non-zero, then to zero would cause an error. JML - 2004/07/20
- - Allow NULL pointer for buffer parameter to H5Dread & H5Dwrite
- when not writing data ("none" selection or hyperslab or point
- selection with no elements defined). QAK - 2004/07/20
- - Calling H5Gcreate() on "/" or "." throws an error instead of
- failing quietly. JML - 2004/07/19
- - Fixed bug where setting file address size to be very small could
- trigger an assert if the file grew to more than 64 KB. Now throws
- an error and data can be recovered. JL/NF - 2004/07/14
- - Fixed bug where "resurrecting" a dataset was failing.
- QAK - 2004/07/14
- - Fixed bug where incorrect data could be read from a chunked dataset
- after it was extended. QAK - 2004/07/12
- - Fixed failure to read data back from file of compound type with
- variable-length string as field. SLU - 2004/06/10
- - Fixed potential file corruption bug when a block of metadata could
- overlap the end of the internal metadata accumulator buffer and
- the buffer would be extended correctly, but would incorrectly
- change it's starting address. QAK - 2004/06/09
- - Opaque datatype with no tag failed for some operations. Fixed.
- SLU - 2004/6/3
- - Fixed potential file corruption bug where dimensions that were
- too large (a value greater than could be represented in 32-bits)
- could cause the incorrect amount of space to be allocated in a
- file for the raw data for the dataset. QAK - 2004/06/01
- - Fixed dtypes "sw long double -> double" failure in QSC class
- machines. AKC - 2004/4/16
- - Fixed problem with fletcher32 filter when converting data of different
- endianness. PVN - 2004/03/10
- - Fixed problem with H5Tget_native_type() not handling opaque fields
- correctly. QAK - 2004/01/31
- - Fixed several errors in B-tree deletion code which could cause a
- B-tree (used with groups and chunked datasets) to become corrupt
- with the right sequence of deleted objects. QAK - 2004/01/19
- - Fixed small internal memory leaks of fill-value information.
- QAK - 2004/01/13
- - Fixed bug that caused variable-length datatypes (strings or sequences)
- used for datasets in files with objects that were unlinked to
- fail to be read/written to a file. QAK - 2004/01/13
- - Detect situation where szip 'pixels per block' is larger than the
- fastest changing dimension of a dataset's chunk size and disallow
- this (due to limits in szip library). QAK - 2003/12/31
- - Fixed bug with flattened hyperslab selections that would generate
- incorrect hyperslab information with certain high-dimensionality
- combinations of start/stride/count/block information.
- QAK - 2003/12/31
- - Fixed bug with variable-length datatypes used in compound datatypes.
- SLU - 2003/12/29
- - Fixed bug in parallel I/O routines that would cause reads from
- "short datasets" (datasets which were only partially written out)
- to return invalid data. QAK & AKC - 2003/12/19
- - Fixed bug where scalar dataspaces for attributes were reporting as
- simple dataspaces. QAK - 2003/12/13
- - Fixed problem with selection offsets of hyperslab selections in
- chunked datasets causing the library to go into an infinite loop.
- QAK - 2003/12/13
- - Fixed H5Giterate to avoid re-using index parameter after iteration
- callback has been called (allows iteration callback to modify the
- index parameter itself). QAK - 2003/12/06
- - Fixed various floating-point conversion problems, including a
- change which could corrupt data when converting from double->float.
- QAK - 2003/11/24
- - Changed "single process" metadata writing in library to collective
- I/O by all processes, in order to guarantee correct data being
- written with MPI-I/O. QAK - 2003/11/20
- - Fixed problems with fill values and variable-length types and also
- I/O on VL values that were set to NULL. QAK - 2003/11/08
- - Fixed problems with MPI datatypes that caused ASCI Q machine to
- hang. QAK - 2003/10/28
- - Removed HDF5_MPI_PREFER_DERIVED_TYPES environment variable support,
- since it had no benefit. QAK - 2003/10/28
- - Single hyperslab selections (which were set with only one call to
- H5Sselect_hyperslab) that had dimensions that could be "flattened"
- but were interspersed with dimensions that could not be flattened
- were not correctly handled, causing core dumps. QAK - 2003/10/25
- - Fixed incorrect datatype of the third parameter to the Fortran90
- h5pset(get)_cache_f subroutine (INTEGER to INTEGER(SIZE_T))
- EIP - 2003/10/13
- - Fixed problems with accessing variable-length data datatypes on
- Crays. QAK - 2003/10/10
- - Fixed potential file corruption bug when too many object header
- messages (probably attributes, from a user perspective) were
- inserted into an object header and certain other conditions were
- met. QAK - 2003/10/08
- - Changed implementation of internal ID searching algorithm to avoid
- O(n) behavior for many common cases. QAK - 2003/10/06
- - Allow partial parallel writing to compact datasets. QAK - 2003/10/06
- - Correctly create reference to shared datatype in attribute, instead
- of making a copy of the shared datatype in the attribute.
- QAK - 2003/10/01
- - Revert changes which caused files >2GB to fail when created with
- MPI-I/O file driver on certain platforms. QAK - 2003/09/16
- - Allow compound datatypes to grow in size. SLU - 2003/09/10
- - Detect if a type is already packed before attempting to pack it
- again or check if it is locked. SLU - 2003/09/10
- - Corrected bug when opening a file twice with read-only permission
- for one open and then closing the read-only access file ID would
- generate an error. QAK - 2003/09/10
- - Corrected bug in repeated calls to H5Pget_access_plist() which would
- incorrectly manage reference counts of internal information and
- eventually blow up. QAK - 2003/09/02
- - Return rank of the array datatype on successful call to
- H5Tget_array_dims(). QAK - 2003/08/30
- - Corrected bug in H5Tdetect_class which was not correctly detecting
- datatype classes of fields in nested compound datatypes in some
- circumstances. QAK - 2003/08/30
- - Corrected bug in sieve buffer code which could cause loss of data
- when a small dataset was created and deleted in quick succession.
- QAK - 2003/08/27
- - Corrected bug in H5Gget_objname_by_idx which was not allowing NULL
- for the name when just querying for the object name's length.
- QAK - 2003/08/25
- - Corrected bug in variable-length string handling which could
- generate a core dump on writing variable-length strings as part
- of a compound datatype on certain architectures. QAK - 2003/08/25
- - Corrected bug in H5Tget_native_type which would incorrectly compute
- the size of certain compound datatypes and also incorrectly
- compute the offset of the last field for those compound datatypes.
- QAK - 2003/08/25
- - Corrected bug in H5Tget_native_type which would drop string datatype
- metadata (padding, etc.) QAK - 2003/08/25
- - Corrected bugs in H5Gget_num_objs, H5Gget_objname_by_idx and
- H5Gget_objtype_by_idx to allow them to accept location IDs, not just
- group IDs. QAK - 2003/08/21
- - Corrected bug when using scalar dataspace for memory selection and
- operating on chunked dataset. QAK - 2003/08/18
- - Corrected bugs with multiple '/' characters in names for H5Glink
- and H5Gunlink. QAK - 2003/08/16
- - Corrected bug with user blocks that didn't allow a user block to
- be inserted in front of a file after the file was created.
- QAK - 2003/08/13
- - Corrected errors with using point selections to access data in
- chunked datasets. QAK - 2003/07/23
- - Corrected error with variable-length datatypes and chunked datasets
- caused H5Dwrite to fail sometimes. QAK - 2003/07/19
- - Modified library and file format to support storing indexed storage
- (chunked dataset) B-tree's with non-default internal 'K' values.
- QAK - 2003/07/15
- - Returned H5T_BKG_TEMP support to library after it was accidentally
- removed. QAK - 2003/07/14
-
- Configuration
- -------------
- - Configure can now use any tr command. No more need for
- defining variable TR nor is it supported. -AKC 2006/05/19
- - Parallel I/O with the MPI-I/O driver will no longer work if the
- filesystem is not POSIX compliant. The "HDF5_MPI_1_METAWRITE"
- environment variable has been removed. QAK - 2004/01/30
- - Fixed the error that cause "make install" to fail because of the
- macro definition syntax of "prefix?=..." AKC - 2003/07/22
-
- Performance
- -------------
- - Optimized I/O for enumerated datatypes that are a superset of source
- enumerated datatype. QAK - 2005/03/19
- - More optimizations to inner loops of datatype conversions for
- integers and floats which give a 10-50% speedup. QAK - 2003/11/07
- - Hoisted invariant 'if/else's out of inner datatype conversion loop for
- integer and floating-point values, giving about a 20% speedup.
- QAK - 2003/10/20
-
- Tools
- -----
- - Fixed h5dump regarding the display of blocks in hyperslab
- selections. PVN 2008/01/16
- - Fixed h5diff regarding the display of NaN (Not a Number)
- values. PVN 2008/01/16
- - Fixed h5dump regarding the parsing of binary output parameters.
- PVN 2008/01/16
- - Fixed memory problems in h52gif and gif2h5. PVN 2008/01/16
- - Fixed h5repack dealing with NULL references. PVN 2008/01/16
- - Fixed h5dump & h5ls to display attributes in "name" order, rather
- than the order they are encountered in the object header.
- QAK - 2007/10/04
- - Fixed h5dump regarding the display of named datatypes
- attributes. PVN 2007/03/13
- - Fixed h5dump regarding the display of group comments. PVN
- 2007/03/13
- - Fixed h5dump regarding the display of hardlinks pointing
- to the root group. PVN 2007/03/13
- - Fixed h5diff percentage option -p. PVN 2007/03/05
- - Fixed h5dump that caused array indices greater than 2 ^32-1
- not to be printed correctly - PVN 2007/2/19
- - Fixed h5dump to print attributes data in ASCII if -r option is used.
- AKC - 2004/11/18
- - Fixed space utilization reported in h5ls to correct error in formula
- used. QAK - 2004/10/22
- - Fixed h5redeploy which sometimes complain too many argument for the
- test command. (The complain did not hinder the h5redploy to
- proceed correctly.) AKC - 2003/11/03
- - Fixed a segmentation fault of h5diff when percentage option is used.
- AKC - 2003/08/27
- - Switched away from tools using internal "fixtype" function(s) to use
- H5Tget_native_type() internally. QAK - 2003/08/25
-
-
- Documentation
- -------------
-
-
- F90 APIs
- --------
- - h5pget_driver_f was returning information that could not be
- interpreted by fortran application program; fixed. EIP - 2005/04/10
-
-
-Platforms Tested
-================
-Platforms marked with * were not tested for hdf5-1.8.0-rc* release
-(This information is somewhat out of date and may be inaccurate. It will be
- updated for a later release)
-
-* AIX 5.2 (32/64 bit) xlc 8.0.0.11
- xlC 8.0
- xlf 10.01.0000.0
- mpcc_r 6.0.0.8
- mpxlf_r 8.1.1.7
-* AIX 5.3 (32/64 bit) xlc 7.0.0.8
- xlC 7.0.0.8
- xlf 09.01.0000.0007
-* Cray X1 water 3.0.35 Cray Standard C Version 5.4.0.7.4
- Cray Fortran 5.4.0.7.3
- Cray C++ 5.4.0.7.4
- FreeBSD 6.2-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
- (duty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.2.1 20080123
- g++ 4.2.1 20080123
- gfortran 4.2.1 20070620
- FreeBSD 6.2-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
- (liberty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.2.1 20080123
- g++ 4.2.1 20080123
- gfortran 4.2.1 20080123
-
-* HP-UX B.11.23 HP aC++/ANSI C B3910B A.06.00
- HP F90 v2.9.2
- HP aC++/ANSI C B3910B A.06.00
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.4.4m
- F90 MIPSpro 7.4.4m
- C++ MIPSpro cc 7.4.4m
-
-* Linux 2.6.9 (RHEL4) Intel 10.0 compilers
- (abe.ncsa.uiuc.edu)
- Linux 2.4.21-47 gcc 3.2.3 20030502
- (osage)
- Linux 2.6.9-42.0.10 gcc 3.4.6 20060404
- (kagiso) PGI 7.0-7 (pgcc, pgf90, pgCC)
- Intel 9.1 (icc, ifort, icpc)
- Linux 2.6.16.27 x86_64 AMD gcc 4.1.0 (SuSE Linux), g++ 4.1.0, g95 (GCC 4.0.3)
- (smirom) PGI 6.2-5 (pgcc, pgf90, pgCC)
- Intel 9.1 (icc, iort, icpc)
- Linux 2.6.5-7.252.1-rtgfx #1
- SMP ia64 Intel(R) C++ Version 9.0
- (cobalt) Intel(R) Fortran Itanium(R) Version 9.0
- SGI MPI
- SunOS 5.8 32,46 Sun WorkShop 6 update 2 C 5.3
- (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 95 6.2
- Sun WorkShop 6 update 2 C++ 5.3
-* SunOS 5.10 i86pc Sun C 5.7
- Sun Fortran 95 8.1
- Sun C++ 5.7
- SunOS 5.10 cc: Sun C 5.8
- (linew) f90: Sun Fortran 95 8.2
- CC: Sun C++ 5.8
- Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
- (tungsten) gcc 3.2.2 20030222
- Intel(R) C++ Version 9.0
- Intel(R) Fortran Compiler Version 9.0
- IA-64 Linux 2.4.21.SuSE_292.til1 ia64
- (NCSA tg-login) gcc 3.2.2
- Intel(R) C++ Version 8.1
- Intel(R) Fortran Compiler Version 8.1
- mpich-gm-1.2.5..10-intel-r2
- Windows XP
- Visual Studio .NET
- Visual Studio 2005 w/ Intel Fortran 9.1
- Cygwin(native gcc compiler and g95)
- MinGW(native gcc compiler and g95)
- Windows XP x64
- Visual Studio 2005 w/ Intel Fortran 9.1
- Windows Vista
- Visual Studio 2005
-
- MAC OS 10.4 (Intel) gcc i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
- G95 (GCC 4.0.3 (g95 0.91!) Nov 21 2006)
-* Alpha Open VMS 7.3
-
-
-Supported Configuration Features Summary
-(This table was not modified for 1.8.0-rc* release; for information contact help@hdfgroup.org)
-========================================
-
- In the tables below
- y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-SunOS5.8 64-bit n y n y y y
-SunOS5.8 32-bit n y n y y y
-SunOS5.10 64-bit y(1) y n y y y
-SunOS5.10 32-bit y(1) y n y y y
-IRIX64_6.5 64-bit n y y y y y
-IRIX64_6.5 32-bit n n n n y y
-Cray XT3 (16) n n n n n n
-AIX-5.2 & 5.3 32-bit y y y y y y
-AIX-5.2 & 5.3 64-bit y y y y y y
-Windows XP n y(15) n(15) y y y
-Windows XP x64 n y(15) n(15) y y y
-Windows Vista n n n y y y
-Mac OS X 10.4 PowerPC n n
-FreeBSD 4.11 n n n y y y
-RedHat EL3 W (3) y(1a) y(10) y(1a) y y y
-RedHat EL3 W Intel (3) n y n y y n
-RedHat EL3 W PGI (3) n y n y y n
-SuSe x86_64 gcc (3,12) y(1a) y(11) n y y y
-SuSe x86_64 Int (3,12) n y(13) n y y n
-SuSe x86_64 PGI (3,12) n y(8) n y y y
-Linux 2.4 Xeon C
- Lustre Intel (3,6) n y n y y n
-Linux 2.6 SuSE ia64 C
- Intel (3,7) y y y y y n
-Linux 2.6 SGI Altix
- ia64 Intel (3) y y y y y y
-Alpha OpenVMS 7.3.2 n y n y n n
-
-
-
-Platform Shared Shared Shared static- Thread-
- C libs F90 libs C++ libs exec safe
-Solaris2.8 64-bit y y y x y
-Solaris2.8 32-bit y y y x y
-Solaris2.10 64-bit y x y
-Solaris2.10 32-bit y x y
-IRIX64_6.5 64-bit y y n y y
-IRIX64_6.5 32-bit y dna y y y
-HPUX11.00 y n y x n
-HPUX11.23-32bit y n n y n
-HPUX11.23-64bit y dna n y n
-Cray XT3 (16) n n n n n
-AIX-5.2 & 5.3 32-bit n n n y n
-AIX-5.2 & 5.3 64-bit n n n y n
-Windows XP y y(15) y y y
-Windows XP x64 y y(15) y y y
-Windows Vista y n n y y
-Mac OS X 10.3 y y n
-Mac OS X 10.4 PowerPC
-FreeBSD 4.11 y n y y y
-RedHat EL3 W (3) y y(10) y y y
-RedHat EL3 W Intel (3) y y y y n
-RedHat EL3 W PGI (3) y y y y n
-SuSe x86_64 W GNU (3,12) y y y y y
-SuSe x86_64 W Int (3,12) y y y y(14) n
-SuSe x86_64 W PGI (3,12) y y y y(14) n
-Linux 2.4 Xeon C
- Lustre Intel (6) y y y y n
-Linux 2.4 SuSE
- ia64 C Intel (7) y y y y n
-Linux 2.4 SGI Altix
- ia64 Intel y y n
-Alpha OpenVMS 7.3.2 n n n y n
-
- Notes: (1) Using mpich 1.2.6.
- (1a) Using mpich2 1.0.6.
- (2) Using mpt and mpich 1.2.6.
- (3) Linux 2.6 with GNU, Intel, and PGI compilers, as indicated.
- W or C indicates workstation or cluster, respectively.
-
- (6) Linux 2.4.21-32.0.1. Xeon cluster with ELsmp_perfctr_lustre
- and Intel compilers
- (7) Linux 2.4.21, SuSE_292.till. Ia64 cluster with Intel compilers
- (8) pgf90
- (9) With Compaq Visual Fortran 6.6c compiler.
- (10) With PGI and Absoft compilers.
- (11) PGI and Intel compilers for both C and Fortran
- (12) AMD Opteron x86_64
- (13) ifort
- (14) Yes with C and Fortran, but not with C++
- (15) Using Visual Studio 2005 or Cygwin
- (16) Not tested for this release.
- Compiler versions for each platform are listed in the preceding
- "Platforms Tested" table.
-
-
-
-Known Problems
-==============
-* We discovered two problems when running collective IO parallel HDF5 tests
- with chunking storage on ChaMPIon MPI compiler on tungsten, a linux
- cluster at NCSA.
- Under some complex selection cases,
- 1) MPI_Get_element returns the wrong value.
- 2) MPI_Type_struct also generates wrong derived data type and corrupt data
- may be generated.
- This only happens when turning on collective IO with chunking storage
- with some complex selections. We haven't found these problems on other
- MPI-IO compilers. If you encounter these problems, you may use Independent IO
- instead.
-
- Change the following line in your code:
- H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
-
- to
- H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
-
- KY - 2007/08/24
-
-* For SNL, spirit/liberty/thunderbird: The serial tests pass but parallel
- tests failed with MPI-IO file locking message. AKC - 2007/6/25.
-* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers use
- -mp -O1 compilation flags to build the libraries. Higher level of optimization
- causes failures in several HDF5 library tests.
-* For HPUX 11.23 many tools tests failed for 64-bit version when linked to the
- shared libraries (tested for 1.8.0-beta2)
-* For SNL, Red Storm: only parallel HDF5 is supported. The serial tests pass
- and the parallel tests also pass with lots of non-fatal error messages.
-* For LLNL, uP: both serial and parallel pass. Zeus: serial passes but
- parallel fails with a known proglem in MPI. ubgl: serial passes but
- parallel fails.
-* on SUN 5.10 C++ test fails in the "Testing Shared Datatypes with Attributes" test
-* configuring with --enable-debug=all produces compiler errors on most
- platforms. Users who want to run HDF5 in debug mode should use
- --enable-debug rather than --enable-debug=all to enable debugging
- information on most modules.
-* On Mac OS 10.4, test/dt_arith.c has some errors in conversion from long
- double to (unsigned) long long and from (unsigned)long long to long double.
-* On Altix SGI with Intel 9.0 testmeta.c would not compile with -O3
- optimization flag.
-* On VAX, Scaleoffset filter isn't supported. The filter cannot be applied to
- HDF5 data generated on VAX. Scaleoffset filter only supports IEEE standard
- for floating-point data.
-* On Cray X1, a lone colon on the command line of h5dump --xml (as in
- the testh5dumpxml.sh script) is misinterpereted by the operating system
- and causes an error.
-* On mpich 1.2.5 and 1.2.6, we found that if more than two processes
- contribute no IO and the application asks to do IO with collective, we found
- that when using 4 processors, a simple collective write will be hung
- sometimes. This can be verified with t_mpi test under testpar.
-* On IRIX6.5, when C compiler version >7.4, the complicate MPI derived data type
- code will work. However, the user should be aware to enlarge MPI_TYPE_MAX environment
- variable to some certain value in order to use collective irregular selection code.
- For example, the current parallel HDF5 test needs to enlarge MPI_TYPE_MAX to
- 200,000 to make the test pass.
-* The dataset created or rewritten with the v1.6.3 library or after can't
- be read with the v1.6.2 library or before when Fletcher32 EDC(filter) is
- enabled. There was a bug in the calculating code of the Fletcher32
- checksum in the library before v1.6.3. The checksum value wasn't consistent
- between big-endian and little-endian systems. This bug was fixed in
- Release 1.6.3. However, after fixing the bug, the checksum value is no
- longer the same as before on little-endian system. The library release
- after 1.6.4 can still read the dataset created or rewritten with the library
- of v1.6.2 or before. SLU - 2005/6/30
-* For the version 6(6.02 and 6.04) of Portland Group compiler on AMD Opteron
- processor, there's a bug in the compiler for optimization(-O2). The library
- failed in several tests but all related to multi driver. The problem has
- been reported to the vendor.
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command poe.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
- The tests may fail with messages like "The socket name is already
- in use". HDF5 does not use sockets (except for stream-VFD). This is
- due to problems of the poe command trying to set up the debug socket.
- Check if there are many old /tmp/s.pedb.* staying around. These are
- sockets used by the poe command and left behind due to failed commands.
- Ask your system administrator to clean them out. Lastly, request IBM
- to provide a mean to run poe without the debug socket.
-
-* The C++ library's tests fails when compiling with PGI C++ compiler. The
- workaround until the problem is correctly handled is to use the
- flag "--instantiate=local" prior to the configure and build steps, as:
- setenv CXX "pgCC --instantiate=local" for pgCC 5.02 and higher
-
-
-* The stream-vfd test uses ip port 10007 for testing. If another
- application is already using that port address, the test will hang
- indefinitely and has to be terminated by the kill command. To try the
- test again, change the port address in test/stream_test.c to one not
- being used in the host.
-
-* The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system
- libraries on Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on IBM SP2 platform for the serial mode. The parallel mode works fine
- with this option.
-
- It is suggested that you don't use this option on these platforms
- during configuration.
-
-* With the gcc 2.95.2 compiler, HDF 5 uses the `-ansi' flag during
- compilation. The ANSI version of the compiler complains about not being
- able to handle the `long long' datatype with the warning:
-
- warning: ANSI C does not support `long long'
-
- This warning is innocuous and can be safely ignored.
-
-
-* The Stream VFD was not tested yet under Windows. It is not supported
- in the TFLOPS machine.
-
-
-* The ./dsets tests failed in the TFLOPS machine if the test program,
- dsets.c, is compiled with the -O option. The hdf5 library still works
- correctly with the -O option. The test program works fine if it is
- compiled with -O1 or -O0. Only -O (same as -O2) causes the test
- program to fail.
-
-* Certain platforms give false negatives when testing h5ls:
- - Cray J90 and Cray T90IEEE give errors during testing when displaying
- some floating-point values. These are benign differences due to
- the different precision in the values displayed and h5ls appears to
- be dumping floating-point numbers correctly.
-
-* Before building HDF5 F90 Library from source on Crays
- replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
- subdirectory in the top level directory with the Cray-specific files
- from this site:
- ftp://www.hdfgroup.uiuc.edu/pub/outgoing/hdf5/hdf5-1.8.0-pre/PATCH/
-
-* Not all platforms behave correctly with szip's shared libraries. Szip is
- disabled in these cases, and a message is relayed at configure time. Static
- libraries should be working on all systems that support szip, and should be
- used when shared libraries are unavailable. There is also a configure error
- on Altix machines that incorrectly reports when a version of szip without
- an encoder is being used.
-
-* On some platforms that use Intel and Absoft compilers to build HDF5 fortran library,
- compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90
- complaining about exit subroutine. Comment out the line
- IF (total_error .ne. 0) CALL exit (total_error)
-
-* On IA32 and IA64 systems, if you use a compiler other than GCC (such as
- Intel's ecc or icc compilers), you will need to modify the generated
- "libtool" program after configuration is finished. On or around line 104 of
- the libtool file, there are lines which look like:
-
- # How to pass a linker flag through the compiler.
- wl=""
-
- change these lines to this:
-
- # How to pass a linker flag through the compiler.
- wl="-Wl,"
-
- UPDATE: This is now done automatically by the configure script. However, if
- you still experience a problem, you may want to check this line in the
- libtool file and make sure that it has the correct value.
-
-* Information about building with PGI and Intel compilers is available in
- INSTALL file sections 5.7 and 5.8
-
-* On at least one system, (SDSC DataStar), the scheduler (in this case
- LoadLeveler) sends job status updates to standard error when you run
- any executable that was compiled with the parallel compilers.
-
- This causes problems when running "make check" on parallel builds, as
- many of the tool tests function by saving the output from test runs,
- and comparing it to an exemplar.
-
- The best solution is to reconfigure the target system so it no longer
- inserts the extra text. However, this may not be practical.
-
- In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
- the configure and build. This will cause "make check" to continue after
- detecting errors in the tool tests. However, in the case of SDSC DataStar,
- it also leaves you with some 150 "failed" tests to examine by hand.
-
- A second solution is to write a script to run serial tests and filter
- out the text added by the scheduler. A sample script used on SDSC
- DataStar is given below, but you will probably have to customize it
- for your installation.
-
- Observe that the basic idea is to insert the script as the first item
- on the command line which executes the the test. The script then
- executes the test and filters out the offending text before passing
- it on.
-
- #!/bin/csh
-
- set STDOUT_FILE=~/bin/serial_filter.stdout
- set STDERR_FILE=~/bin/serial_filter.stderr
-
- rm -f $STDOUT_FILE $STDERR_FILE
-
- ($* > $STDOUT_FILE) >& $STDERR_FILE
-
- set RETURN_VALUE=$status
-
- cat $STDOUT_FILE
-
- tail +3 $STDERR_FILE
-
- exit $RETURN_VALUE
-
- You get the HDF make files and test scripts to execute your filter script
- by setting the environment variable "RUNSERIAL" to the full path of the
- script prior to running configure for parallel builds. Remember to
- "unsetenv RUNSERIAL" before running configure for a serial build.
-
- Note that the RUNSERIAL environment variable exists so that we can
- can prefix serial runs as necessary on the target system. On DataStar,
- no prefix is necessary. However on an MPICH system, the prefix might
- have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
- get the serial tests to run at all.
-
- In such cases, you will have to include the regular prefix in your
- filter script.
-
-* H5Ocopy() does not copy reg_ref attributes correctly when shared-message
- is turn on. The value of the reference in the destination attriubte is
- wrong. This H5Ocopy problem will affect h5copy tool
-
-%%%%1.6.7%%%% Release Information for hdf5-1.6.7 (31/January/08)
-
-HDF5 version 1.6.7 released on Thu Jan 31 21:09:10 CST 2008
-================================================================================
-
-INTRODUCTION
-============
-This document describes the differences between HDF5-1.6.6 and HDF5-1.6.7
-It contains information on the platforms tested and known problems in
-HDF5-1.6.7. For more details, check the HISTORY.txt file in the HDF5 source.
-
-HDF5 documentation can be found in the distributed release source code
-in the subdirectory doc/html/ or on the THG (The HDF Group) FTP server:
-
- ftp://ftp.hdfgroup.org/HDF5/docs/
-
-Documentation for the current release in the HDF5 Release 1.6.x series is
-also on the HDF web site:
-
- http://hdfgroup.org/HDF5/doc1.6/
-
-For more information, see the HDF5 home page:
-
- http://hdfgroup.org/products/hdf5/
-
-If you have any questions or comments, please see the HDF Support page
-for a list of available resources:
-
- http://hdfgroup.org/services/support.html
-
-
-CONTENTS
-========
-- New Features
-- Support for New Platforms, Languages and Compilers
-- Bug Fixes since HDF5-1.6.6
-- Documentation
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
- Configuration:
- -------------------------
- '--enable-stream-vfd' and '--disable-stream-vfd' are no longer valid
- configure options because the stream I/O driver has ben removed from
- the distribution.
-
- Source code distribution
- ========================
- Library:
- --------
- The stream I/O driver is not included with the HDF5 Library in this
- release. The source code files hdf5/src/H5FDstream.c and
- hdf5/src/H5FDstream.h and the driver ENUM value H5FD_STREAM have been
- removed.
-
- Parallel Library:
- -----------------
- None
-
- Tools:
- ------
- None
-
- F90 API:
- --------
- None
-
- C++ API:
- --------
- None
-
-
-Support for New Platforms, Languages and Compilers
-==================================================
-
-No new platorms, languages, or compilers are supported in this release.
-
-
-Bug Fixes since HDF5-1.6.6 Release
-==================================
-
- Library
- -------
- - H5Iget_name could not be used with an object identifier returned
- by H5Rdereference; the function would not be able to determine
- a valid object name. It has been fixed. SLU - 2008/1/30
- - Changed library's behavior for reading files that might have
- corrupted object header information from a previous (buggy)
- version of the library. By default, the library now rebuilds the
- correct object header information instead of issuing an error.
- Previous "strict" file format interpretation can be enabled with
- the "--enable-strict-format-checks" configure option.
- QAK - 2008/01/13
- - Fixed bug in H5Epush() which was clearing the error stack before
- pushing new error value. QAK - 2007/08/23
- - Fixed bug in H5Ewalk() which was not passing back the return value
- from error stack walking callback. QAK - 2007/08/23
-
-
- Configuration
- -------------
- None
-
-
- Performance
- -------------
- None
-
-
- Tools
- -----
- None
-
-
- Documentation
- -------------
- None
-
-
- F90 API
- -------
- None
-
-
- C++ API
- -------
- None
-
-
-Documentation
-=============
- HDF5 documentation can be found in the distributed release source
- code in the subdirectory doc/html/ (start with index.html) or on the
- THG (The HDF Group) FTP server:
-
- ftp://ftp.hdfgroup.org/HDF5/docs/
-
- Online documentation for the current release in the HDF5 Release 1.6.x
- series can be found on the THG web site:
-
- http://hdfgroup.org/HDF5/doc1.6/
-
- A listing of interface changes from release to release can be found
- in the document "HDF5 Software Changes from Release to Release":
-
- http://hdfgroup.org/HDF5/doc1.6/ADGuide/Changes.html
-
- Since the stream I/O driver is not included in this release, the
- functions H5Pset_fapl_stream and H5Pget_fapl_stream and the stream
- ENUM value H5FD_STREAM have been removed from the documentation.
-
-
-Platforms Tested
-================
-
- AIX 5.2 (32/64 bit) xlc 8.0.0.11
- (datastar) xlC 8.0
- xlf 10.01.0000.0002
-
- FreeBSD 6.2 (32- and 64-bit) gcc and g++3.4.6
- (duty and liberty) gcc and g++ 4.2.1
-
- IRIX64 6.5 MIPSpro cc 7.4.4m
- (ucar mop1 64 & n32) F90 MIPSpro 7.4.4m (64 only)
- C++ MIPSpro cc 7.4.4m
-
- Linux 2.4.21-47.ELsmp #1 SMP gcc 3.2.3
- i686 i386 GNU/Linux
- (osage)
-
- Linux 2.6.9-42.0.10.ELsmp #1 gcc (GCC) 3.4.6
- SMP i686 i386 G95 (GCC 4.0.3 (g95 0.91!) April 18 2007)
- (kagiso) PGI C, Fortran, C++ 7.0-7 32-bit
- Intel(R) C Compiler for 32-bit
- applications, Version 9.1
- Intel(R) C++ Compiler for 32-bit
- applications, Version 9.1
- Intel(R) Fortran Compiler for 32-bit
- applications, Version 9.1
- Absoft 32-bit Fortran 95 10.0.4
- MPICH mpich2-1.0.6p1 compiled with
- gcc 4.2.1 and G95 (GCC 4.0.3 (g95 0.91!)
-
- Linux 2.6.16.46-0.12-debug #1 Intel(R) C++ Version 10.0.025
- SMP ia64 GNU/Linux Intel(R) Fortran Itanium(R) Version 10.0.025
- (ucar hir1)
-
- Linux 2.6.16.46-0.14-smp #1 Intel(R) C++ for Intel(R) EM64T Ver. 9.1.037
- SMP x86_64 GNU/Linux Intel(R) Fortran Intel(R) EM64T Ver. 9.1.031
- (smirom) PGI C, Fortran, C++ Version 7.0-7
- for 64-bit target on x86-64
- tested for both 32- and 64-bit binaries
-
- Linux 2.6.5-7.287.3-sn2 #1 Intel(R) C++ Version 9.0
- Altix SMP ia64 Intel(R) Fortran Itanium(R) Version 9.0
- (cobalt) SGI MPI
-
- SunOS 5.8 32- and 64-bit Sun WorkShop 6 update 2 C 5.3
- (sol) Sun WorkShop 6 update 2 Fortran 95 6.2
- Sun WorkShop 6 update 2 C++ 5.3
-
- SunOS 5.10 32- and 64-bit Sun WorkShop 6 update 2 C 5.8
- (linew) Sun WorkShop 6 update 2 Fortran 95 8.2
- Sun WorkShop 6 update 2 C++ 5.8
- Patch 121019-06
-
- Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
- (tungsten) Intel(R) C++ Version 9.0
- Intel(R) Fortran Compiler Version 9.0
- PGI C Version 6.0-5
- PGI C++ Version 6.0-5
- PGI Fortran Version 6.0-5
- gcc (GCC) 3.2.2 (Red Hat Linux 3.2.2-5)
-
- Xeon Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
- (abe) Intel(R) C++ Version 10.0
- Intel(R) Fortran Compiler Version 10.0
- Open MPI 1.2.2
-
- IA-64 Linux 2.4.21-309.tg1 #1 SMP
- ia64 gcc (GCC) 3.2.2
- (NCSA tg-login) Intel(R) C++ Version 8.1
- Intel(R) Fortran Compiler Version 8.1
- mpich-gm-1.2.6..14-intel-r2
-
- Windows XP Visual Studio 6.0
- Visual Studio .NET (with Intel Fortran 9.1)
- Visual Studio 2005 (with Intel Fortran 9.1)
- cygwin (gcc 3.4.4)
-
- Windows Vista Visual studio 2005
- MAC OS X Intel Darwin 8.10.1
- i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
- g95 0.91
-
-
-Supported Configuration Features Summary
-========================================
-
-Key: y = Tested and supported
- n = Not supported or not tested in this release
- C = Cluster
- W = Workstation
- ( ) = Footnote appears below second table
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-Solaris2.8 32-bit n y n y n y
-Solaris2.8 64-bit n y n n y y
-Solaris2.10 32-bit n y n y y y
-Solaris2.10 64-bit n y n n y y
-IRIX64_6.5 32-bit n n n n y y
-IRIX64_6.5 64-bit n y n n y y
-WinXP Visual Studio 6.0 n n n y y y
-WinXP CYGWIN n n n y y y
-WinXP 2005 n y n y y y
-WinXP .Net n y n y y y
-WinVista 2005 n n n y y y
-Mac OS X 10.4.10 n y n y y y
-AIX-5.2 & 5.3 32- and 64-bit y y y y y y
-FreeBSD 6.2 32- and 64-bit n n n y y y
-RedHat Linux 2.4.21 W n n n n y n
-RedHat Linux 2.6.9-42 i686 GNU (1) W y y y y y y
-RedHat Linux 2.6.9-42 i686 Intel W n y n y y n
-RedHat Linux 2.6.9-42 i686 PGI W n y n y y n
-SuSE Linux 2.6.16 x86_64 GNU (1) W y y n y y y
-SuSE Linux 2.6.16 x86_64 Intel W n y n y y n
-SuSE Linux 2.6.16 x86_64 PGI W n y n y y n
-RHEL 4 Linux 2.6.9 Xeon Lustre C n y n y y y
-RedHat Linux 2.4 Xeon Lustre C n y n y y n
-SuSE Linux 2.4 ia64 C y y y y y y
-SuSe Linux 2.6.5 SGI Altix ia64 n y n y y y
-
-
-Platform Shared static- Thread-
- libraries(4) exec safe
-Solaris2.8 32- and 64-bit y n y
-Solaris2.10 32- and 64-bit y n y
-IRIX64_6.5 32-bit y n y
-IRIX64_6.5 64-bit y n y
-WinXP Visual Studio 6.0 y n n
-WinXP CYGWIN y n n
-WinXP 2005 y n n
-WinXP .Net y n n
-WinVista 2005 y n n
-Mac OS X 10.4.10 y n n
-AIX-5.2 & 5.3 32- and 64-bit n n n
-FreeBSD 6.2 32- and 64-bit y n n
-RedHat Linux 2.4.21 W y n n
-SuSE Linux 2.6.9-42 i686 GNU (1) W y n y
-SuSE Linux 2.6.9-42 i686 Intel W y n n
-SuSE Linux 2.6.9-42 i686 PGI W n n n
-SuSE Linux 2.6.16 x86_64 GNU (1) W y n y
-SuSE Linux 2.6.16 x86_64 Intel W y n n
-SuSE Linux 2.6.16 x86_64 PGI W n n n
-RHEL 4 Linux 2.6.9 Xeon Lustre C y n n
-RedHat Linux 2.4 Xeon Lustre C y n n
-SuSE Linux 2.4 ia64 C y n n
-SuSe Linux 2.6.5 SGI Altix ia64 n n n
-
-Compiler versions for each platform are listed in the "Platforms Tested"
-table found elsewhere in this file (RELEASE.txt). Unless otherwise noted,
-compilers used are the system compilers.
-
-Footnotes:
-(1) Fortran compiled with g95.
-
-
-Known Problems
-==============
-* We discovered two problems when running collective IO parallel HDF5 tests
- with chunking storage with the ChaMPIon MPI compiler on tungsten, a Linux
- cluster at NCSA.
- Under some complex selection cases,
- 1) MPI_Get_element returns the wrong value.
- 2) MPI_Type_struct also generates the wrong derived datatype and corrupt
- data may be generated.
- This only happens when turning on collective IO with chunking storage
- with some complex selections. We haven't found these problems on other
- MPI-IO compilers. If you encounter these problems, you may use Independent
- IO instead.
-
- To avoid this problem, change the following line in your code:
- H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
-
- to
- H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
-
- KY - 2007/08/24
-
-* QSC (an HP alpha-based OSF1 cluster) does not create h5pfc correctly. It
- does not include the -lmpi properly. This will be fixed in the next
- release. AKC - 2007/08/07.
-
-* On IRIX64 6.5 (UCAR SGI mop1), when testing HDF5 tools with an HDF5 shared
- library, especially for h5repacktst and h52gifgentst, the following (or a
- similar) error message may appear:
- "523648:lt-h5repacktst: rld: Fatal Error: Cannot Successfully map soname
- 'libh5test.so.1' under any of the filenames .......(bunch of directories)
- "
- And the testing will fail.
-
- We believe this is a libtool problem. One way to get rid of this is to
- add the paths of libh5test.so.1 and libh5.so.1 to the shared library path.
-
- For 32-bit:
- You may do this, under csh:
- setenv LD_LIBRARYN32_PATH .......(existing paths):[full path of HDF5
- directory/test/.libs]:[full path of HDF5 directory/src/.libs]
-
- For 64-bit:
- setenv LD_LIBRARY64_PATH ......(existing paths):[full path of HDF5
- directory/test/.libs]:[full path of HDF5 directory/src/.libs]
-
- NOTE: This problem ONLY affects the testing of the HDF5 library when you
- build from source. It won't affect any applications that would like to link
- with the HDF5 shared library since the shared library path needs to be set
- anyway. KY - 2007/8/2
-
-* QSC (an HP alpha-based OSF1 cluster) failed the testpar/testphdf5 sub-test
- "calloc". All other tests passed. This indicates that a dataset using
- chunked storage created by serial HDF5 may not work properly with parallel
- HDF5. The calloc test can be skipped by running "prun ... testphdf5 -x
- calloc". AKC - 2007/7/12.
-
-* The Intel C Compiler for the Linux x86_64 platform (EM64T-based, v8.1) has
- an optimization error in the datatypes conversion code. Before running
- configure, edit the file config/intel-flags by changing the setting of
- PROD_CFLAGS from -O3 to -O0. Then run configure. AKC - 2005/11/10.
-
-* When testing parallel HDF5 with the C compiler version MIPSpro 7.4.3 on IRIX
- 6.5, set the environment variable MPI_TYPE_MAX to be a bigger number, for
- example 120000, in order to pass the complicated collective IO tests inside
- the parallel HDF5 library. This is not a problem inside the parallel HDF5
- library. You can always set a bigger number on your system. KY - 2005/10/6
-
-* A contiguous or chunked dataset created by a sequential version of HDF5
- might not be able to be modified with a parallel version of the library.
- Use the H5Pset_alloc_time function with H5D_ALLOC_TIME_EARLY to set up the
- dataset creation property list to avoid the problem. EIP - 2005/09/09
-
-* A dataset created or rewritten with the v1.6.3 library or after can't
- be read with the v1.6.2 library or before when Fletcher32 EDC (a filter) is
- enabled. There was a bug in the calculating code of the Fletcher32
- checksum in the library before v1.6.3. The checksum value wasn't consistent
- between big-endian and little-endian systems. This bug was fixed in
- Release 1.6.3. However, after fixing the bug, the checksum value is no
- longer the same as before on little-endian system. HDF5 library releases
- after 1.6.4 can still read datasets created or rewritten with an HDF5
- library of v1.6.2 or before. SLU - 2005/7/8
-
-* For version 6 (6.02 and 6.04) of the Portland Group compiler on AMD Opteron
- processor, there's a bug in the compiler for optimization(-O2). The library
- failed in several tests, all related to the multi driver. The problem has
- been reported to the vendor.
-
-* test/big fails sometimes with the message "Possible overlap with another
- region." The test selects regions randomly, and this error occurs when
- two regions overlap each other; it is a bug in the test and not in
- HDF5. Since the error is triggered by a random situation, it will
- usually disappear if the test is re-run.
-
-* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but
- have a "guard" statement in stdint.h that will #error and skip the rest
- of the header file if the C99 option is not used explicitly. Hardsetting
- $CC to c99 will resolve the problem. AKC - 2004/12/13
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command poe.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
-
- The tests may also fail with messages like "The socket name is already
- in use". HDF5 does not use sockets. This is due to problems of the
- poe command trying to set up the debug socket. Check whether there are
- many old /tmp/s.pedb.* files staying around. These are sockets used by
- the poe command and left behind due to failed commands. Ask your system
- administrator to clean them out. Lastly, request IBM to provide a means
- to run poe without the debug socket.
-
-* The h5dump tests may fail to match the expected output on some platforms
- (e.g. parallel jobs, Windows) where the error messages directed to
- "stderr" do not appear in the "right order" with output from stdout.
- This is not an error.
-
-* The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system
- libraries on Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on the IBM SP2 platform for the serial mode. The parallel mode works fine
- with this option.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on the HPUX 11.00.
-
- It is suggested that you don't use this option on these platforms
- during configuration.
-
-* Use the --disable-shared configure flag if building with an Absoft Fortran
- compiler.
-
-* Information about building with PGI and Intel compilers is available in
- INSTALL file sections 5.7 and 5.8.
-
-* In LANL QSC, the new cc compiler has problems converting small values of
- long long (absolute values less than 1**-308) to double. This triggers
- the test/dtypes to report failure in the following test:
- Testing random sw long double -> double conversions
- If -ieee is used, the converted doubles spread over the range 0.0 to
- 10**-308. If -ieee is not used, the converted double values are mostly
- 0.0, but occasionally appear as 10**-308. This has been reported to the
- system staff.
-
- All other tests have passed.
-
-* On at least one system, SDSC DataStar, the scheduler (in this case
- LoadLeveler) sends job status updates to standard error when you run
- any executable that was compiled with the parallel compilers.
-
- This causes problems when running "make check" on parallel builds, as
- many of the tool tests function by saving the output from test runs,
- and comparing it to an exemplar.
-
- The best solution is to reconfigure the target system so it no longer
- inserts the extra text. However, this may not be practical.
-
- In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
- the configure and build. This will cause "make check" to continue after
- detecting errors in the tool tests. However, in the case of SDSC DataStar,
- it also leaves you with some 150 "failed" tests to examine by hand.
-
- A second solution is to write a script to run serial tests and filter
- out the text added by the scheduler. A sample script used on SDSC
- DataStar is given below, but you will probably have to customize it
- for your installation.
-
- Observe that the basic idea is to insert the script as the first item
- on the command line which executes the test. The script then
- executes the test and filters out the offending text before passing
- it on.
-
- #!/bin/csh
-
- set STDOUT_FILE=~/bin/serial_filter.stdout
- set STDERR_FILE=~/bin/serial_filter.stderr
-
- rm -f $STDOUT_FILE $STDERR_FILE
-
- ($* > $STDOUT_FILE) >& $STDERR_FILE
-
- set RETURN_VALUE=$status
-
- cat $STDOUT_FILE
-
- tail +3 $STDERR_FILE
-
- exit $RETURN_VALUE
-
- You get the HDF5 make files and test scripts to execute your filter script
- by setting the environment variable "RUNSERIAL" to the full path of the
- script prior to running configure for parallel builds. Remember to
- "unsetenv RUNSERIAL" before running configure for a serial build.
-
- Note that the RUNSERIAL environment variable exists so that we can
- prefix serial runs as necessary on the target system. On DataStar,
- no prefix is necessary. However, on an MPICH system, the prefix might
- have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
- get the serial tests to run at all.
-
- In such cases, you will have to include the regular prefix in your
- filter script. JM - 2004/9/15
-
-%%%%1.6.6%%%% Release Information for hdf5-1.6.6 (16/August/08)
-
-HDF5 version 1.6.6 released on Thu Aug 16 11:17:10 CDT 2007
-================================================================================
-
-INTRODUCTION
-============
-This document describes the differences between HDF5-1.6.5 and
-HDF5-1.6.6 It contains information on the platforms tested and
-known problems in HDF5-1.6.6. For more details, check the HISTORY.txt
-file in the HDF5 source.
-
-HDF5 documentation can be found in the distributed release source
-code in the subdirectory doc/html/ or on the THG (The HDF Group)
-ftp server (ftp.hdfgroup.org) in the directory:
-
- /HDF5/docs/
-
-Documentation for the current release is also on the HDF web site:
-
- http://hdfgroup.org/HDF5/doc/
-
-For more information, see the HDF5 home page at:
-
- http://hdfgroup.org/HDF5/
-
-If you have any questions or comments, please send them to:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-- New Features
-- Support for New Platforms, Languages and Compilers
-- Bug Fixes since HDF5-1.6.5
-- Documentation
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
- Configuration:
- -------------------------
- - HDF5 now uses autoconf 2.61 to generate configure. MAM - 2007/7/25.
-
- Source code distribution
- ========================
- Library:
- --------
- - None
-
- Parallel Library:
- -----------------
- - None
-
- Tools:
- ------
- - h52gif and gif2h5: Both these tools were revised to include High
- Level Image API support. Tests were added to /hl/tools/gif2h5.
- PVN - 2007/04/13
- - h5dump: Added support for double long type H5T_NATIVE_LDOUBLE.
- PVN - 2007/03/13
- - h5dump: Added support for binary output; see usage. PVN 2007/03/13
- - h5repack: Added support for reading and writing by hyperslabs for
- large files. PVN - 2007/03/01
- - h5repack: A new option allows the copy to use the source file type
- (default) instead of the previous conversion to native type.
- PVN - 2007/03/01
- - h5repack: Added output of the percentage of compression achieved.
- PVN - 2007/03/01
- - h5diff: Added support for comparing dataset regions. PVN -
- 2007/02/20
- - h5diff: Added support for reading and comparing by hyperslabs for
- large files. PVN - 2007/02/20
- - h5diff: Added printing of dataset dimensions along with dataset
- name.
- PVN - 2007/02/19
-
- F90 API:
- --------
- - None
-
- C++ API:
- --------
- - Added support for Szip: DSetCreatPropList::setSzip - BMR 2007/01/24
-
-
-Support for New Platforms, Languages and Compilers
-==================================================
- - Added support for MAC Intel (Darwin 8.8.2) (gcc 4.0.1 and g95 0.91)
- EIP - 2007/02/13
- - Added support for GNU C compiler version 4.2.1 for FreeBSD 6.2
- (32- and 64-bit)
-
-
-Bug Fixes since HDF5-1.6.5 Release
-==================================
-
- Library
- -------
- - Fixed several bugs with writing fill values for datasets that have
- a variable-length datatype or component datatype. QAK -
- 2007/06/19
- - STDIO driver didn't support files bigger than 2GB because the OFFSET
- parameter of fseek is of type LONG INT, not big enough for big
- files. Use fseeko instead for big files if it's available on the
- system. SLU - 2007/4/5
- - Relaxed restrictions on attribute operations to allow a file ID to
- be used as the "location ID". If a file ID is used, the attribute
- operation will occur on the root group of the file.
- QAK - 2007/02/09
- - Fixed a bug in H5Sselect_valid() that caused an incorrect value to
- be returned (0) instead of FAIL on error conditions such as the
- selection or extent not being defined. CMC - 2007/01/05
- - Fixed potential file corruption bug which could overwrite a portion
- of an object's header when an attribute was renamed. If the new
- name for the attribute was longer than the old name, it was
- possible
- that the attribute would grow enough to overwrite another message
- in the object's header. QAK - 2007/01/02
- - Fixed file corruption bug which could write an incorrect number of
- messages to an object's header under certain circumstances.
- Generally, the sequence of actions to generate this bug looks
- like this:
- - Create an object.
- - Close the file.
- - Re-open the file.
- - Add 2 (or more) attributes to the object.
- - Close the file.
- - Re-open the file.
- - Delete one of the attributes on the object.
- - Add a smaller attribute to the object.
- - Delete the smaller attribute on the object.
- - Add a larger attribute on the object.
-
- After this, the number of header messages stored for the object
- will be off by one. Other sequences of modifying attributes on an
- object could also trigger this bug. If you are opening an
- object and the bottom few messages of the HDF5 error stack
- resembles the following, the object has been affected by this bug:
-
- #007: ../../hdf5_v1.6/src/H5C.c line 3887 in H5C_load_entry():
- unable to load entry
- major(08): Meta data cache layer
- minor(40): Unable to load metadata into cache
- #008: ../../hdf5_v1.6/src/H5Ocache.c line 332 in H5O_load():
- corrupt object header - too few messages
- major(12): Object header layer
- minor(40): Unable to load metadata into cache
-
- Specifically, "corrupt object header" is the best string to search
- for in the HDF5 error stack output.
-
- If your files have been affected by this bug, or you are concerned
- that your files might have been, please contact the HDF Helpdesk
- at help@hdfgroup.org for a tool to detect and repair files
- affected by this problem. QAK - 2006/6/16
-
- - Fixed various problems with retrieving names of objects, especially
- with mounted files. QAK - 2005/12/25
-
- Configuration
- -------------
- - Changed to default to --disable-shared if parallel is enabled.
- AKC - 2007/5/12
- - Corrected a coding error in configure when it tries to locate the
- needed MPI and MPI-IO library for the fortran interface.
- AKC - 007/5/9.
- - Changed default fortran compiler to g95 when gcc is used.
- AKC - 007/2/17.
- - Configure can now use any tr command. No more need for
- defining the variable TR, nor is it supported. AKC - 2006/05/20
-
- Performance
- -------------
- - None
-
- Tools
- -----
- - Fixed a bug in h5dump regarding the display of named datatypes
- attributes. PVN - 2007/03/13
- - Fixed a bug in h5dump regarding the display of group comments.
- PVN - 2007/03/13
- - Fixed a bug in h5dump regarding the display of hardlinks pointing
- to the root group. PVN - 2007/03/13
- - Fixed a bug in the h5diff percentage option -p. PVN - 2007/03/05
- - Fixed a bug in h5dump that caused array indices greater than 2^32-1
- not to be printed correctly. PVN - 2007/2/19
-
- Documentation
- -------------
- - Corrected errors and extended the descriptions in Reference Manual
- entries for several functions.
-
- F90 API
- -------
- - None
-
- C++ API
- -------
- - Changed
- StrType::StrType(const size_t& size);
- to
- StrType::StrType(const int dummy, const size_t& size);
- because the first one clashed with
- StrType::StrType(const hid_t existing_id); - BMR 2007/05/03
- - Wrappers of H5Rcreate had incorrect prototypes. Added these
- overloaded functions:
- IdComponent::reference(void* ref, const char* name,
- DataSpace& dataspace, H5R_type_t ref_type = H5R_DATASET_REGION)
- IdComponent::void reference(void* ref, const char* name)
- IdComponent::reference(void* ref, const H5std_string& name)
- and will remove these incorrect member functions:
- DataSet::Reference
- DataType::Reference
- Group::Reference
- H5File::Reference
- - Added wrappers for H5Rdereference as constructors:
- DataSet(IdComponent& obj, void* ref);
- Group(IdComponent& obj, void* ref);
- DataType(IdComponent& obj, void* ref);
-
-
-Documentation
-=============
-
- HDF5 documentation can be found in the distributed release source
- code in the subdirectory doc/html/ (start with index.html) or on the
- THG (The HDF Group) ftp server (ftp.hdfgroup.org) in the directory:
-
- /HDF5/docs/
-
- Online documentation for the current release can be found on the THG
- web site:
-
- http://hdfgroup.org/HDF5/doc/
-
-
-Platforms Tested
-================
-
- AIX 5.2 (32/64 bit) xlc 6.0.0.8
- (datastar) xlC 6.0.0.9
- xlf 8.1.1.7
- mpcc_r 6.0.0.8
- mpxlf_r 8.1.1.7
-
- AIX 5.3 (32/64 bit) xlc 7.0.0.0
- (copper) xlC 7.0.
- xlf 9.1.0.3
-
- FreeBSD 6.2 (32- and 64-bit) gcc and g++3.4.6
- (duty and liberty) gcc and g++ 4.2.1
-
- HP-UX B.11.23 HP aC++/ANSI C B3910B A.06.02
- (sirius) HP F90 v3.1 (32-bit only)
- HP aC++/ANSI C B3910B A.06.02
-
- IRIX64 6.5 MIPSpro cc 7.4.4m
- (ucar mop1 64 & n32) F90 MIPSpro 7.4.4m (64 only)
- C++ MIPSpro cc 7.4.4m
-
- Linux 2.4.21-47.ELsmp #1 SMP gcc 3.2.3
- i686 i386 GNU/Linux
- (osage)
-
- Linux 2.6.9-42.0.10.ELsmp #1 gcc (GCC) 3.4.6
- SMP i686 i386 G95 (GCC 4.0.3 (g95 0.91!) Nov 21 2006)
- (kagiso) PGI C, Fortran, C++ 6.2-5 32-bit
- icc (ICC) 9.1
- Intel(R) C++ Compiler for 32-bit
- applications, Version 9.1
- Intel(R) Fortran Compiler for 32-bit
- applications, Version 9.1
- Absoft 32-bit Fortran 95 10.0.4
- MPICH mpich2-1.0.4p1 compiled with
- gcc 3.4.6 and G95 (GCC 4.0.3 (g95 0.91!)
-
- Linux 2.6.16.46-0.12-debug #1
- SMP ia64 GNU/Linux Intel(R) C++ Version 10.0.025
- (ucar hir1) Intel(R) Fortran Itanium(R) Version 10.0.025
-
- Linux 2.6.16.46-0.14-smp #1 Intel(R) C++ for Intel(R) EM64T Ver. 9.1.037
- SMP x86_64 GNU/Linux Intel(R) Fortran Intel(R) EM64T Ver. 9.1.031
- (smirom) PGI C, Fortran, C++ Version 6.2-5
- for 64-bit target on x86-64
- tested for both 32- and 64-bit binaries
-
- Linux 2.6.5-7.283-rtgfx Altix
- SMP ia64 Intel(R) C++ Version 9.0
- (cobalt) Intel(R) Fortran Itanium(R) Version 9.0
- SGI MPI
-
- OSF1 V5.1 (QSC) Compaq C V6.5-011
- (See "Known Problems.") HP Fortran V5.5A-3548
- Compaq C++ V6.5-036
- MPIX200_64_r13.4
-
- SunOS 5.8 32- and 64-bit Sun WorkShop 6 update 2 C 5.3
- (sol) Sun WorkShop 6 update 2 Fortran 95 6.2
- Sun WorkShop 6 update 2 C++ 5.3
-
- SunOS 5.10 32- and 64-bit Sun WorkShop 6 update 2 C 5.8
- (linew) Sun WorkShop 6 update 2 Fortran 95 8.2
- Sun WorkShop 6 update 2 C++ 5.8
- Patch 121019-06
-
- Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
- (tungsten) Intel(R) C++ Version 9.0
- Intel(R) Fortran Compiler Version 9.0
- PGI C Version 6.0
- PGI C++ Version 6.0
- PGI Fortran Version 6.0
- gcc (GCC) 3.2.2 (Red Hat Linux 3.2.2-5)
-
- Xeon Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
- (abe) Intel(R) C++ Version 10.0
- Intel(R) Fortran Compiler Version 10.0
- Open MPI 1.2.2
-
- IA-64 Linux 2.4.21.SuSE_292.til1
- ia64 gcc (GCC) 3.2.2
- (NCSA tg-login) Intel(R) C++ Version 8.0
- Intel(R) Fortran Compiler Version 8.0
- mpich-gm-1.2.5..10-intel-r2
-
- Windows XP Visual Studio 6.0
- Visual Studio .NET (with Intel Fortran 9.0)
- Visual Studio 2005 (with Intel Fortran 9.0)
- cygwin (gcc 3.4.4)
-
- MAC OS X Intel Darwin 8.10.1
- i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
- g95 0.91
-
-
-Supported Configuration Features Summary
-========================================
-
-Key: y = Tested and supported
- n = Not supported or not tested in this release
- C = Cluster
- W = Workstation
- ( ) = Footnote appears below second table
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-Solaris2.8 32- and 64-bit n y n y y y
-Solaris2.10 32- and 64-bit n y n y y y
-IRIX64_6.5 32-bit n n n n y y
-IRIX64_6.5 64-bit n y n n y y
-HPUX11.23-32bit n y n y y y
-HPUX11.23-64bit n n n y y y
-WinXP Visual Studio 6.0 n n n y y y
-WinXP CYGWIN n n n y y y
-WinXP 2005 n y n y y y
-WinXP .Net n y n y y y
-Mac OS X 10.4.10 n y n y y y
-AIX-5.2 & 5.3 32- and 64-bit y y y y y y
-FreeBSD 6.2 32- and 64-bit n n n y y y
-RedHat Linux 2.4.21 W n n n y y y
-SuSE Linux 2.6.9-42 i686 GNU (1) W y y y y y y
-SuSE Linux 2.6.9-42 i686 Intel W n y n y y y
-SuSE Linux 2.6.9-42 i686 PGI W n y n y y y
-SuSE Linux 2.6.16 x86_64 GNU (1) W y y y y y y
-SuSE Linux 2.6.16 x86_64 Intel W n y n y y y
-SuSE Linux 2.6.16 x86_64 PGI W n y n y y y
-RHEL 4 Linux 2.6.9 Xeon Lustre C y y y y y y
-RedHat Linux 2.4 Xeon Lustre C n y n y y y
-SuSE Linux 2.4 ia64 C y y y y y y
-SuSe Linux 2.6.16 SGI Altix ia64 n y n y y y
-SuSe Linux 2.6.5 SGI Altix ia64 n y n y y y
-OSF1 v5.1 y y y y y n
-
-
-Platform Shared static- Thread- STREAM-
- libraries(4) exec safe VFD
-Solaris2.8 32- and 64-bit y n y y
-Solaris2.10 32- and 64-bit y n y y
-IRIX64_6.5 32-bit y n y y
-IRIX64_6.5 64-bit y n y y
-HPUX11.23-32bit y (3) n n y
-HPUX11.23-64bit y (3) n n y
-WinXP Visual Studio 6.0 y n n n
-WinXP CYGWIN y n n n
-WinXP 2005 y n n n
-WinXP .Net y n n n
-Mac OS X 10.4.10 y n n y
-AIX-5.2 & 5.3 32- and 64-bit n n n y
-FreeBSD 6.2 32- and 64-bit y n n y
-RedHat Linux 2.4.21 W y n n y
-SuSE Linux 2.6.9-42 i686 GNU (1) W y n y y
-SuSE Linux 2.6.9-42 i686 Intel W y n n y
-SuSE Linux 2.6.9-42 i686 PGI W n n n y
-SuSE Linux 2.6.16 x86_64 GNU (1) W y n n y
-SuSE Linux 2.6.16 x86_64 Intel W y n n y
-SuSE Linux 2.6.16 x86_64 PGI W n n n y
-RHEL 4 Linux 2.6.9 Xeon Lustre C y n n y
-RedHat Linux 2.4 Xeon Lustre C y n n y
-SuSE Linux 2.4 ia64 C y n n y
-SuSe Linux 2.6.16 SGI Altix ia64 n n n y
-SuSe Linux 2.6.5 SGI Altix ia64 n n n y
-OSF1 v5.1 n n n y
-
-Compiler versions for each platform are listed in the "Platforms Tested"
-table found elsewhere in this file (RELEASE.txt). Unless otherwise noted,
-compilers used are the system compilers.
-
-Footnotes:
-(1) Fortran compiled with g95.
-(2) In most cases, shared libraries are provided only for the C library,
- except on Windows where they are provided for C, C++, and Fortran.
-(3) C++ works only with static libraries.
-
-
-Known Problems
-==============
-* QSC (an HP alpha-based OSF1 cluster) does not create h5pfc correctly. It
- does not include the -lmpi properly. This will be fixed in the next
- release. AKC - 2007/08/07.
-
-* On IRIX64 6.5 (UCAR SGI mop1), when testing HDF5 tools with an HDF5 shared
- library, especially for h5repacktst and h52gifgentst, the following (or
- similar) error message may appear:
- "523648:lt-h5repacktst: rld: Fatal Error: Cannot Successfully map soname
- 'libh5test.so.1' under any of the filenames .......(bunch of directories)
- "
- And the testing will fail.
- We believe this is a libtool problem. One way to get rid of this is to
- add the paths of libh5test.so.1 and libh5.so.1 to the shared library path.
-
- For 32-bit:
- You may do this, under csh:
- setenv LD_LIBRARYN32_PATH .......(existing paths):[full path of HDF5
- directory/test/.libs]:[full path of HDF5 directory/src/.libs]
-
- For 64-bit:
- setenv LD_LIBRARY64_PATH ......(existing paths):[full path of HDF5
- directory/test/.libs]:[full path of HDF5 directory/src/.libs]
-
- NOTE: This problem ONLY affects the testing of the HDF5 library when you
- build from source. It won't affect any applications that would like to link
- with the HDF5 shared library since the shared library path needs to be set
- anyway. KY - 2007/8/2
-
-* QSC (an HP alpha-based OSF1 cluster) failed the testpar/testphdf5 sub-test
- "calloc". All other tests passed. This indicates that a dataset using
- chunked storage created by serial HDF5 may not work properly with parallel
- HDF5. The calloc test can be skipped by running "prun ... testphdf5 -x
- calloc". AKC - 2007/7/12.
-
-* The Intel C Compiler for the Linux x86_64 platform (EM64T-based, v8.1) has
- an optimization error in the datax types conversion code. Before running
- configure, edit the file config/intel-flags by changing the setting of
- PROD_CFLAGS from -O3 to -O0. Then run configure. AKC - 2005/11/10.
-
-* When testing parallel HDF5 with the C compiler version MIPSpro 7.4.3 on IRIX
- 6.5, set the environment variable MPI_TYPE_MAX to be a bigger number, for
- example 120000, in order to pass the complicated collective IO tests inside
- the parallel HDF5 library. This is not a problem inside the parallel HDF5
- library. You can always set a bigger number on your system. KY - 2005/10/6
-
-* A contiguous or chunked dataset created by a sequential version of HDF5
- might not be able to be modified with a parallel version of the library.
- Use the H5Pset_alloc_time function with H5D_ALLOC_TIME_EARLY to set up the
- dataset creation property list to avoid the problem. EIP - 2005/09/09
-
-* The dataset created or rewritten with the v1.6.3 library or after can't
- be read with the v1.6.2 library or before when Fletcher32 EDC (a filter) is
- enabled. There was a bug in the calculating code of the Fletcher32
- checksum in the library before v1.6.3. The checksum value wasn't consistent
- between big-endian and little-endian systems. This bug was fixed in
- Release 1.6.3. However, after fixing the bug, the checksum value is no
- longer the same as before on little-endian system. The library release
- after 1.6.4 can still read the dataset created or rewritten with the library
- of v1.6.2 or before. SLU - 2005/7/8
-
-* For version 6 (6.02 and 6.04) of the Portland Group compiler on AMD Opteron
- processor, there's a bug in the compiler for optimization(-O2). The library
- failed in several tests, all related to the multi driver. The problem has
- been reported to the vendor.
-
-* test/big fails sometimes with the message "Possible overlap with another
- region." The test selects regions randomly, and this error occurs when
- two regions overlap each other; it is a bug in the test and not in
- HDF5. Since the error is triggered by a random situation, it will
- usually disappear if the test is re-run.
-
-* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but
- have a "guard" statement in stdint.h that will #error and skip the rest
- of the header file if the C99 option is not used explicitly. Hardsetting
- $CC to c99 will resolve the problem. AKC - 2004/12/13
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command poe.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
-
- The tests may also fail with messages like "The socket name is already
- in use". HDF5 does not use sockets (except for stream-VFD). This is
- due to problems of the poe command trying to set up the debug socket.
- Check whether there are many old /tmp/s.pedb.* files staying around. These
- are sockets used by the poe command and left behind due to failed commands.
- Ask your system administrator to clean them out. Lastly, request IBM
- to provide a means to run poe without the debug socket.
-
-* The h5dump tests may fail to match the expected output on some platforms
- (e.g. parallel jobs, Windows) where the error messages directed to
- "stderr" do not appear in the "right order" with output from stdout.
- This is not an error.
-
-* The stream-vfd test uses ip port 10007 for testing. If another
- application is already using that port address, the test will hang
- indefinitely and has to be terminated by the kill command. To try the
- test again, change the port address in test/stream_test.c to one not
- being used in the host.
-
-* The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system
- libraries on Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on the IBM SP2 platform for the serial mode. The parallel mode works fine
- with this option.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on the HPUX 11.00.
-
- It is suggested that you don't use this option on these platforms
- during configuration.
-
-* The Stream VFD is not supported under Windows.
-
-* Use the --disable-shared configure flag if building with Absoft Fortran
- compiler.
-
-* Information about building with PGI and Intel compilers is available in
- INSTALL file sections 5.7 and 5.8.
-
-* In LANL QSC, the new cc compiler has problems converting small values of
- long long (absolute values less than 1**-308) to double. This triggers
- the test/dtypes to report failure in the following test:
- Testing random sw long double -> double conversions
- If -ieee is used, the converted doubles spread over the range 0.0 to
- 10**-308. If -ieee is not used, the converted double values are mostly
- 0.0, but occasionally appear as 10**-308. This has been reported to the
- system staff.
-
- All other tests have passed.
-
-* On at least one system, SDSC DataStar, the scheduler (in this case
- LoadLeveler) sends job status updates to standard error when you run
- any executable that was compiled with the parallel compilers.
-
- This causes problems when running "make check" on parallel builds, as
- many of the tool tests function by saving the output from test runs,
- and comparing it to an exemplar.
-
- The best solution is to reconfigure the target system so it no longer
- inserts the extra text. However, this may not be practical.
-
- In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
- the configure and build. This will cause "make check" to continue after
- detecting errors in the tool tests. However, in the case of SDSC DataStar,
- it also leaves you with some 150 "failed" tests to examine by hand.
-
- A second solution is to write a script to run serial tests and filter
- out the text added by the scheduler. A sample script used on SDSC
- DataStar is given below, but you will probably have to customize it
- for your installation.
-
- Observe that the basic idea is to insert the script as the first item
- on the command line which executes the test. The script then
- executes the test and filters out the offending text before passing
- it on.
-
- #!/bin/csh
-
- set STDOUT_FILE=~/bin/serial_filter.stdout
- set STDERR_FILE=~/bin/serial_filter.stderr
-
- rm -f $STDOUT_FILE $STDERR_FILE
-
- ($* > $STDOUT_FILE) >& $STDERR_FILE
-
- set RETURN_VALUE=$status
-
- cat $STDOUT_FILE
-
- tail +3 $STDERR_FILE
-
- exit $RETURN_VALUE
-
- You get the HDF5 make files and test scripts to execute your filter script
- by setting the environment variable "RUNSERIAL" to the full path of the
- script prior to running configure for parallel builds. Remember to
- "unsetenv RUNSERIAL" before running configure for a serial build.
-
- Note that the RUNSERIAL environment variable exists so that we can
- prefix serial runs as necessary on the target system. On DataStar,
- no prefix is necessary. However, on an MPICH system, the prefix might
- have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
- get the serial tests to run at all.
-
- In such cases, you will have to include the regular prefix in your
- filter script. JM - 2004/9/15
-
-
-%%%%1.6.5%%%% Release Information for hdf5-1.6.5 (10/November/05)
-
-
-HDF5 version 1.6.5 released on Thu Nov 10 18:17:53 CST 2005
-================================================================================
-
-INTRODUCTION
-============
-This document describes the differences between HDF5-1.6.4 and
-HDF5-1.6.5. It contains information on the platforms tested and
-known problems in HDF5-1.6.5. For more details, check the HISTORY.txt
-file in the HDF5 source.
-
-The HDF5 documentation can be found on the NCSA ftp server
-(ftp.ncsa.uiuc.edu) in the directory:
-
- /HDF/HDF5/docs/
-
-Documentation for the current release is also on the HDF web site:
-
- http://hdf.ncsa.uiuc.edu/HDF5/doc/
-
-For more information look at the HDF5 home page at:
-
- http://hdf.ncsa.uiuc.edu/HDF5/
-
-If you have any questions or comments, please send them to:
-
- hdfhelp@ncsa.uiuc.edu
-
-
-CONTENTS
-========
-- New Features
-- Support for New Platforms, Languages and Compilers
-- Bug Fixes since HDF5-1.6.4
-- Documentation
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
- Configuration:
- -------------------------
- - Added yodconfigure, a configure tool, that patches up the configure
- file to allow configure to launch executable via the proper
- launching command like "yod -sz 1". AKC - 2005/11/10
- - Configure now recognizes the TR variable as the location of the
- tr utility. JML 2005/10/20
-
- Source code distribution:
- -------------------------
- - Added g95 as a testing "platform" informally. AKC - 2005/10/04.
- - Added MD5 checksumming to snapshot releases. Releases will now
- produce an .md5 file as well as a .tar archive. md5sum can be
- used to verify the arvhice with the .md5 checksum. -JL 2005/09/06
-
- Library:
- --------
- - Added HSYS_ERROR which retrieves the system error message and pushes
- it to the error stack. This provides more information regarding the
- failed system call. AKC - 2005/08/04
- - Added H5F_OBJ_LOCAL flag to H5Fget_obj_count() & H5Fget_obj_ids(), to
- allow querying for objects in a file that was opened with a particular
- file ID, instead of all objects opened in the file with any file ID.
- QAK - 2005/06/01
-
- Parallel Library:
- -----------------
- - Added mpich2 as a testing "platform" informally. AKC - 2005/10/04.
- - HDF5 supports collective MPI-IO for irregular selection with HDF5
- dataset. Irregular selection is when users use API H5Sselect_hyperslab
- more than once for the same dataset.
- Currently, not all MPI-IO packages support the complicated
- MPI derived datatypes used in the implementation of irregular
- selections INSIDE HDF5.
- 1) DEC 5.x wdoes not support complicated derived datatypes.
- 2) For AIX 5.1:
- If your poe version number is 3.2.0.20 or lower,
- please edit powerpc-ibm-aix5.x in the directory hdf5/config/.
- Find the line with
- << hdf5_mpi_complex_derived_datatype_works >>
- and UNCOMMENT this line before the configure.
- check poe version with the following command:
- lpp -l all | grep ppe.poe
- 3) For Linux cluster,:
- If mpich version is 1.2.5 or lower, collective irregular selection
- IO is not supported; internally independent IO is used.
- 4) For IRIX 6.5:
- if C compiler version is 7.3 or lower, collective irregular
- selection IO is not supported; internally independent IO is used.
- 5) For platforms which internally used mpich:
- If the mpich version is 1.2.5 or lower, please find the
- corresponding config (in hdf5/config) file and add
- hdf5_mpi_complex_derived_datatype_works='no'
- at the end of the configuration file. For example, on the
- NCSA SGI Altix, the internal mpich library is 1.2.5. So
- hdf5_mpi_complex_derived_datatype_works='no'
- should be added at the end of the config file ia64-linux-gnu.
- KY - 2005/09/12
-
- Tools:
- ------
- - Removed obsolete pdb2hdf tool. JML - 2005/10/28
- - Sped up h5dump on files with large numbers of objects.
- QAK - 2005/08/25
-
- F90 API:
- --------
- - Added missing h5tget_member_class_f function
- EIP 2005/04/06
- C++ API:
- --------
- - Added missing member functions:
- H5::CompType::getMemberArrayType
- H5::CompType::getMemberVarLenType
- H5::AbstractDs::getArrayType
- H5::AbstractDs::getVarLenType
- H5::CommonFG::openArrayType
- H5::CommonFG::openVarLenType
- H5::PropList::copyProp -- this will replace the current
- H5::PropList::copyProp in later releases due
- to incorrect prototype.
- BMR - 2005/07/27
-
-
-Support for New Platforms, Languages and Compilers
-==================================================
- - Added support for RedStorm platform (serial only.) AKC 2005/11/10
- - Added support for BG/L platform (serial only.) LA 2005/11/10
- - Added support for HPUX 11.23 (IA64); only C and C++ are supported
- with the +DD64 flag
- EIP 2005/10/05
-
-
- Configuration
- -------------
- - Added support for Cray X1. JML 2005/10/03
-
-
-Bug Fixes since HDF5-1.6.4 Release
-==================================
-
- Library
- -------
- - Fixed collective IO in chunking-storage. HDF5 may have called the
- wrong routine when the shape of the dataspace in the file and in
- the buffered chunk were different. This bug was fixed to make sure
- the correct routine is called. KY - 2005/10/19
- - Fixed core dump when closing root groups opened through two different
- file handles that operate on the same actual file. QAK - 2005/10/02
- - The ./dsets tests used to fail in the TFLOPS machine if the
- test program, dsets.c, was compiled with the -O option.
- The HDF5 library still worked correctly with the -O option. Only
- the ./dsets failed. It is fixed. AKC - 2005/09/14
- - Corrected errors when performing various operations on a group opened
- by dereferencing an object reference. QAK - 2005/07/30
- - Fixed a bug with named datatypes where a copy of a named datatype
- used to create a dataset would accidentally use the original
- named datatype for the dataset's datatype. QAK - 2005/07/23
- - Made H5Fget_name() to be consistent and always return name of actual
- file the ID is in. (Instead of the name of the top file in a
- file mounting hierarchy). QAK - 2005/07/19
- - Reworked internal file mounting semantics to hopefully eliminate
- mounting problems. We now require that files that are mounting
- together all have the same "file close degree". QAK - 2005/07/19
- - More bug fixes on holding open files that are mounted and have
- IDs open. QAK - 2005/07/14
- - Dataset sieve buffer cache was inadvertently disabled; it has been
- re-enabled. QAK - 2005/07/08
- - Don't unmount child files until the parent file actually closes.
- (Previously, if an object was holding open a file, the child files
- would get unmounted too early). QAK - 2005/07/05
- - Fixed bug where unmounted files could cause the library to go into
- an infinite loop when shutting down. QAK - 2005/06/30
- - Fixed bug with hyperslab selections that use selection offsets and
- operate on chunked datasets going into infinite loop or dumping
- core. QAK - 2005/06/17
- - Corrected memory leak and possible corruption when opening a group.
- QAK - 2005/06/17
- - Added check for opaque datatype tags being too long (check against
- H5T_OPAQUE_TAG_MAX, currently set to 256). QAK - 2005/06/14
- - Fixed various errors in maintaining names for open objects in the
- face of unusual mount & unmount operations. QAK - 2005/06/08
- - "SEMI" and "STRONG" file close degree settings now apply only to the
- particular file ID being closed, instead of operating on all open
- file IDs for a given file. QAK - 2005/06/01
- - Fixed error in opening object in a group that was opened in a mounted
- file which has been unmounted. QAK - 2005/03/17
-
- Configuration
- -------------
- - Configure can recognize -lmpich as a form of MPI library. -AKC-
- 2005/9/28.
- - Changed default C++ compiler for the IA64 platform from icc to
- icpc which is the preferred compiler for Intel Compiler version
- 8. AKC - 2005/09/02
-
- Performance
- -------------
- - Optimized I/O for enumerated datatypes that are a superset of a
- source enumerated datatype. QAK - 2005/03/19
-
- Tools
- -----
-
- Documentation
- -------------
-
- F90 API
- -------
- - h5pget_driver_f was returning information that could not be
- interpreted by a Fortran application program; fixed. EIP - 2005/04/10
-
- C++ API
- -------
- - Several member functions' prototype changed due to the
- "int -> unsigned" change in the main library. They are:
- H5::CompType::getMemberDataType(unsigned member_num)
- H5::CompType::getMemberCompType(unsigned member_num)
- H5::CompType::getMemberEnumType(unsigned member_num)
- H5::CompType::getMemberIntType(unsigned member_num)
- H5::CompType::getMemberFloatType(unsigned member_num)
- H5::CompType::getMemberStrType(unsigned member_num)
- BMR - 2005/07/27
-
-
-
-
-
-Platforms Tested
-================
-
- AIX 5.1 (32 and 64-bit) xlc 6.0.0.6
- xlf 8.1.1.3
- xlC 6.0.0.6
- mpcc_r 6.0.0.6
- mpxlf_r 8.1.1.3
- xlc 5.0.2.5
- xlf 7.1.1.2
- xlC 5.0.2.5
- mpcc_r 5.0.2.5
- mpxlf_r 7.1.1.2
- AIX 5.2 (32/64 bit) xlc 6.0.0.8
- xlC 6.0.0.9
- xlf 8.1.1.7
- mpcc_r 6.0.0.8
- mpxlf_r 8.1.1.7
- AIX 5.2 (32/64 bit, LLNL frost) xlc 6.0.0.8
- xlC 6.0.0.8
- xlf 8.1.1.7
- mpcc_r 6.0.0.8
- mpxlf_r 8.1.1.7
- AIX 5.3 (32/64 bit) xlc 7.0.0.0
- xlC 7.0.
- xlf 9.1.0.3
- Cray X1 water 3.0.35 Cray Standard C Version 5.4.0.7.4
- Cray Fortran 5.4.0.7.3
- Cray C++ 5.4.0.7.4
- FreeBSD 4.11 gcc 2.95.4
- g++ 2.95.4
- gcc 3.2.3, 3.3.6, 3.4.4, 4.0.0
- HP-UX B.11.00 HP C HP92453-01 A.11.01.20
- HP F90 v2.4
- HP ANSI C++ B3910B A.03.13
- HP-UX B.11.23 HP aC++/ANSI C B3910B A.06.00
- HP F90 v2.9
- HP aC++/ANSI C B3910B A.06.00
- IRIX64 6.5 (tesla -64) MIPSpro cc 7.4.2m
- F90 MIPSpro 7.4.2m
- C++ MIPSpro cc 7.4.2m
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
- F90 MIPSpro 7.3.1.3m (64 only)
- C++ MIPSpro cc 7.3.1.3m
- mpt 1.6
- Linux 2.4.20-28.7 gcc 2.96
- (eirene, verbena) gcc 3.3.2
- PGI compilers (pgcc, pgf90, pgCC)
- version 5.2-1
- Absoft Fortran compiler v9.0
- Intel(R) C++ 32-bit Version 8.1
- Intel(R) Fortran 32-bit Version 8.1
- MPIch 1.2.6
- Linux 2.4.21-268-smp x86_64 gcc 3.3.1 (SuSE Linux, AMD)
- (mir) PGI 5.2-1 C and F90 (with k3-32)
- Intel(R) C++ 32-bit Version 8.1
- Intel(R) Fortran 32-bit Version 8.1
- Linux 2.4.21-sgi306rp21 Altix
- SMP ia64 Intel(R) C++ Version 8.1
- (cobalt) Intel(R) Fortran Itanium(R) Version 8.1
- SGI MPI
- OSF1 V5.1 (QSC) Compaq C V6.5-011
- HP Fortran V5.5A-3548
- Compaq C++ V6.5-036
- MPIX200_64_r13.4
- OSF1 V5.1 (PSC) Compaq C V6.5-303
- HP Fortran V5.5A-3548
- Compaq C++ V6.5-040
- SunOS 5.8 32,46 Sun WorkShop 6 update 2 C 5.3
- (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
- Sun WorkShop 6 update 2 C++ 5.3
- SunOS 5.9 32,64 Sun C 5.6 2004/07/15
- (Solaris 2.9) Sun Fortran 95 8.0 2004/07/15
- Sun C++ 5.6 2004/07/15
- SunOS 5.10 Sun WorkShop 6 update 2 C 5.3
- Sun WorkShop 6 update 2 Fortran 95 6.2
- Sun WorkShop 6 update 2 C++ 5.3
- Patch 111685-13
- Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
- (tungsten) Intel(R) C++ Version 9.0
- Intel(R) Fortran Compiler Version 9.0
- IA-64 Linux 2.4.21.SuSE_292.til1 ia64
- (NCSA tg-login) Intel(R) C++ Version 8.0
- Intel(R) Fortran Compiler Version 8.0
- mpich-gm-1.2.5..10-intel-r2
- Windows XP MSVC++.NET
- MSVC++ 6.0
- Intel 8.1 C++
- MAC OS X Darwin 7.5
- gcc and g++ Apple Computer, Inc. GCC
- version 1175, based on gcc version 3.3.2
- IBM XL Fortran version 8.1
- Absoft Fortran compiler v8.2
-
-
-Supported Configuration Features Summary
-========================================
-
-Key: y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-IBM BG/L (16) n n n n y y
-Solaris2.8 64-bit y y y(1) y y y
-Solaris2.8 32-bit y y y(1) y y y
-Solaris2.9 64-bit y(1) y y(1) y y y
-Solaris2.9 32-bit y(1) y y(1) y y y
-Solaris2.10 64-bit y(1) y n y y y
-Solaris2.10 32-bit y(1) y n y y y
-IRIX64_6.5 64-bit y(2) y y y y y
-IRIX64_6.5 32-bit y(2) n n n y y
-HPUX11.00 y(1) y y y y y
-HPUX11.23-32bit n y n y y y
-HPUX11.23-64bit n n n y y y
-OSF1 v5.1 y y y y y y
-X1 y y y y y n
-AIX-5.1, 5.2 & 5.3 32-bit y y y y y y
-AIX-5.1, 5.2 & 5.3 64-bit y y y y y y
-WinXP Visual Studio 6.0 n n(9) n y y y
-WinXP .Net n n n y(8) y y
-Mac OS X 10.3 n y(10) n y y y
-FreeBSD 4.11 n n n y y y
-RedHat 7.3 W (3) y(1) y(11) n y y y
-RedHat 7.3 W Intel (3) n y n y y y
-RedHat 7.3 W PGI (3) n y n y y y
-RedStorm (16) n y n y y n
-SuSe x86_64 gcc (3,13) n y(12) n y y y
-SuSe x86_64 icc (3,13) n y(14) n y y y
-Linux 2.4 Xeon C Lustre Intel (3,6) n y n y y y
-Linux 2.4 SuSE ia64 C Intel (3,7) y y y y y y
-Linux 2.4 SGI Altix ia64 Intel (3) y y y y y y
-
-
-Platform Shared static- Thread- STREAM-
- libraries(4) exec safe VFD
-IBM BG/L n y n n
-Solaris2.8 64-bit y x y y
-Solaris2.8 32-bit y x y y
-Solaris2.9 64-bit y x y y
-Solaris2.9 32-bit y x y y
-Solaris2.10 64-bit y x y y
-Solaris2.10 32-bit y x y y
-IRIX64_6.5 64-bit y y y y
-IRIX64_6.5 32-bit y y y y
-HPUX11.00 y x n y
-HPUX11.23 y y n y
-OSF1 v5.1 y y n y
-X1 n y n y
-AIX-5.1, 5.2 & 5.3 32-bit n y n y
-AIX-5.1, 5.2 & 5.3 64-bit n y n y
-WinXP Visual Studio 6.0 y y n n
-WinXP .Net y y n n
-Mac OS X 10.3 y y n y
-FreeBSD 4.11 y y y y
-RedHat 7.3 W (3) y y y y
-RedHat 7.3 W Intel (3) n y n y
-RedHat 7.3 W PGI (3) n y n y
-RedStorm n y n y
-SuSe x86_64 gcc (3,13) n y n y
-SuSe x86_64 icc (3,13) y y(15) n y
-Linux 2.4 Xeon C Lustre Intel (3,6) y y n y
-Linux 2.4 SuSE ia64 C Intel (3,7) y y n n
-Linux 2.4 SGI Altix ia64 Intel (3) y y n y
-
-
-Compiler versions for each platform are listed in the "Platforms Tested"
-table found elsewhere in this file (RELEASE.txt). Unless otherwise noted,
-compilers used are the system compilers.
-
-Footnotes: (1) Using mpich 1.2.6
- (2) Using mpt and mpich 1.2.6.
- (3) Linux 2.4 with GNU, Intel, and PGI compilers, as indicated.
- W or C indicates workstation or cluster, respectively.
- (4) Shared libraries are provided only for the C library,
- except on Windows where they are provided for C and C++.
- (5) Using mpt.
- (6) Linux 2.4.21-32.0.1. Xeon cluster with ELsmp-perfctr-lustre
- and Intel compilers
- (7) Linux 2.4.21, SuSE_292.til1. Ia64 cluster with Intel compilers
- (8) Intel 8.1
- (9) One test of this release failed with Compaq Visual Fortran 6.6c.
- No binary fortran release will be provided. Users should build
- the library by themselves and use it at their own risk.
- We recommend that users use HDF5 1.7 instead
- or use Compaq Visual Fortran 6.0.
- (10) IBM XLF and Absoft
- (11) PGI, Absoft. No shared libraries with Absoft;
- use '--disable-shared'.
- (12) PGI and Intel compilers for both C and Fortran
- (13) AMD Opteron x86_64
- (14) ifort
- (15) Yes with C and Fortran, but not with C++
- (16) Only serial is ported. PFS does not work for PHDF5 yet.
- FMB/EIP - 2005/11/10
-
-
-Known Problems
-==============
-* Intel Compilers for Linux x86_86 platforms (EM64T-based, v8.1) has
- optimization error in the data types conversion code. Before running
- configure, edit the file config/intel-flags by changing the setting of
- PROD_CFLAGS from -O3 to -O0, then run configure. AKC - 2005/11/10.
-
-* Fortran testing and compiling failures on windows XP
- 1. Compaq visual fortran 6.6c with VS 6.0
- The Fortran tests failed for both release, release dll, debug and debug
- dll. The failure is a random one. We won't provide fortran libraries. The
- same test passed with the 1.7.51 snapshot. You may find the 1.7.51
- snapshot under ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/snapshots/.
- 2. Intel fortran 8.1 under .Net environment
- The fortran library cannot even be compiled. Some users have pointed this
- to intel forum.
-
-* When testing parallel HDF5 with the C compiler version MIPSpro 7.4.3 at IRIX
- 6.5, set environment variable MPI_TYPE_MAX to be a bigger number, for example
- 120000, in order to pass the complicated collective IO tests inside parallel
- HDF5 library. This is not a problem inside parallel HDF5 library. You can
- always set a bigger number in your system.
- KY - 2005/10/6
-
-* A contiguous or chunked dataset created by a sequential version may
- not be modified with a parallel version of the library.
- Use the H5Pset_alloc_time function with H5D_ALLOC_TIME_EARLY to set up the
- dataset creation property list to avoid the problem.
- EIP - 2005/09/09
-
-* The dataset created or rewritten with the v1.6.3 library or after can't
- be read with the v1.6.2 library or before when Fletcher32 EDC(filter) is
- enabled. There was a bug in the calculating code of the Fletcher32
- checksum in the library before v1.6.3. The checksum value wasn't consistent
- between big-endian and little-endian systems. This bug was fixed in
- Release 1.6.3. However, after fixing the bug, the checksum value is no
- longer the same as before on little-endian system. The library release
- after 1.6.4 can still read the dataset created or rewritten with the library
- of v1.6.2 or before. SLU - 2005/7/8
-
-* For version 6 (6.02 and 6.04) of the Portland Group compiler on AMD Opteron
- processor, there's a bug in the compiler for optimization(-O2). The library
- failed in several tests but all related to multi driver. The problem has
- been reported to the vendor.
-
-* test/big fails sometimes with the message "Possible overlap with another
- region." The test selects regions randomly, and this error occurs when
- two regions overlap each other; it is a bug in the test and not in
- HDF5. Since the error is triggered by a random situation, it will
- usually disappear if the test is re-run.
-
-* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but it
- has a "guard" statement in stdint.h that will #error and skip the rest
- of the header file if C99 option is not used explicitly. Hardset
- $CC to c99 will resolve the problem. AKC - 2004/12/13
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command poe.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
- The tests may fail with messages like "The socket name is already
- in use". HDF5 does not use sockets (except for stream-VFD). This is
- due to problems of the poe command trying to set up the debug socket.
- Check if there are many old /tmp/s.pedb.* staying around. These are
- sockets used by the poe command and left behind due to failed commands.
- Ask your system administrator to clean them out. Lastly, request IBM
- to provide a means to run poe without the debug socket.
-
-* Two h5dump xml tests(h5dump --xml thlink.h5 and h5dump --xml tmany.h5)
- failed on windows xp with .NET for debug and debug dll. Release and
- Release dll work fine.
-
-* The h5dump tests may fail to match the expected output on some platforms
- (e.g. parallel jobs, Windows) where the error messages directed to
- "stderr" do not appear in the "right order" with output from stdout.
- This is not an error.
-
-* The stream-vfd test uses ip port 10007 for testing. If another
- application is already using that port address, the test will hang
- indefinitely and has to be terminated by the kill command. To try the
- test again, change the port address in test/stream_test.c to one not
- being used in the host.
-
-* The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system
- libraries on Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on IBM SP2 platform for the serial mode. The parallel mode works fine
- with this option.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on the HPUX 11.00.
-
- It is suggested that you don't use this option on these platforms
- during configuration.
-
-* The Stream VFD was not tested yet under Windows.
-
-
-* Before building HDF5 F90 Library from source on Crays
- replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
- subdirectory in the top level directory with the Cray-specific files
- from the site:
- ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/src/patches/
-
-* Use --disable-shared configure flag if building with Absoft Fortran
- compiler.
-
-* Information about building with PGI and Intel compilers is available in
- INSTALL file sections 5.7 and 5.8.
-
-* In LANL QSC, the new cc compiler has problems converting small values of
- long long (absolute values less than 1**-308) to double. This triggers
- the test/dtypes to report failure in the
- Testing random sw long double -> double conversions
- If -ieee is used, the converted doubles spread over the range 0.0 to 1**-308.
- If -ieee is not used, the converted double values are mostly 0.0 but
- occasionally as 1**-308. This has been reported to the system staff.
- All other tests have passed.
-
-* Fortran release DLL randomly failed with Compaq Visual Fortran 6.6c on
- Windows.
-
-* Fortran DLL built with Intel 8.1 in .NET environment crushed the compiler,
- Building Fortran static library with Intel 8.1 in .NET environment
- requires manually setting the project file.
- Please contact to hdfhelp@ncsa.uiuc.edu if you need to build
- Fortran static library with Intel 8.1 with .NET environment.
-
-* On at least one system, SDSC DataStar, the scheduler (in this case
- LoadLeveler) sends job status updates to standard error when you run
- any executable that was compiled with the parallel compilers.
-
- This causes problems when running "make check" on parallel builds, as
- many of the tool tests function by saving the output from test runs,
- and comparing it to an exemplar.
-
- The best solution is to reconfigure the target system so it no longer
- inserts the extra text. However, this may not be practical.
-
- In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
- the configure and build. This will cause "make check" to continue after
- detecting errors in the tool tests. However, in the case of SDSC DataStar,
- it also leaves you with some 150 "failed" tests to examine by hand.
-
- A second solution is to write a script to run serial tests and filter
- out the text added by the scheduler. A sample script used on SDSC
- DataStar is given below, but you will probably have to customize it
- for your installation.
-
- Observe that the basic idea is to insert the script as the first item
- on the command line which executes the test. The script then
- executes the test and filters out the offending text before passing
- it on.
-
- #!/bin/csh
-
- set STDOUT_FILE=~/bin/serial_filter.stdout
- set STDERR_FILE=~/bin/serial_filter.stderr
-
- rm -f $STDOUT_FILE $STDERR_FILE
-
- ($* > $STDOUT_FILE) >& $STDERR_FILE
-
- set RETURN_VALUE=$status
-
- cat $STDOUT_FILE
-
- tail +3 $STDERR_FILE
-
- exit $RETURN_VALUE
-
- You get the HDF make files and test scripts to execute your filter script
- by setting the environment variable "RUNSERIAL" to the full path of the
- script prior to running configure for parallel builds. Remember to
- "unsetenv RUNSERIAL" before running configure for a serial build.
-
- Note that the RUNSERIAL environment variable exists so that we can
- prefix serial runs as necessary on the target system. On DataStar,
- no prefix is necessary. However, on an MPICH system, the prefix might
- have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
- get the serial tests to run at all.
-
- In such cases, you will have to include the regular prefix in your
- filter script.
-
-%%%%1.6.4%%%% Release Information for hdf5-1.6.4 (15/March/05)
-
-
-HDF5 version 1.6.4 released on Tue Mar 15 20:38:48 CST 2005
-================================================================================
-
-INTRODUCTION
-============
-This document describes the differences between HDF5-1.6.3 and
-HDF5-1.6.4, and contains information on the platforms tested and
-known problems in HDF5-1.6.4. For more details check the HISTORY.txt
-file in the HDF5 source.
-
-The HDF5 documentation can be found on the NCSA ftp server
-(ftp.ncsa.uiuc.edu) in the directory:
-
- /HDF/HDF5/docs/
-
-For more information look at the HDF5 home page at:
-
- http://hdf.ncsa.uiuc.edu/HDF5/
-
-If you have any questions or comments, please send them to:
-
- hdfhelp@ncsa.uiuc.edu
-
-
-CONTENTS
-========
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.6.3
-- Documentation
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
- Source code distribution:
- -------------------------
-
- The High-Level (HL) C APIs were added to the source code distribution.
- For HL documentation, see
- http://hdf.ncsa.uiuc.edu/HDF5/hdf5_hl/doc/RM_hdf5hl.html.
-
- The HL library, libhdf5_hl.a(so), is built and installed by default.
- Use --disable-hl configure flag to disable the HL library.
-
- Library:
- --------
- - We recommend you to use SZIP v2.0 with this release.
- For more information see
- http://hdf.ncsa.uiuc.edu/doc_resource/SZIP/
- - The compound datatype has been enhanced with a new feature of size
- adjustment. The size can be increased and decreased (without
- cutting the last member). No API change is involved. SLU -
- 2004/10/1
- - Removed PABLO support. 2005/01/20 EIP
-
- Parallel Library:
- -----------------
- - Allow compressed, chunked datasets to be read in parallel.
- QAK - 2004/10/04
-
- Tools:
- ------
- - New tool, h5jam. See HDF5 Reference Manual. 2004/10/08
-
- F90 API:
- --------
- No new features in this release.
-
- C++ API:
- --------
- - Started using C library's reference counting in place of the class
- RefCounter, which existed before the C mechanism was available.
- As a result, RefCounter has been removed. 2005/03/12 BMR
-
-
-Support for new platforms, languages and compilers.
-=======================================
-
- Configuration
- -------------
- - Upgraded from GNU autoconf 2.53 to autoconf 2.59. JML - 2005/01/31
-
-
-Bug Fixes since HDF5-1.6.3 release
-==================================
-
- Library
- -------
- - Fixed a racing condition in MPIPOSIX virtual file drive close
- function. Now all processes must completed the close before any
- of them is returned. This prevents some "faster" processes start
- accessing the file for another purpose (e.g., open with truncate)
- while other "slower" processes have not closed the same file with
- the previous purpose. AKC - 2005/03/01
- - H5Tget_member_value calls for enum datatype didn't return correct
- value if H5Tenum_valueof was called first. It's fixed. SLU -
- 2005/02/08
- - For variable-length string, H5Tget_class returned H5T_STRING as its
- class. But H5Tdetect_class and H5Tget_member_class considered it
- as H5T_VLEN. This is fixed to let all these 3 functions treat it
- as H5T_STRING. SLU - 2005/02/08
- - The byte order of all 1-byte integer types was fixed as
- little-endian even on a big-endian machine. It's corrected.
- SLU - 2005/02/07
- - Fixed segmentation fault when calling H5Fflush with an attribute that
- hasn't had a value written to it open. QAK - 2004/10/18
- - Backed out support for bitfield and time types in H5Tget_native_type.
- Leave it to future support. The function simply returns error
- message of "not support" for bitfield and time types. SLU - 2004/10/5
- - Fixed address check in Core VFL driver to avoid spurious address/size
- overflows for odd valued addresses and/or sizes. QAK - 2004/09/27
- - Fixed problem where chunked datasets were not able to be deleted
- from a file under certain circumstances. QAK - 2004/09/27/
-
- Configuration
- -------------
- - IRIX64 MIPSpro compiler of 7.4.x supports C99 features. Default
- to use the 'c99' compiler if available. AKC - 2004/12/13
- - Intel v8.0 compiler would infinite loop when compiling some test
- code with -O3 option. Changed enable-production default compiler
- option to -O2. AKC - 2004/12/06
- - Long double is assumed to be a supported C data type. It is a
- standard C89 type. AKC - 2004/10/22
-
- Performance
- -------------
- Many changes were made to the library to improve performance,
- especially for the variable-length datatypes and metadata cache.
-
- Tools
- -----
- - h5fc and h5c++ work correctly when -c compiler flag
- is used. EIP - 2005/03/14
- - Fixed h5dump to print attributes data in ASCII if -r option is used.
- AKC - 2004/11/18
- - Fixed space utilization reported in h5ls to correct error
- in formula used. QAK - 2004/10/22
-
- Documentation
- -------------
-
- F90 API
- -------
- - On windows, previously Fortran DLL built and tested failed.
- Now Fortran DLL has been built and tested successfully
- with Dec Fortran 6.6c or Dec Fortran 6.0.
-
- C++ API
- -------
-
-
-Documentation
-=============
-
- HDF5 Library documentation
- --------------------------
- No substantive changes to the structure or types of content in the
- HDF5 Library documentation.
-
- Windows installation documentation
- ----------------------------------
- 1. On Windows zlib has been updated to 1.2.2. You may find the binary at
- either http://www.zlib.net/zlib122-dll.zip or
- ftp://hdf.ncsa.uiuc.edu/lib-external/zlib/bin/windows
-
- 2. Only DLLs of external libraries (zlib and szip) are linked with the
- HDF5 Library. We will no longer provide binary to link static library
- with HDF5. For details, please check INSTALL_Windows in this directory.
-
-
-Platforms Tested
-================
-
- AIX 5.1 (32 and 64-bit) xlc 6.0.0.6
- xlf 8.1.1.3
- xlC 6.0.0.6
- mpcc_r 6.0.0.6
- mpxlf_r 8.1.1.3
- xlc 5.0.2.5
- xlf 7.1.1.2
- xlC 5.0.2.5
- mpcc_r 5.0.2.5
- mpxlf_r 7.1.1.2
- AIX 5.2 (32/64 bit) xlc 6.0.0.8
- xlC 6.0.0.9
- xlf 8.1.1.7
- mpcc_r 6.0.0.8
- mpxlf_r 8.1.1.7
- AIX 5.2 (32/64 bit, LLNL frost) xlc 6.0.0.8
- xlC 6.0.0.8
- xlf 8.1.1.7
- mpcc_r 6.0.0.8
- mpxlf_r 8.1.1.7
- Cray T90 sn7001 10.0.0md Cray Standard C Version 6.4.0.3
- Cray Fortran Version 3.4.0.0
- Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.3.6
- Cray Fortran Version 3.6.0.3.1
- FreeBSD 4.9 gcc 2.95.4
- g++ 2.95.4
- gcc 3.2.3, 3.3.6, 3.4.4, 4.0.0
- HP-UX B.11.00 HP C HP92453-01 A.11.01.20
- HP F90 v2.4
- HP ANSI C++ B3910B A.03.13
- MPIch 1.2.4
- IRIX64 6.5 (tesla -64) MIPSpro cc 7.4.2m
- F90 MIPSpro 7.4.2m
- C++ MIPSpro cc 7.4.2m
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
- F90 MIPSpro 7.3.1.3m (64 only)
- C++ MIPSpro cc 7.3.1.3m
- mpt 1.6
- Linux 2.4.20-28.7 gcc 2.96
- (eirene, verbena) gcc 3.3.2
- PGI compilers (pgcc, pgf90, pgCC)
- version 5.2-1
- Absoft Fortran compiler v9.0
- Intel(R) C++ 32-bit Version 8.1
- Intel(R) Fortran 32-bit Version 8.1
- MPIch 1.2.6
- Linux 2.4.21-268-smp x86_64 gcc 3.3.1 (SuSE Linux, AMD)
- (mir) PGI 5.2-1 C and F90 (with k3-32)
- Intel(R) C++ 32-bit Version 8.1
- Intel(R) Fortran 32-bit Version 8.1
- Linux 2.4.21-sgi303r2 Altix
- SMP ia64 Intel(R) C++ Version 8.1
- (cobalt) Intel(R) Fortran Itanium(R) Version 8.1
- SGI MPI
- OSF1 V5.1 (QSC) Compaq C V6.5-011
- HP Fortran V5.5A-3548
- Compaq C++ V6.5-036
- MPIX200_64_r13.4
- OSF1 V5.1 (PSC) Compaq C V6.5-303
- HP Fortran V5.5A-3548
- Compaq C++ V6.5-040
- MPIX200_64_r13.4
- FORTRAN 90 2.0 Patch 107356-04
- SunOS 5.8 32,46 Sun WorkShop 6 update 2 C 5.3
- (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
- Sun WorkShop 6 update 2 C++ 5.3
- SunOS 5.9 32,64 Sun C 5.6 2004/07/15
- (Solaris 2.9) Sun Fortran 95 8.0 2004/07/15
- Sun C++ 5.6 2004/07/15
- TFLOPS r1.0.4 v4.5.2 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with
- local modifications
- Xeon Linux 2.4.20-31.9smp_perfctr_lustre
- (tungsten) Intel(R) C++ Version 8.0
- Intel(R) Fortran Compiler Version 8.0
- IA-64 Linux 2.4.21.SuSE_128.bef1 ia64
- (NCSA tg-login) Intel(R) C++ Version 8.0
- Intel(R) Fortran Compiler Version 8.0
- mpich-gm-1.2.5..intel
- Windows XP MSVC++.NET
- MSVC++ 6.0
- Compaq Visual Fortran 6.6C
- Intel 8.1 C++
- MAC OS X Darwin 7.5
- gcc and g++ Apple Computer, Inc. GCC
- version 1175, based on gcc version 3.3.2
- IBM XL Fortran version 8.1
- Absoft Fortran compiler v8.2
-
-
-Supported Configuration Features Summary
-========================================
-
-Key: y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-Solaris2.8 64-bit y y y(1) y y y
-Solaris2.8 32-bit y y y(1) y y y
-Solaris2.9 64-bit y(1) y y(1) y y y
-Solaris2.9 32-bit y(1) y y(1) y y y
-IRIX64_6.5 64-bit y(2) y y y y y
-IRIX64_6.5 32-bit y(2) n n n y y
-HPUX11.00 y(1) y y y y y
-OSF1 v5.1 y y y y y y
-T90 IEEE n y n n y n
-SV1 y(5) y y(5) n y n
-TFLOPS y(1) n n n y n
-AIX-5.1 & 5.2 32-bit y y y y y y
-AIX-5.1 & 5.2 64-bit y y y y y y
-WinXP Visual Studio 6.0 n y(9) n y y y
-WinXP .Net n n n y(8) y y
-Mac OS X 10.3 n y(10) n y y y
-FreeBSD 4.9 y(1) n n y y y
-RedHat 7.3 W (3) y(1) y(11) n y y y
-RedHat 7.3 W Intel (3) n y n y y y
-RedHat 7.3 W PGI (3) n y n y y y
-SuSe x86_64 gcc (3,13) n y(12) n y y y
-SuSe x86_64 icc (3,13) n y(14) n y y y
-Linux 2.4 Xeon C Lustre Intel (3,6) n y n y y y
-Linux 2.4 SuSE ia64 C Intel (3,7) y y y y y y
-Linux 2.4 SGI Altix ia64 Intel (3) y y y y y y
-
-
-Platform Shared static- Thread- STREAM-
- libraries(4) exec safe VFD
-Solaris2.8 64-bit y x y y
-Solaris2.8 32-bit y x y y
-Solaris2.9 64-bit y x y y
-Solaris2.9 32-bit y x y y
-IRIX64_6.5 64-bit y y y y
-IRIX64_6.5 32-bit y y y y
-HPUX11.00 y x n y
-OSF1 v5.1 y y n y
-T90 IEEE n y n y
-SV1 n y n y
-TFLOPS n y n n
-AIX-5.1 & 5.2 32-bit n y n y
-AIX-5.1 & 5.2 64-bit n y n y
-WinXP Visual Studio 6.0 y y n n
-WinXP .Net y y n n
-Mac OS X 10.3 y y n y
-FreeBSD 4.9 y y y y
-RedHat 7.3 W (3) y y y y
-RedHat 7.3 W Intel (3) n y n y
-RedHat 7.3 W PGI (3) n y n y
-SuSe x86_64 gcc (3,13) n y n y
-SuSe x86_64 icc (3,13) y y(15) n y
-Linux 2.4 Xeon C Lustre Intel (3,6) y y n y
-Linux 2.4 SuSE ia64 C Intel (3,7) y y n n
-Linux 2.4 SGI Altix ia64 Intel (3) y y n y
-
-
-Compiler versions for each platform are listed in the "Platforms Tested"
-table found elsewhere in this file (RELEASE.txt). Unless otherwise noted,
-compilers used are the system compilers.
-
-Footnotes: (1) Using mpich 1.2.6
- (2) Using mpt and mpich 1.2.6.
- (3) Linux 2.4 with GNU, Intel, and PGI compilers, as indicated.
- W or C indicates workstation or cluster, respectively.
- (4) Shared libraries are provided only for the C library,
- except on Windows where they are provided for C and C++.
- (5) Using mpt.
- (6) Linux 2.4.20-31.9. Xeon cluster with smp_perfctr_lustre
- and Intel compilers
- (7) Linux 2.4.21, SuSE_128.befl. Ia64 cluster with Intel compilers
- (8) Intel 8.1
- (9) Compaq Visual Fortran 6.6C
- (10) IBM XLF and Absoft
- (11) PGI, Absoft. No shared libraries with Absoft;
- use '--disable-shared'.
- (12) PGI and Intel compilers for both C and Fortran
- (13) AMD Opteron x86_64
- (14) ifort
- (15) Yes with C and Fortran, but not with C++
- FMB/EIP - 2005/03/15
-
-
-Known Problems
-==============
-* test/big fails sometimes with the message "Possible overlap with another
- region." The test selects regions randomly, and this error occurs when
- two regions overlap each other; it is an bug in the test and not in
- HDF5. Since the error is triggered by a random situation, it will
- usually disappear if the test is re-run.
-
-* Cray SV1 fails to correctly convert between floating-point and "long double"
- for software conversion. Problem is being investigated. SLU - 2005/03/04
-
-* Newer SGI MIPSpro compilers (version 7.4.x) support C99 features but it
- has a "guard" statement in stdint.h that will #error and skip the rest
- of the header file if C99 option is not used explicitly. Hardset
- $CC to c99 will resolve the problem. AKC - 2004/12/13
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command poe.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
- The tests may fail with messages like "The socket name is already
- in use". HDF5 does not use sockets (except for stream-VFD). This is
- due to problems of the poe command trying to set up the debug socket.
- Check if there are many old /tmp/s.pedb.* staying around. These are
- sockets used by the poe command and left behind due to failed commands.
- Ask your system administrator to clean them out. Lastly, request IBM
- to provide a mean to run poe without the debug socket.
-
-* Fortran subroutine h5pget_driver_f doesn't return a correct driver
- information.
-
-* There are two h5dump xml tests(h5dump --xml thlink.h5 and
- h5dump --xml tmany.h5) failed on windows xp with .NET for debug and
- debug dll. Release and Release dll work fine.
-
-* The h5dump tests may fail to match the expected output on some platforms
- (e.g. parallel jobs, Windows) where the error messages directed to
- "stderr" do not appear in the "right order" with output from stdout.
- This is not an error.
-
-* The stream-vfd test uses ip port 10007 for testing. If another
- application is already using that port address, the test will hang
- indefinitely and has to be terminated by the kill command. To try the
- test again, change the port address in test/stream_test.c to one not
- being used in the host.
-
-* The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system
- libraries on Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on IBM SP2 platform for the serial mode. The parallel mode works fine
- with this option.
-
- It is suggested that you don't use this option on these platforms
- during configuration.
-
-* The Stream VFD was not tested yet under Windows. It is not supported
- in the TFLOPS machine.
-
-* The ./dsets tests failed in the TFLOPS machine if the test program,
- dsets.c, is compiled with the -O option. The hdf5 library still works
- correctly with the -O option. The test program works fine if it is
- compiled with -O1 or -O0. Only -O (same as -O2) causes the test
- program to fail.
-
-* Certain platforms give false negatives when testing h5ls:
- - Cray T90IEEE give errors during testing when displaying
- some floating-point values. These are benign differences due to
- the different precision in the values displayed.
- h5ls appears to be dumping floating-point numbers correctly.
-
-* Before building HDF5 F90 Library from source on Crays
- replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
- subdirectory in the top level directory with the Cray-specific files
- from the site:
- ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/src/patches/
-
-* On some platforms that use Intel and Absoft compilers to build HDF5 fortran
- library, compilation may fail for fortranlib_test.f90, fflush1.f90 and
- fflush2.f90 complaining about exit subroutine. Comment out the line
- IF (total_error .ne. 0) CALL exit (total_error)
-
-* Use --disable-shared configure flag if building with Absoft Fortran
- compiler
-
-* Information about building with PGI and Intel compilers is available in
- INSTALL file sections 5.7 and 5.8
-
-* In LANL QSC, the new cc compiler has problems converting small values of
- long long (absolute values less than 1**-308) to double. This triggers
- the test/dtypes to report failure in the
- Testing random sw long double -> double conversions
- If -ieee is used, the converted doubles spread over the range 0.0 to 1**-308.
- If -ieee is not used, the converted double values are mostly 0.0 but
- occasionally as 1**-308. This has been reported to the system staff.
- All other tests have passed.
-
-* The C++ library's tests fails when compiling with PGI C++ compiler. The
- workaround until the problem is correctly handled is to use the
- flag "--instantiate=local" prior to the configure and build steps, as:
- setenv CXX "pgCC --instantiate=local" for pgCC 5.02 and higher
- setenv CXX "pgCC -tlocal" for others
-
-* Fortran release DLL randomly failed with compaq visual fortran 6.6c on
- windows.
-
-* Fortran DLL built with Intel 8.1 in .NET environment crushed the compiler,
- To build Fortran Static library with Intel 8.1 in .NET environment
- needs manually setting the project file,
- please contact to hdfhelp@ncsa.uiuc.edu if you need to build
- fortran static library with Intel 8.1 with .NET environment.
-
-* On at least one system, (SDSC DataStar), the scheduler (in this case
- LoadLeveler) sends job status updates to standard error when you run
- any executable that was compiled with the parallel compilers.
-
- This causes problems when running "make check" on parallel builds, as
- many of the tool tests function by saving the output from test runs,
- and comparing it to an exemplar.
-
- The best solution is to reconfigure the target system so it no longer
- inserts the extra text. However, this may not be practical.
-
- In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
- the configure and build. This will cause "make check" to continue after
- detecting errors in the tool tests. However, in the case of SDSC DataStar,
- it also leaves you with some 150 "failed" tests to examine by hand.
-
- A second solution is to write a script to run serial tests and filter
- out the text added by the scheduler. A sample script used on SDSC
- DataStar is given below, but you will probably have to customize it
- for your installation.
-
- Observe that the basic idea is to insert the script as the first item
- on the command line which executes the test. The script then
- executes the test and filters out the offending text before passing
- it on.
-
- #!/bin/csh
-
- set STDOUT_FILE=~/bin/serial_filter.stdout
- set STDERR_FILE=~/bin/serial_filter.stderr
-
- rm -f $STDOUT_FILE $STDERR_FILE
-
- ($* > $STDOUT_FILE) >& $STDERR_FILE
-
- set RETURN_VALUE=$status
-
- cat $STDOUT_FILE
-
- tail +3 $STDERR_FILE
-
- exit $RETURN_VALUE
-
- You get the HDF make files and test scripts to execute your filter script
- by setting the environment variable "RUNSERIAL" to the full path of the
- script prior to running configure for parallel builds. Remember to
- "unsetenv RUNSERIAL" before running configure for a serial build.
-
- Note that the RUNSERIAL environment variable exists so that we can
- can prefix serial runs as necessary on the target system. On DataStar,
- no prefix is necessary. However on an MPICH system, the prefix might
- have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
- get the serial tests to run at all.
-
- In such cases, you will have to include the regular prefix in your
- filter script.
-
-
-%%%%1.6.3%%%% Release Information for hdf5-1.6.3 (22/September/04)
-
-HDF5 version 1.6.3 released on Wed Sep 22 11:30:11 CDT 2004
-================================================================================
-
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.6.2 and
-HDF5-1.6.3, and contains information on the platforms tested and
-known problems in HDF5-1.6.3. For more details check the HISTORY.txt
-file in the HDF5 source.
-
-The HDF5 documentation can be found on the NCSA ftp server
-(ftp.ncsa.uiuc.edu) in the directory:
-
- /HDF/HDF5/docs/
-
-For more information look at the HDF5 home page at:
-
- http://hdf.ncsa.uiuc.edu/HDF5/
-
-If you have any questions or comments, please send them to:
-
- hdfhelp@ncsa.uiuc.edu
-
-CONTENTS
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.6.2
-- Documentation
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
-
- Configuration:
- --------------
- - Added some initial support for making purify (or similar memory
- checking products) happier by initializing buffers to zero and
- disabling the internal free list code. To take advantage of this,
- define 'H5_USING_PURIFY' in your CFLAGS when building the library.
- QAK - 2004/07/23
-
- - WINDOWS building,testing and installing improvements
-
- - On Windows, FORTRAN,C++ and C projects are merged into one zip file,
- users can choose an option to build either FORTRAN or C++ or both
- with basic C library.For detailed information,
- please read INSTALL_Windows.txt.
-
- - On Windows, szip compression library with or without encoder can be easily
- turned off or on when building HDF5. For detailed information,
- please read INSTALL_Windows.txt, especially section V.
-
- - On Windows, an optional procedure for building,testing and installing
- HDF5 from command line is provided. This procedure is supposed to be
- convenient for experienced users, please read
- INSTALL_windows_From_Command_Line.txt for details.
-
- - On Windows, an alternative short instruction document for building,
- testing and installing HDF5 is provided. This instruction is supposed to
- be convenient for general users, please read
- INSTALL_Windows_Short.txt for details.
-
- - On Windows, h5repack,h5diff,h5ls and h5import tool tests have been added.
- KY - 2004/9/16
-
-
- Library:
- --------
- - Modified the way how HDF5 calculates 'pixels_per_scanline' parameter for
- SZIP compression. Now there is no restriction on the size and shape of the
- chunk except that the total number of elements in the chunk cannot be
- bigger than 'pixels_per_block' parameter provided by the user.
- EIP - 2004/07/21
- - HDF5 can now link to SZIP with or without szip's encoder.
- The new API function H5Zget_filter_info can be used to check
- szip's status. Attempting to assign szip to a dataset property
- list or attempting to write with szip will generate an error if
- szip's encoder is disabled. JL/NF - 2004/6/30
- - SZIP always uses K13 compression. This flag no longer needs to
- be set when calling H5Pset_szip. If the flag for CHIP
- compression is set, it will be ignored (since the two are mutually
- exclusive). JL/NF - 2004/6/30
- - A new API function H5Fget_name was added. It returns the name
- of the file by object(file, group, data set, named data type,
- attribute) ID. SLU - 2004/06/29
- - A new API function H5Fget_filesize was added. It returns the
- actual file size of the opened file. SLU - 2004/06/24
- - Added option that if $HDF5_DISABLE_VERSION_CHECK is set to 2,
- will suppress all library version mismatch warning messages.
- AKC - 2004/4/14
-
- Parallel Library:
- -----------------
-
- Tools:
- ------
- - h5repack was added to the tools suite. h5repack regenerates an HDF5 file
- from another HDF5 file, optionally applying HDF5 filters (compression)
- and/or chunking to the copied file. The filters options are read from
- the command line. See /doc/html/Tools.html for more details.
- PVN - 2004/9/13
-
- - h5dump includes new features:
- 1) Printing of dataset filters, storage layout and fill value information.
- 2) Print a list of the file contents.
- 3) Escape non printing characters.
- 4) Print the content of the boot block.
- 5) Print array indices with the data (the default).
- These options are all switch controlled. See /doc/html/Tools.html for more details.
- PVN - 2004/9/13
-
-
- F90 API:
- --------
- - added new subroutines:
- h5fget_filesize_f
- h5iget_file_id_f
- h5premove_filter_f
- h5zget_filter_info_f
- EIP 2004/9/21
-
- - added new h5fget_name_f and h5fget_filesize_f subroutines
- EIP 2004/07/08
-
- C++ API:
- --------
- - Added wrappers for array and variable length datatypes APIs
- - Added wrappers for newly added APIs from H5T, H5F, and H5I
- - Added many wrappers that were missing from the H5P API
- - Added the ability to reference HDF5 objects to these classes:
- DataSet, DataType, Group, and H5File (wrappers for H5R APIs)
- BMR 2004/08/04
-
-
-Support for new platforms, languages and compilers.
-=======================================
- - Added PGI Fortran support for Linux64 (x86_64) systems
- EIP - 2004/08/19
- - Absoft compiler f95 v9.0 is supported on Linux 2.4 32bit
- EIP - 2004/07/29
- - HDF5 Fortran APIs are supported on Mac OSX with IBM XL Fortran
- compiler version 8.1. This is a default compiler.
- - HDF5 Fortran APIs are supported on MAC OSX with Absoft F95 compiler
- version 8.2; set F9X environment variable to f95, for example
- setenv F9X f95
- Use --disable-shared --enable-static configure flags when Absoft
- compiler is used.
- EIP - 2004/07/27
-
-Bug Fixes since HDF5-1.6.2 release
-==================================
-
- Library
- -------
- - Fixed parallel bug in which some processes attempted collective
- I/O while others did independent I/O. Bug appeared when some
- processes used point selections, and others didn't. JRM - 2004/9/15
- - Corrected error where dataset region references were written in an
- incorrect way on Cray machines. PVN & QAK - 2004/09/13
- - The H5Tget_native_type now determines the native type for integers
- based on the precision. This is to avoid cases of wrongly converting
- an int to a short in machines that have a short of 8 bytes but with
- 32bit precision (e.g Cray SV1). PVN - 2004/09/07
- - Changed H5Dread() to not overwrite data in an application's buffer
- with garbage when accessing a chunked dataset with an undefined fill
- value and an unwritten chunk is uncountered. QAK - 2004/08/25
- - Fixed error which could cause a core dump when a type conversion
- routine was registered after a compound datatype had been
- converted and then an equivalent compound datatype was converted
- again. QAK - 2004/08/07
- - Fixed memory overwrite when encoding "multi" file driver information
- for file's superblock. QAK - 2004/08/05
- - Fixed obscure bug where a filter which failed during chunk allocation
- could allow library to write uncompressed data to disk but think
- the data was compressed. QAK - 2004/07/29
- - Fixed bug where I/O to an extendible chunked dataset with zero-sized
- dimensions would cause library to fail an assertion.
- QAK - 2004/07/27
- - Fixed bug where chunked datasets which have filters defined,
- allocation time set to "late" and whose chunks don't align with
- the dataspace bounds could have incorrect data stored when
- overwriting the entire dataset on the first write. QAK - 2004/07/27
- - Added check to ensure that dataspaces have extents set. JML-2004/07/26
- - Fixed bug on some Solaris systems where HDF5 would try to use
- gettimeofday() when that function didn't work properly.
- JML - 2004/07/23
- - Fixed bug in H5Sset_extent_simple where setting maximum size to
- non-zero, then to zero would cause an error. JML - 2004/07/20
- - Allow NULL pointer for buffer parameter to H5Dread & H5Dwrite
- when not writing data ("none" selection or hyperslab or point
- selection with no elements defined). QAK - 2004/07/20
- - Calling H5Gcreate() on "/" or "." throws an error instead of
- failing quietly. JML - 2004/07/19
- - Fixed bug where setting file address size to be very small could
- trigger an assert if the file grew to more than 64 KB. Now throws
- an error and data can be recovered. JL/NF - 2004/07/14
- - Fixed bug where "resurrecting" a dataset was failing.
- QAK - 2004/07/14
- - Fixed bug where incorrect data could be read from a chunked dataset
- after it was extended. QAK - 2004/07/12
- - After compound datatype with variable-length string in the fields
- is committed to file, the size is messed up when it's read back.
- Fixed. SLU - 2004/06/11
- - Fixed potential file corruption bug when a block of metadata could
- overlap the end of the internal metadata accumulator buffer and
- the buffer would be extended correctly, but would incorrectly
- change it's starting address. QAK - 2004/06/09
- - Opaque datatype with no tag failed for some operations. Fixed.
- SLU - 2004/6/3
- - Fixed potential file corruption bug where dimensions that were
- too large (a value greater than could be represented in 32-bits)
- could cause the incorrect amount of space to be allocated in a
- file for the raw data for the dataset. QAK - 2004/06/01
- - Fixed dtypes "sw long double -> double" failure in QSC class
- machines. AKC - 2004/4/16
-
- Configuration
- -------------
- - Fixed the long compile time of H5detect.c when v7.x Intel Compiler
- is used with optimization NOT off. AKC - 2004/05/20
-
- Performance
- -------------
-
- Tools
- -----
- - On SGI h5dump displayed only part of the data due to the bug
- in the system printf; fixed.
- EIP - 2004/09/21
- Documentation
- -------------
- - Several descriptive errors have been fixed throughout the
- documentation, particularly in the reference manual (RM).
- A selection particularly worthy of note would be these:
- - The H5Pset_szip description in the RM has been expanded and
- corrected to facilitate use of SZIP compression.
- - A note has been added to the H5Dcreate description that an
- unexplained failure is likely to be due to a property list error
- that is detected only at the time of dataset creation.
- FMB - 2004/09/21
-
- F90 API
- -------
- - Fortran functions h5dwrite/read_f and h5awrite/read_f do not
- accept dims parameter of INTEGER type anymore. Code was removed.
- 2004/04/15
-
- C++ API
- -------
- - H5::Exception's and its subclasses' constructors that were
- overloaded to take char pointers are removed and constructors
- that passed in reference of 'string' are changed to pass
- by value. In addition, the default value of the data member
- H5::Exception::detailMessage is changed from 0/NULL to
- DEFAULT_MSG ("No detailed information provided".)
- - Prototype for DSetCreatPropList::setLayout is changed: 1st parameter
- is removed because it was there only by mistake.
- BMR 2004/08/04
-
-Documentation
-=============
- HDF5 Library documentation
- --------------------------
- - HDF5 C++ API Reference Manual
- This document has been added to the HDF5 document set.
- The predecessor document, "HDF5 C++ Interfaces," has been removed.
- - HDF5 C++ API Design Specification
- A first draft of this document has been added to the HDF5 document
- set. The draft has been posted on the HDF5 website and a link
- has been added to the HDF5 documents index (index.html at the top
- level of the document set).
- - Parallel HDF5
- In prior releases, the HDF5 document set included two parallel
- HDF5 documents. Those documents have been deleted and the
- HDF5 documents index (index.html) now links to a "Parallel HDF5"
- page on the HDF5 website (http://hdf.ncsa.uiuc.edu/HDF5/PHDF5/).
- - HDF5 High Level APIs
- Links to the HDF5 High Level APIs and to the HDF5 High Level
- Reference Manual have been added to the HDF5 documents index
- (index.html).
- - HDF5 Reference Manual
- Tools: h5repack -- A description of the new h5repack tool has been
- added to the Tools page.
- Tools: h5dump -- Several new options have been added to h5dump.
- New functions -- All new functions have been added to the RM.
- API changes -- Relevant function descriptions have been updated in
- instances where programming interfaces have changed.
- FMB - 2004/09/21
-
- Windows installation documentation
- ----------------------------------
- - INSTALL_Windows.txt has been enhanced to include instructions building
- HDF5 with FORTRAN and C++.
- - Two optional installation documents have been added. They are
- INSTALL_Windows_Short.txt and INSTALL_Windows_From_Command_Line.txt.
- INSTALL_Windows_Short.txt is supposed to help general users who
- only want to build,test and install HDF5 in a quick way.
- INSTALL_Windows_From_Command_Line.txt is supposed to help users who
- would like to compile,test and install HDF5 in command line environment.
- - INSTALL_Windows_withcpp.txt and INSTALL_Windows_withF90.txt became
- obsolete. Files are deleted from the release_docs directory.
- KY 2004/09/16, EIP 2004/9/21
-
-
-
-Platforms Tested
-================
-
- AIX 5.1 (32 and 64-bit) xlc 6.0.0.6
- xlf 8.1.1.3
- xlC 6.0.0.6
- mpcc_r 6.0.0.6
- mpxlf_r 8.1.1.3
- xlc 5.0.2.5
- xlf 7.1.1.2
- xlC 5.0.2.5
- mpcc_r 5.0.2.5
- mpxlf_r 7.1.1.2
- AIX 5.2 xlc 6.0.0.8
- xlC 6.0.0.8
- xlf 8.1.1.6
- mpcc_r 6.0.0.8
- mpxlf_r 8.1.1.6
- Cray T90 sn7001 10.0.0md Cray Standard C Version 6.4.0.3
- Cray Fortran Version 3.4.0.0
- Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.3
- Cray Fortran Version 3.6.0.3
- Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.3.6
- Cray Fortran Version 3.6.0.3.1
- FreeBSD 4.9 gcc 2.95.4
- g++ 2.95.4
- HP-UX B.11.00 HP C HP92453-01 A.11.01.20
- HP F90 v2.4
- HP ANSI C++ B3910B A.03.13
- MPIch 1.2.4
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
- F90 MIPSpro 7.3.1.3m (64 only)
- C++ MIPSpro cc 7.3.1.3m
- mpt 1.6
- Linux 2.4.18 gcc 2.96, 3.3.2
- g++ 3.3.2
- Intel(R) C++ Version 7.1
- Intel(R) Fortran Compiler Version 7.1
- PGI compilers (pgcc, pgf90, pgCC) version 5.0-2
- MPIch 1.2.4
- Absoft Fortran compiler v9.0
- Linux 2.4.20-8 gcc 3.3.2
- PGI compilers (pgcc, pgf90, pgCC) version 5.0-2
- MPIch 1.2.4
- Linux 2.4.21-2.9.5ws #3 gcc 3.2.3 (Red Hat Linux 3.2.3-16)
- SMP x86_64 g++ 3.2.3
- Linux 2.4.21-4.ELsmp Intel(R) C++ 32-bit Version 8.0
- Intel(R) Fortran 32-bit Version 8.0
- gcc 3.4.0
- MPICH 1..5.2 Inmel 8.0
- Linux 2.4.19-SMP x86_64 gcc (GCC) 3.2.2 (SuSE Linux)
- g++ 3.2.2
- Linux 2.6.4-52smp x86_64 gcc 3.3.3 (SuSE Linux 9.1 AMD64))
- PGI 5.2-1 C and F90
-
- Linux 2.4.21-sgi Altix
- SMP ia64 Intel(R) C++ Version 8.0
- Intel(R) Fortran Itanium(R) Version 8.0
- SGI MPI
- OSF1 V5.1 Compaq C V6.5-303
- HP Fortran V5.5A-3548
- Compaq C++ V6.5-040
- MPI_64bit_R13
- SunOS 5.7(32 and 64 bit) WorkShop Compilers 5.0 98/12/15 C 5.0
- (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0
- WorkShop Compilers 5.0 98/10/25
- FORTRAN 90 2.0 Patch 107356-04
- SunOS 5.8(32 and 64 bit) Sun WorkShop 6 update 2 C 5.3
- (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
- Sun WorkShop 6 update 2 C++ 5.3
- TFLOPS r1.0.4 v4.4.3 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with
- local modifications
- IA-32 Linux 2.4.18 gcc 2.96
- Intel(R) C++ Version 7.0
- Intel(R) Fortran Compiler Version 7.0
-
- Xeon Linux 2.4.20-31.9smp_perfctr_lustre
- Intel(R) C++ Version 8.0
- Intel(R) Fortran Compiler Version 8.0
-
- IA-64 Linux 2.4.16 ia64 gcc version 3.0.4
- Intel(R) C++ Version 7.1
- Intel(R) Fortran Compiler Version 7.1
-
- IA-64 Linux 2.4.21.SuSE_128.bef1 ia64
- Intel(R) C++ Version 8.0
- Intel(R) Fortran Compiler Version 8.0
- mpich-gm-1.2.5..intel
-
- Windows 2000 (NT5.0) MSVC++ 6.0
- MSVC++ .NET
- DEC Visual Fortran 6.0
- Intel C and F90 compilers version 7.1
- Code Warrior 8.0
- Windows XP MSVC++.NET
- MSVC++ 6.0
- DEC Visual Fortran 6.0
-
- MAC OS X Darwin 7.5
- gcc and g++ Apple Computer, Inc. GCC
- version 1175, based on gcc version 3.3.2
- IBM XL Fortran version 8.1
- Absoft Fortran compiler v8.2
-
-
-
-Supported Configuration Features Summary
-========================================
-
-Key: y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-Solaris2.7 64-bit y (1) y y (1) y y y
-Solaris2.7 32-bit y (1) y y (1) y y y
-Solaris2.8 64-bit y (1) y y (1) y y y
-Solaris2.8 32-bit y y y (1) y y y
-IRIX64_6.5 64-bit y (2) y y y y y
-IRIX64_6.5 32-bit y (2) n n n y y
-HPUX11.00 y (1) y y y y y
-OSF1 v5.1 y y y y y y
-T90 IEEE n y n n y n
-T3E y (5) y y (5) n y n
-SV1 y (5) y y (5) n y n
-TFLOPS y (1) n n n y n
-AIX-5.1 & 5.2 32-bit y y y y y y
-AIX-5.1 & 5.2 64-bit y y y y y y
-WinXP Visual Studio 6.0 n y (9) n y y y
-WinXP .Net n n n y y y
-WinXP Code Warrior n n n n y y
-Win2000 Visual Studio 6.0 n y (10) n y y y
-Win2000 Visual Studio Intel (6) n y n y y y
-Win2000 .Net n n n y y y
-Mac OS X 10.3 n y (11) n y y y
-FreeBSD 4.9 y (1) n n y y y
-RedHat 7 W (3) y (1) y (12) n y y y
-RedHat 7.3 W Intel (3) n y n y y y
-RedHat 7.3 W PGI (3) n y n y y y
-RedHat 8 & SuSe x86_64 gcc (3) n y (13) n y y y
-Linux 2.4 Xeon C Lustre Intel (3,7) n y n y y y
-Linux 2.4 SuSE ia64 C Intel (3,8) y y y y y y
-Linux 2.4 SGI Altix ia64 Intel (3) y y y y y y
-
-
-Platform Shared static- Thread- STREAM-
- libraries (4) exec safe VFD
-Solaris2.7 64-bit y x y y
-Solaris2.7 32-bit y x y y
-Solaris2.8 64-bit y x y y
-Solaris2.8 32-bit y x y y
-IRIX64_6.5 64-bit y y y y
-IRIX64_6.5 32-bit y y y y
-HPUX11.00 y x n y
-OSF1 v5.1 y y n y
-T90 IEEE n y n y
-T3E n y n y
-SV1 n y n y
-TFLOPS n y n n
-AIX-5.1 & 5.2 32-bit n y n y
-AIX-5.1 & 5.2 64-bit n y n y
-WinXP Visual Studio 6.0 y y n n
-WinXP .Net y y n n
-WinXP Code Warrior n y n n
-Win2000 Visual Studio 6.0 y y n n
-Win2000 Visual Studio Intel (6) y y n n
-Win2000 .Net y y n n
-Mac OS X 10.3 y y n y
-FreeBSD 4.9 y y y y
-RedHat 7 W (3) y y y y
-RedHat 7.3 W Intel (3) n y n y
-RedHat 7.3 W PGI (3) n y n y
-RedHat 8 & SuSe x86_64 gcc (3) n y n y
-Linux 2.4 Xeon C Lustre Intel (3,7) y y n y
-Linux 2.4 SuSE ia64 C Intel (3,8) y y n n
-Linux 2.4 SGI Altix ia64 Intel (3) y y n y
-
-
-
-Compiler versions for each platform are listed in the "Platforms Tested"
-table found elsewhere in this file (RELEASE.txt). Unless otherwise noted,
-compilers used are the system compilers.
-
-Footnotes: (1) Using mpich 1.2.4
- (2) Using mpt and mpich 1.2.4
- (3) Linux 2.4 with GNU, Intel, and PGI compilers, as indicated
- W or C indicates workstation or cluster, respectively
- (4) Shared libraries are provided only for the C library,
- except on Windows where they are provided for C and C++
- (5) Using mpt
- (6) Intel 7.1 compilers in Visual Studio 6.0 environment
- (7) Linux 2.4.20-31.9. Xeon cluster with smp_perfctr_lustre
- and Intel compilers
- (8) Linux 2.4.21, SuSE_128.befl. Ia64 cluster with Intel compilers
- (9) DEC Visual Fortran 6.0 and Intel 7.1
- (10) DEC Visual Fortran 6.0
- (11) IBM XLF and Absoft
- (12) PGI, Absoft
- (13) PGI
- FMB/EIP - 2004/09/21
-
-
-
-Known Problems
-==============
-* h5fc and h5c++ compilation scripts have a bug: object files (*.o) cannot be
- created when source code is compiled using h5fc or h5c++. We will provide
- a fix. Please check ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/src/patches/
- for the patches.
-
-* Fortran subroutine h5pget_driver_f doesn't return a correct driver information.
-
-* There are two h5dump xml tests(h5dump --xml thlink.h5 and h5dump --xml tmany.h5)
- failed on windows xp with .NET for debug and debug dll. Release and Release
- dll work fine.
-
-* The h5dump tests may fail to match the expected output on some platforms
- (e.g. parallel jobs, Windows) where the error messages directed to
- "stderr" do not appear in the "right order" with output from stdout.
- This is not an error.
-
-* The stream-vfd test uses ip port 10007 for testing. If another
- application is already using that port address, the test will hang
- indefinitely and has to be terminated by the kill command. To try the
- test again, change the port address in test/stream_test.c to one not
- being used in the host.
-
-* The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system
- libraries on Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on IBM SP2 platform for the serial mode. The parallel mode works fine
- with this option.
-
- It is suggested that you don't use this option on these platforms
- during configuration.
-
-* The Stream VFD was not tested yet under Windows. It is not supported
- in the TFLOPS machine.
-
-* The ./dsets tests failed in the TFLOPS machine if the test program,
- dsets.c, is compiled with the -O option. The hdf5 library still works
- correctly with the -O option. The test program works fine if it is
- compiled with -O1 or -O0. Only -O (same as -O2) causes the test
- program to fail.
-
-* Certain platforms give false negatives when testing h5ls:
- - Cray J90 and Cray T90IEEE give errors during testing when displaying
- some floating-point values. These are benign differences due to
- the different precision in the values displayed and h5ls appears to
- be dumping floating-point numbers correctly.
-
-* Before building HDF5 F90 Library from source on Crays
- replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
- subdirectory in the top level directory with the Cray-specific files
- from the site:
- ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/current/src/patches/
-
-* On some platforms that use Intel and Absoft compilers to build HDF5 fortran library,
- compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90
- complaining about exit subroutine. Comment out the line
- IF (total_error .ne. 0) CALL exit (total_error)
-
-* On IA32 and IA64 systems, if you use a compiler other than GCC (such as
- Intel's ecc or icc compilers), you will need to modify the generated
- "libtool" program after configuration is finished. On or around line 104 of
- the libtool file, there are lines which look like:
-
- # How to pass a linker flag through the compiler.
- wl=""
-
- change these lines to this:
-
- # How to pass a linker flag through the compiler.
- wl="-Wl,"
-
- UPDATE: This is now done automatically by the configure script. However, if
- you still experience a problem, you may want to check this line in the
- libtool file and make sure that it has the correct value.
-
-* Information about building with PGI and Intel compilers is available in
- INSTALL file sections 5.7 and 5.8
-
-* In LANL QSC, the new cc compiler has problems converting small values of
- long long (absolute values less than 1**-308) to double. This triggers
- the test/dtypes to report failure in the
- Testing random sw long double -> double conversions
- If -ieee is used, the converted doubles spread over the range 0.0 to 1**-308.
- If -ieee is not used, the converted double values are mostly 0.0 but
- occasionally as 1**-308. This has been reported to the system staff.
- All other tests have passed.
-
-* On at least one system, (SDSC DataStar), the scheduler (in this case
- LoadLeveler) sends job status updates to standard error when you run
- any executable that was compiled with the parallel compilers.
-
- This causes problems when running "make check" on parallel builds, as
- many of the tool tests function by saving the output from test runs,
- and comparing it to an exemplar.
-
- The best solution is to reconfigure the target system so it no longer
- inserts the extra text. However, this may not be practical.
-
- In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
- the configure and build. This will cause "make check" to continue after
- detecting errors in the tool tests. However, in the case of SDSC DataStar,
- it also leaves you with some 150 "failed" tests to examine by hand.
-
- A second solution is to write a script to run serial tests and filter
- out the text added by the scheduler. A sample script used on SDSC
- DataStar is given below, but you will probably have to customize it
- for your installation.
-
- Observe that the basic idea is to insert the script as the first item
- on the command line which executes the test. The script then
- executes the test and filters out the offending text before passing
- it on.
-
- #!/bin/csh
-
- set STDOUT_FILE=~/bin/serial_filter.stdout
- set STDERR_FILE=~/bin/serial_filter.stderr
-
- rm -f $STDOUT_FILE $STDERR_FILE
-
- ($* > $STDOUT_FILE) >& $STDERR_FILE
-
- set RETURN_VALUE=$status
-
- cat $STDOUT_FILE
-
- tail +3 $STDERR_FILE
-
- exit $RETURN_VALUE
-
- You get the HDF make files and test scripts to execute your filter script
- by setting the environment variable "RUNSERIAL" to the full path of the
- script prior to running configure for parallel builds. Remember to
- "unsetenv RUNSERIAL" before running configure for a serial build.
-
- Note that the RUNSERIAL environment variable exists so that we can
- can prefix serial runs as necessary on the target system. On DataStar,
- no prefix is necessary. However on an MPICH system, the prefix might
- have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
- get the serial tests to run at all.
-
- In such cases, you will have to include the regular prefix in your
- filter script.
-
-%%%%1.6.2%%%% Release Information for hdf5-1.6.2 (12/February/04)
-
-HDF5 version 1.6.2 released on Thu Feb 12 14:18:13 CST 2004
-================================================================================
-
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.6.1 and
-HDF5-1.6.2, and contains information on the platforms tested and
-known problems in HDF5-1.6.2. For more details check the HISTORY.txt
-file in the HDF5 source.
-
-The HDF5 documentation can be found on the NCSA ftp server
-(ftp.ncsa.uiuc.edu) in the directory:
-
- /HDF/HDF5/docs/
-
-For more information look at the HDF5 home page at:
-
- http://hdf.ncsa.uiuc.edu/HDF5/
-
-If you have any questions or comments, please send them to:
-
- hdfhelp@ncsa.uiuc.edu
-
-CONTENTS
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.6.1
-- Documentation
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
-
- Configuration:
- --------------
- - Default of $prefix is changed to $PWD/hdf5 so that multiple
- builds using --srcdir is possible in the same machine.
- AKC - 2003/12/1
-
- Library:
- --------
- - Added H5Iget_ref, H5Iinc_ref and H5Idec_ref routines to the C
- library and the FORTRAN wrapper. See the reference manual for a
- full description of these new routines. QAK - 2003/12/11
-
- Parallel Library:
- -----------------
- - The parallel tests in testpar/ now provides different levels of
- verbosity via the '-v' option. The default is less verbose
- than before. AKC - 2004/01/23
- - Added parallel test, test_mpio_1wMr, which tests if the
- underlying parallel I/O system is conforming to the POSIX
- write/read requirement. This version includes options of using
- atomicity and file-sync. AKC - 2003/11/27
-
- Tools:
- ------
- - Added option -showconfig to compiler tools (h5cc,h5fc,h5c++).
- AKC - 2004/01/08
- - Install the "h5cc" and "h5fc" tools as "h5pcc" and "h5pfc"
- respectively if library is built in parallel mode. AKC - 2004/01/07
- - Added metadata benchmark (perform/perf_meta). SLU - 2003/10/03
-
- C++ API:
- --------
-
-
-Support for new platforms, languages and compilers.
-=======================================
- - HDF5 Fortran APIs are supported on MAC OSX with IBM XL Fortran compiler
- version 8.1 Beta
- Use --disbale-shared --enable-static flags with configure when
- building HDF5 Fortran Library on MAC OSX.
- - C and C++ Libraries are available for Linux64 RH8
- - C, C++ and Fortran sequential Libraries, and C and Fortran parallel
- Libraries are available for Altix (Linux ia64)
-
-Bug Fixes since HDF5-1.6.1 release
-==================================
-
- Library
- -------
- - Fixed problem with H5Tget_native_type() not handling opaque fields
- correctly. QAK - 2004/01/31
- - Fixed several errors in B-tree deletion code which could cause a
- B-tree (used with groups and chunked datasets) to become corrupt
- with the right sequence of deleted objects. QAK - 2004/01/19
- - Fixed small internal memory leaks of fill-value information.
- QAK - 2004/01/13
- - Fixed bug that caused variable-length datatypes (strings or sequences)
- used for datasets in files with objects that were unlinked to
- fail to be read/written to a file. QAK - 2004/01/13
- - Detect situation where szip 'pixels per block' is larger than the
- fastest changing dimension of a dataset's chunk size and disallow
- this (due to limits in szip library). QAK - 2003/12/31
- - Fixed bug with flattened hyperslab selections that would generate
- incorrect hyperslab information with certain high-dimensionality
- combinations of start/stride/count/block information.
- QAK - 2003/12/31
- - Fixed bug with variable-length datatypes used in compound datatypes.
- SLU - 2003/12/29
- - Fixed bug in parallel I/O routines that would cause reads from
- "short datasets" (datasets which were only partially written out)
- to return invalid data. QAK & AKC - 2003/12/19
- - Fixed bug where scalar dataspaces for attributes were reporting as
- simple dataspaces. QAK - 2003/12/13
- - Fixed problem with selection offsets of hyperslab selections in
- chunked datasets causing the library to go into an infinite loop.
- QAK - 2003/12/13
- - Fixed H5Giterate to avoid re-using index parameter after iteration
- callback has been called (allows iteration callback to modify the
- index parameter itself). QAK - 2003/12/06
- - Fixed various floating-point conversion problems, including a
- change which could corrupt data when converting from double->float.
- QAK - 2003/11/24
- - Changed "single process" metadata writing in library to collective
- I/O by all processes, in order to guarantee correct data being
- written with MPI-I/O. QAK - 2003/11/20
- - Fixed problems with fill values and variable-length types and also
- I/O on VL values that were set to NULL. QAK - 2003/11/08
- - Fixed problems with MPI datatypes that caused ASCI Q machine to
- hang. QAK - 2003/10/28
- - Removed HDF5_MPI_PREFER_DERIVED_TYPES environment variable support,
- since it had no benefit. QAK - 2003/10/28
- - Single hyperslab selections (which were set with only one call to
- H5Sselect_hyperslab) that had dimensions that could be "flattened"
- but were interspersed with dimensions that could not be flattened
- were not correctly handled, causing core dumps. QAK - 2003/10/25
- - Avoid metadata cache from preempting current dataset object header
- when looking up information about the named datatype that the
- dataset uses. QAK - 2003/10/20
-
- Configuration
- -------------
- - Parallel I/O with the MPI-I/O driver will no longer work if the
- filesystem is not POSIX compliant. The "HDF5_MPI_1_METAWRITE"
- environment variable has been removed. QAK - 2004/01/30
-
- Performance
- -------------
- - More optimizations to inner loops of datatype conversions for
- integers and floats which give a 10-50% speedup. QAK - 2003/11/07
- - Hoisted invariant 'if/else's out of inner datatype conversion loop for
- integer and floating-point values, giving about a 20% speedup.
- QAK - 2003/10/20
-
- Tools
- -----
- - Fixed h5redeploy which sometimes complain too many argument for the
- test command. (The complain did not hinder the h5redploy to proceed
- correctly.) AKC - 2003/11/03
-
- Documentation
- -------------
-
-
-Documentation
-=============
-
-
-
-Platforms Tested
-================
-
- AIX 5.1 (32 and 64-bit) xlc 6.0.0.2
- xlf 8.1.0.3
- xlC 6.0.0.4
- xlc 5.0.2.5
- xlf 7.1.1.2
- xlC 5.0.2.5
- mpcc_r 5.0.2.5
- mpxlf_r 7.1.1.2
- poe 3.2.0.10
- Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.2
- Cray Fortran Version 3.6.0.2
- Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.2
- Cray Fortran Version 3.6.0.2
- Cray T90IEEE 10.0.0md Cray Standard C Version 6.4.0.3
- Cray Fortran Version 3.4.0.0
- FreeBSD 4.9 gcc 2.95.4
- g++ 2.95.4
- HP-UX B.11.00 HP C HP92453-01 A.11.01.20
- HP F90 v2.4
- HP ANSI C++ B3910B A.03.13
- MPIch 1.2.4
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
- F90 MIPSpro 7.3.1.3m (64 only)
- C++ MIPSpro cc 7.3.1.3m
- Linux 2.4.18 gcc 2.96, 3.3.2
- g++ 3.3.2
- Intel(R) C++ Version 7.1
- Intel(R) Fortran Compiler Version 7.1
- PGI compilers (pgcc, pgf90, pgCC) version 5.0-2
- MPIch 1.2.4
- Linux 2.4.20-8 gcc 3.3.2
- PGI compilers (pgcc, pgf90, pgCC) version 5.0-2
- MPIch 1.2.4
- Linux 2.4.21-2.9.5ws #3 gcc 3.2.3 (Red Hat Linux 3.2.3-16)
- SMP x86_64 g++ 3.2.3
- Linux 2.4.19-SMP x86_64 gcc (GCC) 3.2.2 (SuSE Linux)
- g++ 3.2.2
-
- Linux 2.4.21-sgi Altix
- SMP ia64 Intel(R) C++ Version 7.1
- Intel(R) Fortran Itanium(R) Version 7.1
- SGI MPI
- OSF1 V5.1 Compaq C V6.4-014
- Compaq Fortran V5.5-2602
- Compaq Fortran V5.5-1877
- Compaq C++ V6.5-033
- Compaq C++ V6.5-030
- MPI_64bit_R13
- SunOS 5.7(32 and 64 bit) WorkShop Compilers 5.0 98/12/15 C 5.0
- (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0
- WorkShop Compilers 5.0 98/10/25
- FORTRAN 90 2.0 Patch 107356-04
- SunOS 5.8(32 and 64 bit) Sun WorkShop 6 update 2 C 5.3
- (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
- Sun WorkShop 6 update 2 C++ 5.3
- TFLOPS r1.0.4 v4.4.2 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with
- local modifications
- IA-32 Linux 2.4.18 gcc 2.96
- Intel(R) C++ Version 7.0
- Intel(R) Fortran Compiler Version 7.0
-
- IA-64 Linux 2.4.16 ia64 gcc version 3.0.4
- Intel(R) C++ Version 7.1
- Intel(R) Fortran Compiler Version 7.1
-
- IA-64 Linux 2.4.21.SuSE_128.bef1 ia64
- Intel(R) C++ Version 7.1
- Intel(R) Fortran Compiler Version 7.1
- mpich-gm-1.2.5..intel
-
- Windows 2000 (NT5.0) MSVC++ 6.0
- DEC Visual Fortran 6.0
- Intel C and F90 compilers version 7.1
- Code Warrior 8.0
- Windows XP MSVC++.NET
- MAC OS X Darwin 7.2
- gcc and g++ Apple Computer, Inc. GCC
- version 1175, based on gcc version 3.3.2
- IBM XL Fortran version 8.1 Beta
-
-
-
-Supported Configuration Features Summary
-========================================
-
-Key: y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
-
-Platform C C F90 F90 C++ Shared zlib
- parallel parallel libraries (4)
-Solaris2.7 64-bit y y (1) y y (1) y y y
-Solaris2.7 32-bit y y (1) y y (1) y y y
-Solaris2.8 64-bit y y (1) y y (1) y y y
-Solaris2.8 32-bit y y y y (1) y y y
-IRIX64_6.5 64-bit y y (2) y y y y y
-IRIX64_6.5 32-bit y y (2) n n n y y
-HPUX11.00 y y (1) y y y y y
-OSF1 v5.1 y y y y y y y
-T3E y y (5) y y (5) n n y
-SV1 y y (5) y y (5) n n y
-T90 IEEE y y (5) y y (5) n n y
-TFLOPS n y (1) n n n n y
-AIX-5.1 32-bit y y y y y n y
-AIX-5.1 64-bit y y y y y n y
-WinXP Visual Studio (7) y n n n y y y
-WinXP Intel y n n n y y y
-WinXP CW y n n n n n y
-Win2000 Visual Studio y n y n y y y
-Win2000 Intel y n y n y y y
-Mac OS X 10.3 y n y n y y y
-FreeBSD 4.9 y y (1) n n y y y
-RedHat 7, 8 & 9 ia32 y y (1) y(PGI) n y y y
- W gcc (3)
-RedHat 7.3 ia32 W Intel (3) y n y n y n y
-RedHat 7.3 ia32 W PGI (3) y n y n y n y
-RedHat 7 ia32 C Intel (3) y n y n y n y
-RedHat 7.1 ia64 C Intel (3) y n y n y n y
-RedHat 8 & SuSe x86_64 y n n n y n y
- gcc (3)
-Linux 2.4 SGI Altix ia64 y n y n y y y
- Intel (3)
-
-
-Platform static- Thread- SZIP GASS STREAM- High- H4/H5
- exec safe VFD level tools
- APIs (6)
-Solaris2.7 64-bit x y y n y y n
-Solaris2.7 32-bit x y y n y y y
-Solaris2.8 64-bit x y y n y y n
-Solaris2.8 32-bit x y y n y y y
-IRIX64_6.5 64-bit x y y y y y y
-IRIX64_6.5 32-bit x y y y y y y
-HPUX11.00 x n y n y y y
-OSF1 v5.1 y n y n y y y
-T3E y n n n y y y
-SV1 y n n n y y y
-T90 IEEE y n n n y y n
-TFLOPS y n n n n n n
-AIX-5.1 32-bit y n y n y y y
-AIX-5.1 64-bit y n y n y y y
-WinXP Visual Studio y n y n n y y
-WinXP Intel y n y n n y y
-WinXP CW y n y n n y y
-Win2000 Visual Studio y n y n n y y
-Win2000 Intel y n y n n y y
-Mac OS X 10.3 y n y n y y n
-FreeBSD 4.9 y y y n y y y
-RedHat 7, 8 & 9 ia32 y y y n y y y
- W gcc (3)
-RedHat 7.3 ia32 W Intel (3) y n y n y n n
-RedHat 7.3 ia32 W PGI (3) y n y n y n n
-RedHat 7 ia32 C Intel (3) y n y n y y y
-RedHat 7.1 ia64 C Intel (3) y n y n y y y
-RedHat 8 & SuSe x86_64 y n y n y y y
- gcc (3)
-Linux 2.4 SGI Altix ia64 y n y n y y y
- Intel (3)
-
-
-Compiler versions for each platform are listed in the "Platforms Tested"
-table found elsewhere in this file (RELEASE.txt). Unless otherwise noted,
-compilers used are the system compilers.
-
-Footnotes: (1) Using mpich 1.2.4.
- (2) Using mpt and mpich 1.2.4.
- (3) Linux 2.4 with GNU, Intel, and PGI compilers, as indicated.
- W or C indicates workstation or cluster, respectively.
- (4) Shared libraries are provided only for the C library,
- except on Windows where they are provided for C and C++.
- (5) Using mpt.
- (6) Includes the H4toH5 Library and the h4toh5 and h5toh4
- utilities.
-
-
-Known Problems
-==============
-* Fortran subroutine h5pget_driver_f doesn't return a correct driver information.
-
-* There are two h5dump xml tests(h5dump --xml thlink.h5 and h5dump --xml tmany.h5)
- failed on windows xp with .NET for debug and debug dll. Release and Release
- dll work fine.
-
-* The h5dump tests may fail to match the expected output on some platforms
- (e.g. parallel jobs, Windows) where the error messages directed to
- "stderr" do not appear in the "right order" with output from stdout.
- This is not an error.
-
-* The stream-vfd test uses ip port 10007 for testing. If another
- application is already using that port address, the test will hang
- indefinitely and has to be terminated by the kill command. To try the
- test again, change the port address in test/stream_test.c to one not
- being used in the host.
-
-* The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system
- libraries on Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on IBM SP2 platform for the serial mode. The parallel mode works fine
- with this option.
-
- It is suggested that you don't use this option on these platforms
- during configuration.
-
-* The Stream VFD was not tested yet under Windows. It is not supported
- in the TFLOPS machine.
-
-
-* The ./dsets tests failed in the TFLOPS machine if the test program,
- dsets.c, is compiled with the -O option. The hdf5 library still works
- correctly with the -O option. The test program works fine if it is
- compiled with -O1 or -O0. Only -O (same as -O2) causes the test
- program to fail.
-
-* Certain platforms give false negatives when testing h5ls:
- - Cray J90 and Cray T90IEEE give errors during testing when displaying
- some floating-point values. These are benign differences due to
- the different precision in the values displayed and h5ls appears to
- be dumping floating-point numbers correctly.
-
-* Before building HDF5 F90 Library from source on Crays
- replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
- subdirectory in the top level directory with the Cray-specific files
- from the site:
- ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/hdf5-1.6.2/F90_source_for_Crays
-
-* On some platforms that use Intel compilers to build HDF5 fortran library,
- compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90
- complaining about exit subroutine. Comment out the line
- IF (total_error .ne. 0) CALL exit (total_error)
-
-* On IA32 and IA64 systems, if you use a compiler other than GCC (such as
- Intel's ecc or icc compilers), you will need to modify the generated
- "libtool" program after configuration is finished. On or around line 104 of
- the libtool file, there are lines which look like:
-
- # How to pass a linker flag through the compiler.
- wl=""
-
- change these lines to this:
-
- # How to pass a linker flag through the compiler.
- wl="-Wl,"
-
- UPDATE: This is now done automatically by the configure script. However, if
- you still experience a problem, you may want to check this line in the
- libtool file and make sure that it has the correct value.
-
-* Information about building with PGI and Intel compilers is available in
- INSTALL file sections 5.7 and 5.8
-
-* In LANL QSC, the new cc compiler has problems converting small values of
- long long (absolute values less than 1**-308) to double. This triggers
- the test/dtypes to report failure in the
- Testing random sw long double -> double conversions
- If -ieee is used, the converted doubles spread over the range 0.0 to 1**-308.
- If -ieee is not used, the converted double values are mostly 0.0 but
- occasionally as 1**-308. This has been reported to the system staff.
- All other tests have passed.
-
-* On AIX 5.1 when 64-bit parallel C Library is built with zlib configured in,
- compilation fails for H5Zdeflate.c. To bypass the problem, remove "const"
- definition in front of H5Z_DEFLATE in H5Zpkg.h line 29.
-
-%%%%1.6.1%%%% Release Information for hdf5-1.6.1 (16/October/03)
-
-15. Release information for HDF5 version 1.6.1
-================================================
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.6.0 and
-HDF5-1.6.1, and contains information on the platforms tested and
-known problems in HDF5-1.6.1. For more details check the HISTORY.txt
-file in the HDF5 source.
-
-The HDF5 documentation can be found on the NCSA ftp server
-(ftp.ncsa.uiuc.edu) in the directory:
-
- /HDF/HDF5/docs/
-
-For more information look at the HDF5 home page at:
-
- http://hdf.ncsa.uiuc.edu/HDF5/
-
-If you have any questions or comments, please send them to:
-
- hdfhelp@ncsa.uiuc.edu
-
-CONTENTS
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.6.0
-- Documentation
-- Platforms Tested
-- Known Problems
-
-
-New Features
-============
-
- Configuration:
- --------------
-
- Library:
- --------
- - Added new fields to the H5G_stat_t for more information about an
- object's object header. QAK 2003/10/06
- - Added new H5Fget_freespace() routine to query the free space in a
- given file. QAK 2003/10/06
-
- Parallel Library:
- -----------------
-
- Tools:
- ------
-
- C++ API:
- --------
- - Added overloaded functions read and write to H5::Attribute.
- BMR - 2003/04/21
- - Added an overloaded constructor H5::StrType so the need to separately
- set the length of the string type can be eliminated. BMR - 2003/04/21
- - Added overloaded functions read and write to H5::DataSet.
- BMR - 2003/04/27
-
- The following items were added but not documented in previous releases:
-
- - On windows, any application, that uses the C++ API dll, must
- include the name HDF5CPP_USEDLL in its project setting. (Feb 17, 2002)
- BMR - 2003/10/10
- - Added missing default constructor H5::H5File. (Apr 26, 2002)
- BMR - 2003/10/10
- - Added new member function H5::DataSet::fillMemBuf per the new C
- API H5Dfill, which fills the elements in a selection for a memory
- buffer with a fill value. (May 16, 2002) BMR - 2003/10/10
- - Added the new member function getMemberIndex to H5::EnumType
- and H5::CompType to match the new C API H5Tget_member_index. Given
- the name of a member of an enumeration or compound datatype, this
- new function queries the index of the member. (May 16, 2002)
- BMR - 2003/10/10
- - Added these member functions to H5::Group per the new C functions
- H5Gget_num_objs, H5Gget_objname_by_idx and H5Gget_objtype_by_idx:
- + getNumObjs: Returns the number of objects in the group.
- + getObjnameByIdx: Retrieves the name of an object in a group,
- given an index
- + getObjTypeByIdx: Returns the type of an object in a group,
- given an index
- (Jan 20, 2003) BMR - 2003/10/10
-
-
-Support for new platforms, languages and compilers.
-=======================================
- - gcc 3.3.1 is supported on Linux.
-
-
-Bug Fixes since HDF5-1.6.0 release
-==================================
-
- Library
- -------
- - Fixed incorrect datatype of the third parameter to the Fortran90
- h5pset(get)_cache_f functions (INTEGER to INTEGER(SIZE_T)) EIP - 2003/10/13
- - Fixed problems with accessing variable-length data datatypes on
- Crays. QAK - 2003/10/10
- - Fixed potential file corruption bug when too many object header
- messages (probably attributes, from a user perspective) were
- inserted into an object header and certain other conditions were
- met. QAK - 2003/10/08
- - Changed implementation of internal ID searching algorithm to avoid
- O(n) behavior for many common cases. QAK - 2003/10/06
- - Allow partial parallel writing to compact datasets. QAK - 2003/10/06
- - Correctly create reference to shared datatype in attribute, instead
- of making a copy of the shared datatype in the attribute.
- QAK - 2003/10/01
- - Revert changes which caused files >2GB to fail when created with
- MPI-I/O file driver on certain platforms. QAK - 2003/09/16
- - Allow compound datatypes to grow in size. SLU - 2003/09/10
- - Detect if a type is already packed before attempting to pack it
- again or check if it is locked. SLU - 2003/09/10
- - Corrected bug when opening a file twice with read-only permission
- for one open and then closing the read-only access file ID would
- generate an error. QAK - 2003/09/10
- - Corrected bug in repeated calls to H5Pget_access_plist() which would
- incorrectly manage reference counts of internal information and
- eventually blow up. QAK - 2003/09/02
- - Return rank of the array datatype on successful call to
- H5Tget_array_dims(). QAK - 2003/08/30
- - Corrected bug in H5Tdetect_class which was not correctly detecting
- datatype classes of fields in nested compound datatypes in some
- circumstances. QAK - 2003/08/30
- - Corrected bug in sieve buffer code which could cause loss of data
- when a small dataset was created and deleted in quick succession.
- QAK - 2003/08/27
- - Corrected bug in H5Gget_objname_by_idx which was not allowing NULL
- for the name when just querying for the object name's length.
- QAK - 2003/08/25
- - Corrected bug in variable-length string handling which could
- generate a core dump on writing variable-length strings as part
- of a compound datatype on certain architectures. QAK - 2003/08/25
- - Corrected bug in H5Tget_native_type which would incorrectly compute
- the size of certain compound datatypes and also incorrectly
- compute the offset of the last field for those compound datatypes.
- QAK - 2003/08/25
- - Corrected bug in H5Tget_native_type which would drop string datatype
- metadata (padding, etc.) QAK - 2003/08/25
- - Corrected bugs in H5Gget_num_objs, H5Gget_objname_by_idx and
- H5Gget_objtype_by_idx to allow them to accept location IDs, not just
- group IDs. QAK - 2003/08/21
- - Corrected bug when using scalar dataspace for memory selection and
- operating on chunked dataset. QAK - 2003/08/18
- - Corrected bugs with multiple '/' characters in names for H5Glink
- and H5Gunlink. QAK - 2003/08/16
- - Corrected bug with user blocks that didn't allow a user block to
- be inserted in front of a file after the file was created.
- QAK - 2003/08/13
- - Corrected errors with using point selections to access data in
- chunked datasets. QAK - 2003/07/23
- - Corrected error with variable-length datatypes and chunked datasets
- which caused H5Dwrite to fail sometimes. QAK - 2003/07/19
- - Modified library and file format to support storing indexed storage
- (chunked dataset) B-tree's with non-default internal 'K' values.
- QAK - 2003/07/15
- - Returned H5T_BKG_TEMP support to library after it was accidentally
- removed. QAK - 2003/07/14
-
- Configuration
- -------------
- - Fixed the error that caused "make install" to fail because of the
- macro definition syntax of "prefix?=..." AKC - 2003/07/22
-
- Performance
- -------------
-
- Tools
- -----
- - Fixed a segmentation fault of h5diff when percentage option is used.
- AKC - 2003/08/27
- - Switched away from tools using internal "fixtype" function(s) to use
- H5Tget_native_type() internally. QAK - 2003/08/25
-
- Documentation
- -------------
- - Added two missing Fortran APIs (h5pget_fapl_mpiposix_f and
- h5pset_fapl_mpiposix_f) to the reference manual.
- FMB - 2003/10/15
- - Corrected the reference manual descriptions of H5open/h5open_f and
- H5close/h5close_f to indicate that these calls are required in
- Fortran90 applications. FMB - 2003/10/15
-
-
-Documentation
-=============
-
- Fortran90 APIs are being integrated into the main body of the
- HDF5 Reference Manual (RM). This process is complete in all RM sections
- except H5P.
-
- A PDF version of the RM will be posted on the HDF5 website
- (at http://hdf.ncsa.uiuc.edu/HDF5/doc/PSandPDF/) approximately one week
- after the release.
-
-
-Platforms Tested
-================
-
- AIX 5.1 (32 and 64-bit) xlc 6.0.0.2
- xlf 8.1.0.3
- xlC 6.0.0.4
- xlc 5.0.2.5
- xlf 7.1.1.2
- xlC 5.0.2.5
- mpcc_r 5.0.2.5
- mpxlf_r 7.1.1.2
- poe 3.2.0.10
- Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.2
- Cray Fortran Version 3.6.0.2
- Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.2
- Cray Fortran Version 3.6.0.2
- Cray T90IEEE 10.0.1.01y Cray Standard C Version 6.4.0.2.3
- Cray Fortran Version 3.4.0.3
- FreeBSD 4.9 gcc 2.95.4
- g++ 2.95.4
- HP-UX B.11.00 HP C HP92453-01 A.11.01.20
- HP F90 v2.4
- HP ANSI C++ B3910B A.03.13
- HP MPI 01.07.00.00
- IRIX 6.5 MIPSpro cc 7.3.1.2m
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
- F90 MIPSpro 7.3.1.3m (64 only)
- MPIch 1.2.4
- Linux 2.4.18 gcc 2.96, 3.2.2, 3.3.1
- g++ 3.2.2, 3.2.3
- Intel(R) C++ Version 7.1
- Intel(R) Fortran Compiler Version 7.1
- PGI compilers (pgcc, pgf90, pgCC) version 4.0-2
- MPIch 1.2.4
- Linux 2.4.20-8 gcc 3.2.2
- OSF1 V5.1 Compaq C V6.4-014
- Compaq C V6.3-027
- Compaq Fortran V5.5-2602
- Compaq C++ V6.5-030
- MPI_64bit_R5
- g++ version 3.0 for C++
- SunOS 5.7(32 and 64 bit) WorkShop Compilers 5.0 98/12/15 C 5.0
- (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0
- WorkShop Compilers 5.0 98/10/25
- FORTRAN 90 2.0 Patch 107356-04
- SunOS 5.8(32 and 64 bit) Sun WorkShop 6 update 2 C 5.3
- (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
- Sun WorkShop 6 update 2 C++ 5.3
- TFLOPS r1.0.4 v4.4.0 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with
- local modifications
- IA-32 Linux 2.4.9 gcc 2.96
- Intel(R) C++ Version 7.0
- Intel(R) Fortran Compiler Version 7.0
-
- IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731
- Intel(R) C++ Version 7.0
- Intel(R) Fortran Compiler Version 7.0
- Windows 2000 (NT5.0) MSVC++ 6.0
- DEC Visual Fortran 6.0
- Intel C and F90 compilers version 7.1
- Code Warrior 8.0
- Windows XP MSVC++.NET
- MAC OS X Darwin 6.8
- gcc and g++ Apple Computer, Inc. GCC
- version 1175, based on gcc version 3.1
-
-
-
-Supported Configuration Features Summary
-========================================
-
- In the tables below
- y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
-
-Platform C C F90 F90 C++ Shared zlib
- parallel parallel libraries (4)
-Solaris2.7 64-bit y y (1) y y (1) y y y
-Solaris2.7 32-bit y y (1) y y (1) y y y
-Solaris2.8 64-bit y y (1) y y (1) y y y
-Solaris2.8 32-bit y y y y (1) y y y
-IRIX6.5 y y (1) n n n y y
-IRIX64_6.5 64-bit y y (2) y y y y y
-IRIX64_6.5 32-bit y y (2) n n n y y
-HPUX11.00 y y (1) y y y y y
-OSF1 v5.1 y y y y y y y
-T3E y y (5) y y (5) n n y
-SV1 y y (5) y y (5) n n y
-T90 IEEE y y (5) y y (5) n n y
-TFLOPS n y (1) n n n n y
-AIX-5.1 32-bit y y y y y n y
-AIX-5.1 64-bit y y y y y n y
-WinXP (6) y n n n y y y
-WinXP Intel y n n n y y y
-Win2000 y n y n y y y
-Win2000 Intel y n y n y y y
-WinNT CW y n n n n n y
-Mac OS X 10.2 y n n n y y y
-FreeBSD y y (1) n n y y y
-Linux 2.4 gcc (3) y y (1) y (PGI) n y y y
-Linux 2.4 Intel (3) y n y n y n y
-Linux 2.4 PGI (3) y n y n y n y
-Linux 2.4 IA32 Intel y n y n y n y
-Linux 2.4 IA64 Intel y n y n y n y
-
-
-ASCII Table 2 -- for RELEASE.txt
-
-Platform static- Thread- SZIP GASS STREAM- High-level H4/H5
- exec safe VFD APIs tools (7)
-Solaris2.7 64-bit x y y n y y n
-Solaris2.7 32-bit x y y n y y y
-Solaris2.8 64-bit x y y n y y n
-Solaris2.8 32-bit x y y n y y y
-IRIX6.5 x n y n y y y
-IRIX64_6.5 64-bit x y y y y y y
-IRIX64_6.5 32-bit x y y y y y y
-HPUX11.00 x n y n y y y
-OSF1 v5.1 y n y n y y y
-T3E y n n n y y y
-SV1 y n n n y y y
-T90 IEEE y n n n y y n
-TFLOPS y n n n n n n
-AIX-5.1 32-bit y n y n y y y
-AIX-5.1 64-bit y n y n y y y
-WinXP (6) y n y n n y y
-WinXP Intel y n y n n y y
-Win2000 y n y n n y y
-Win2000 Intel y n y n n y y
-WinNT CW y n y n n y y
-Mac OS X 10.2 y n y n y y n
-FreeBSD y y y n y y y
-Linux 2.4 gcc (3) y y y n y y y
-Linux 2.4 Intel (3) y n y n y n n
-Linux 2.4 PGI (3) y n y n y n n
-Linux 2.4 IA32 Intel y n y n y y y
-Linux 2.4 IA64 Intel y n y n y y y
-
- Notes: (1) Using mpich 1.2.4.
- (2) Using mpt and mpich 1.2.4.
- (3) Linux 2.4 with GNU, Intel, and PGI compilers, respectively.
- (4) Shared libraries are provided only for the C library, except
- on Windows where they are provided for C and C++.
- (5) Using mpt.
- (6) Binaries only; source code for this platform is not being
- released at this time.
- (7) Includes the H4toH5 Library and the h4toh5 and h5toh4
- utilities.
- Compiler versions for each platform are listed in the preceding
- "Platforms Tested" table.
-
-
-
-Known Problems
-==============
-* Fortran subroutine h5pget_driver_f doesn't return a correct driver information.
- The fix will be available in the 1.6.2 release.
-* There are two h5dump xml tests(h5dump --xml thlink.h5 and h5dump --xml tmany.h5)
- failed on windows xp with .NET for debug and debug dll. Release and Release
- dll work fine.
-
-* The h5dump tests may fail to match the expected output on some platforms
- (e.g. parallel jobs, Windows) where the error messages directed to
- "stderr" do not appear in the "right order" with output from stdout.
- This is not an error.
-
-* The stream-vfd test uses ip port 10007 for testing. If another
- application is already using that port address, the test will hang
- indefinitely and has to be terminated by the kill command. To try the
- test again, change the port address in test/stream_test.c to one not
- being used in the host.
-
-* The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system
- libraries on Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on IBM SP2 platform for the serial mode. The parallel mode works fine
- with this option.
-
- It is suggested that you don't use this option on these platforms
- during configuration.
-
-* With the gcc 2.95.2 compiler, HDF 5 uses the `-ansi' flag during
- compilation. The ANSI version of the compiler complains about not being
- able to handle the `long long' datatype with the warning:
-
- warning: ANSI C does not support `long long'
-
- This warning is innocuous and can be safely ignored.
-
-
-* The Stream VFD was not tested yet under Windows. It is not supported
- in the TFLOPS machine.
-
-
-* The ./dsets tests failed in the TFLOPS machine if the test program,
- dsets.c, is compiled with the -O option. The hdf5 library still works
- correctly with the -O option. The test program works fine if it is
- compiled with -O1 or -O0. Only -O (same as -O2) causes the test
- program to fail.
-
-* Certain platforms give false negatives when testing h5ls:
- - Cray J90 and Cray T90IEEE give errors during testing when displaying
- some floating-point values. These are benign differences due to
- the different precision in the values displayed and h5ls appears to
- be dumping floating-point numbers correctly.
-
-* Before building HDF5 F90 Library from source on Crays
- replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
- subdirectory in the top level directory with the Cray-specific files
- from the site:
-
-* On some platforms that use Intel compilers to build HDF5 fortran library,
- compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90
- complaining about exit subroutine. Comment out the line
- IF (total_error .ne. 0) CALL exit (total_error)
-
- ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/hdf5-1.6.0/F90_source_for_Crays
-
-* On IA32 and IA64 systems, if you use a compiler other than GCC (such as
- Intel's ecc or icc compilers), you will need to modify the generated
- "libtool" program after configuration is finished. On or around line 104 of
- the libtool file, there are lines which look like:
-
- # How to pass a linker flag through the compiler.
- wl=""
-
- change these lines to this:
-
- # How to pass a linker flag through the compiler.
- wl="-Wl,"
-
- UPDATE: This is now done automatically by the configure script. However, if
- you still experience a problem, you may want to check this line in the
- libtool file and make sure that it has the correct value.
-
-* Information about building with PGI and Intel compilers is available in
- INSTALL file sections 5.7 and 5.8
-
-
-%%%%1.6.0%%%% Release Information for hdf5-1.6.0 (03/July/03)
-
-14. Release information for HDF5 version 1.6.0
-================================================
-
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.4.* and
-HDF5-1.6.0, and contains information on the platforms tested and
-known problems in HDF5-1.6.0. For more details check the HISTORY.txt
-file in the HDF5 source.
-
-The HDF5 documentation can be found on the NCSA ftp server
-(ftp.ncsa.uiuc.edu) in the directory:
-
- /HDF/HDF5/docs/
-
-For more information look at the HDF5 home page at:
-
- http://hdf.ncsa.uiuc.edu/HDF5/
-
-If you have any questions or comments, please send them to:
-
- hdfhelp@ncsa.uiuc.edu
-
-CONTENTS
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.4.0
-- Platforms Tested
-- Known Problems
-
-
-New Features
-============
-
-Configuration:
---------------
-The following flags have been added to the configuration script:
---enable-hdf5v1_4 Compile the HDF5 v1.4 compatibility interface
---enable-filters=all Turn on all internal I/O filters. One may also
- specify a comma-separated list of filters or the
- word no. The default is all internal I/O filters.
---with-mpe=DIR Use MPE instrumentation [default=no]
---with-szlib=DIR Use szlib library for external szlib I/O filter
- [default=no]
-
-Library:
---------
- Summary: This release has the following new features that are not
- available in 1.4.* releases
-
- 1. Generic properties to give application more control on I/O pipeline
- 2. Time allocation and fill value properties
- 3. New filters: external compression filter szip
- internal shuffling and checksum filters
- 4. Compact storage layout for datasets
- 5. Redesigned I/O pipeline for better performance.
-
- For more information see
- http://hdf.ncsa.uiuc.edu/HDF5/doc_resource/SZIP/index.html
- http://hdf.ncsa.uiuc.edu/HDF5/doc/ADGuide.html
- http://hdf.ncsa.uiuc.edu/HDF5/doc/ADGuide/Changes.html
-
- Complete list of changes:
-
- * Changed dataset modification time to _not_ be updated when raw data is
- written to a dataset. The modification time is only updated when the
- dataset's metadata is modified. QAK - 2003/06/10
- * Changed H5Sget_select_bounds to use 'hssize_t *' for start and end
- parameters, instead of 'hsize_t *', to better match other parts of the
- dataspace API. QAK - 2003/06/04
- * Changed raw data I/O to only access each chunk once, improving performance
- in many situations with hyperslabs and large chunks or chunks with
- filters. These improvements are currently limited to serial I/O, with
- similar parallel I/O improvements forthcoming sometime in the future.
- QAK - 2003/05/07
- * Added parameter to the MPI/POSIX driver. If GPFS is enabled (by
- modifying the H5FDmpiposix.c file to uncomment the USE_GPFS_HINTS
- macro), then this extra parameter will turn GPFS hints on and off
- during runtime. BW - 2003/05/05
- * Added option to print 1-byte integer datasets as ASCII to h5dump. BW -
- 2003/04/30
- * Added a new utility "h5fc". It can be used to compile easily Fortran
- programs which use HDF5. It automatically uses the compiler the HDF5
- library was built with and links in any libraries HDF5 requires.
- BW - 2003/04/10
- * Added new dataset creation property list functions for working with
- I/O filters: H5Pmodify_filter, H5Pget_filter_by_id and
- H5Pall_filters_avail. Also changed H5Zregister to use new method
- of registering filters with library. QAK - 2003/04/08
- * The first version of szip compression support were implemented.
- User should have static szlib library installed. Using function
- H5Pset_szip to pass the szip parameters to the HDF5 library.
- More detailed description of the process will be followed.
- KY-2003/04/01
- * Added Fletcher32 checksum as a filter in pipeline. It only works in
- chunked dataset. SLU - 2003/2/11
- * MPICH/MPE instrumentation feature added. Use --with-mpe[=DIR] to configure
- it. AKC - 2003/1/3
- * New functions H5Gget_num_objs, H5Gget_objname_by_idx and H5Gget_objtype_by_idx
- are added to the library. SLU - 2002/11/25
- * H5Dget_offset is added to return the offset of a dataset's data relative
- to the beginning of the file. SLU - 2002/11/7
- * Functions H5Tget_native_type and H5Tis_variable_str are added. The first
- one reconstructs a datatype based on native memory datatype. The second
- one checks if a datatype is variable string. SLU - 2002/11/6
- * Added environment variable "HDF5_DISABLE_VERSION_CHECK", which disables
- the version checking between the header files and the library linked into
- an application if set to '1'. This should be used with caution, mis-
- matched headers and library binaries can cause _serious_ problems.
- QAK - 2002/10/15
- * Added new API function to get the name of an object in a file, using
- an open ID (hid_t). QAK - 2002/10/14
- * Added API functions to return pointer to low-level file handle
- (H5Fget_vfd_handle and H5FDget_vfd_handle) and related property list
- setting functions(H5Pset_family_offset and H5Pset_multi_type).
- SLU - 2002/09/30
- * Changed "H5P[set|get]_space_time" functions to "H5P[set|get]_alloc_time"
- Unify all symbolic names for these functions to use "alloc time" instead
- of other names. QAK - 2002/09/13
- * Added "H5D_SPACE_ALLOC_INCR" setting to H5D_SPACE_ALLOC_EARLY and
- H5D_SPACE_ALLOC_LATE for H5Dset_space_time(). This allows chunked
- datasets to be incrementally allocated as in the 1.4.x branch.
- QAK - 2002/08/27
- * Compact dataset is added to the library. The data will be stored in
- the header message of dataset layout. Space allocation time has to be
- EARLY. No hyperslab is supported for parallel collective write. There
- is no API changes except activating H5Pset_layout and H5Pget_layout for
- compact dataset. -SLU, 2002/8/20
- * Added 'closing' parameter to VFL 'flush' callback function and H5FDflush.
- This allows the library to indicate that the file will be closed
- immediately following the call to 'flush' and can be used to avoid actions
- that are duplicated in the VFL 'close' callback function. QAK - 2002/05/20
- * Added feature to parallel chunk allocation routine to not write fill
- values to chunks allocated if the user has set the "fill time" to never.
- This can improve parallel I/O performance for chunked
- datasets. QAK - 2002/05/17
- * New functions H5Glink2 and H5Gmove2 were added to allow link and move to
- be in different locations in the same file. The old functions H5Glink
- and H5Gmove remain valid. SLU - 2002/04/26
- * Fill-value's behaviors for contiguous dataset have been redefined.
- Basically, dataset won't allocate space until it's necessary. Full details
- are available at http://hdf.ncsa.uiuc.edu/RFC/Fill_Value, at this moment.
- SLU - 2002/04/11
- * Added new routine "H5Dfill" to fill a selection with a particular value
- in memory. QAK - 2002/04/09
- * Improved performance of "regular" hyperslab I/O when using MPI-IO and the
- datatype conversion is unnecessary. QAK - 2002/04/02
- * Improved performance of single hyperslab I/O when datatype conversion is
- unnecessary. QAK - 2002/04/02
- * Added new "H5Sget_select_type" API function to determine which type of
- selection is defined for a dataspace ("all", "none", "hyperslab" or
- "point"). QAK - 2002/02/07
- * Added support to read/write portions of chunks directly, if they are
- uncompressed and too large to cache. This should speed up I/O on chunked
- datasets for a few more cases. QAK - 2002/01/31
- * Added H5Rget_obj_type() API function, which performs the same functionality
- as H5Rget_object_type(), but requires the reference type as a parameter
- in order to correctly handle dataset region references. Moved
- H5Rget_object_type() to be only compiled into the library when v1.4
- compatibility is enabled.
- * Added a new file access property, file close degree, to control file
- close behavior. It has four values, H5F_CLOSE_WEAK, H5F_CLOSE_SEMI,
- H5F_CLOSE_STRONG, and H5F_CLOSE_DEFAULT. Two correspond functions
- H5Pset_fclose_degree and H5Pget_fclose_degree are also provided. Two
- new functions H5Fget_obj_count and H5Fget_obj_ids are offerted to assist
- this new feature. For full details, please refer to the reference
- manual under the description of H5Fcreate, H5Fopen, H5Fclose and the
- functions mentioned above.
- * Removed H5P(get|set)_hyper_cache API function, since the property is no
- longer used.
- * Improved performance of non-contiguous hyperslabs (built up with
- several hyperslab selection calls).
- * Improved performance of single, contiguous hyperslabs when reading or
- writing.
- * As part of the transition to using generic properties everywhere, the
- parameter of H5Pcreate changed from H5P_class_t to hid_t, as well
- the return type of H5Pget_class changed from H5P_class_t to hid_t.
- Further changes are still necessary and will be documented here as they
- are made.
- * Improved regular hyperslab I/O by about a factor of 6 or so.
- * Modified the Pablo build procedure to permit building of the instrumented
- library to link either with the Trace libraries as before or with the
- Pablo Performance Capture Facility.
- * Added new F90 APIs for generic properties, new filters, and
- time/space allocation properties.
- * C++ API:
- - Added two new member functions: Exception::getFuncName() and
- Exception::getCFuncName() to provide the name of the member
- function, where an exception is thrown.
- - IdComponent::operator= becomes a virtual function because
- DataType, DataSpace, and PropList provide their own
- implementation. The new operator= functions invoke H5Tcopy,
- H5Scopy, and H5Pcopy to make a copy of a datatype, dataspace,
- and property list, respectively.
-
-Parallel Library:
------------------
-
-Tools:
-------
- * When the "-S" option for "simple" output is chosen, h5ls now displays
- modification times of datasets in UTC instead of local time.
- QAK - 2003/06/06
- * h5diff to compare two HDF5 files was added
- * h5import to import ascii and binary data to an HDF5 file was added.
- Old h5import tool in the tools/misc directory was renamed to
- h5createU8 to reflect its purpose. h5createU8 will be deleted in
- 1.6.1 release.
- * Two new scripts h5fc and h5c++ were added to compile F90 and C++
- HDF5 applications.
-
-Support for new platforms, languages and compilers.
-=======================================
- * Added C++ API support on HPUX11.00. BMR - 2003/03/19
- * Absoft compiler is supported for Fortran HDF5 Library.
- When building with Absoft compiler, add -DH5_ABSOFT to
- C compilation flags to get correct names of C functions
- called by Fortran APIs.
-
-
-Bug Fixes since HDF5-1.4.0 release
-==================================
-
-Library
--------
- * Don't attempt to perform collective I/O on chunked datasets with
- parallel I/O. QAK - 2003/06/05
- * The library now correctly reuses space when objects are deleted in the
- file. This should be handled correctly for every situation, except
- datasets with variable-length datatypes are not returning the space they
- use in the global heap currently. QAK - 2003/04/13
- * Fixed error in B-tree deletion routine which could cause groups to be
- corrupted when objects are removed from them.
- QAK - 2003/04/11
- * Fixed error in file space freeing code which could cause metadata to
- fail to be written to the file.
- QAK - 2003/04/11
- * -O caused errors in AIX 5.x platforms. Removed it from
- --enable-production mode. AKC - 2003/03/31
- * Corrected memory/resource leaks in per-thread key information when
- thread-safe operation was enabled. QAK - 2003/02/07
- * Improved error assertion for nil VL strings, making it fails with error
- stack instead of just assertion failure. SLU - 2002/12/16
- * Added two new API functions: H5Zunregister & H5Zfilter_avail.
- QAK - 2002/11/16
- * Add data shuffle filter(source code H5Zshuffle.c), the combination of the
- shuffling and compression can make data compression better without suffering
- much encoding and decoding CPU time for many application datasets(especially
- for floating point data). This adds a new API function: H5Pset_shuffle.
- KY - 2002/11/13
- * Allow scalar dataspaces to be used for parallel I/O. QAK - 2002/11/05
- * New functions H5Gget_comment(modification), H5Aget_storage_size,
- H5Arename. SLU - 2002/10/29
- * Fixed an assertion of H5S_select_iterate that did not account for scalar
- type that has no dimension sizes. AKC - 2002/10/15
- * Partially fixed space allocation inefficiencies in the file by
- improving our algorithms for re-using freed space. QAK - 2002/08/27
- * Fixed data corruption problem which could occur when fill values were
- written to a contiguously stored dataset in parallel. QAK - 2002/08/27
- * Fixed VL memory leak when data is overwritten. The heap objects holding
- old data are freed. If the fill value writing time is set to
- H5D_FILL_TIME_NEVER, the library prohibits user to create VL type dataset.
- The library free all the heap objects storing VL type if there is nested
- VL type(a VL type contains another VL type). SLU - 2002/07/10
- * Tweaked a few API functions to use 'size_t' instead of 'unsigned' or
- 'hsize_t', which may cause errors in some cases.
-
-
-Configuration
--------------
- * Included the both the examples of fortran and c++ "make check-install"
- testing. This tests the correctness of the h5fc command. AKC - 2003/04/22
- * When using gcc 3.x, we use -std=c99 instead of -ansi for compiling.
- QAK - 2003/04/11
- * IA64 platform has its own configure setting and use Intel Compilers as
- the default compilers (were gcc and pgf90 before.) This also eliminated
- the segmentation fault in the fortran test. The missing reference of
- "exit" is fixed too. AKC - 2003/04/02
-
-Performance
--------------
- * Improved dataset creation time by about 30% (relative to the 1.4.x
- branch).
-
-Tools
------
-
- * Added a -force option to h5redeploy. AKC - 2003/03/04
- * The VL string bug(data and datatype cannot be shown) in h5dump is fixed.
- -SLU - 2002/11/18
- * Fixed segfault if h5dump was invoked with some options but no file
- (e.g., h5dump -H). -AKC, 2002/10/15
- * Fixed so that the "-i" flag works correctly with the h5dumper.
- * Fixed segfault when "-v" flag was used with the h5dumper.
-
-
-Documentation
--------------
-
-
-
-
-
-
-Platforms Tested
-================
-
- AIX 5.1 (32 and 64-bit) xlc 6.0.0.2
- xlf 8.1.0.3
- xlC 6.0.0.4
- xlc 5.0.2.5
- xlf 7.1.1.2
- xlC 5.0.2.5
- mpcc_r 5.0.2.5
- mpxlf_r 7.1.1.2
- poe 3.2.0.10
- Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.2
- Cray Fortran Version 3.6.0.0.2
- mpt 2.2.0.0
- Cray SV1 sn9617 10.0.1.2 Cray Standard C Version 6.6.0.2
- mpt 2.2.0.0
- Cray Fortran Version 3.6.0.0.2
- Cray T90IEEE 10.0.1.01y Cray Standard C Version 6.4.0.2.3
- Cray Fortran Version 3.4.0.3
- mpt 2.1.0.0
- FreeBSD 4.7 gcc 2.95.4
- g++ 2.95.5
- HP-UX B.11.00 HP C HP92453-01 A.11.01.20
- HP F90 v2.4
- HP ANSI C++ B3910B A.03.13
- MPIch 1.2.4
- IRIX 6.5 MIPSpro cc 7.30
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
- F90 MIPSpro 7.3.1.3m (64 only)
- MPIch 1.2.4
- Linux 2.4.18 gcc 2.96, 3.2.2, 3.2.3
- g++ 3.2.2, 3.2.3
- Intel(R) C++ Version 7.1
- Intel(R) Fortran Compiler Version 7.1
- PGI compilers (pgcc, pgf90, pgCC) version 4.0-2
- MPIch 1.2.4
- OSF1 V5.1 Compaq C V6.4-014
- Compaq C V6.3-027
- Compaq Fortran V5.5-1877
- Compaq C++ V6.5-014
- MPI_64bit_R5
- g++ version 3.0 for C++
- SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
- (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0
- WorkShop Compilers 5.0 98/10/25
- FORTRAN 90 2.0 Patch 107356-04
- SunOS 5.8/32 Sun WorkShop 6 update 2 C 5.3
- (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
- Sun WorkShop 6 update 2 C++ 5.3
- SunOS 5.8/64 Sun WorkShop 6 update 2 C 5.3
- (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 90
- Sun WorkShop 6 update 2 C++ 5.3
- TFLOPS r1.0.4 v4.3.3 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with
- local modifications
- IA-32 Linux 2.4.9 gcc 2.96
- Intel(R) C++ Version 7.0
- Intel(R) Fortran Compiler Version 7.0
-
- IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731
- Intel(R) C++ Version 7.0
- Intel(R) Fortran Compiler Version 7.0
- Windows 2000 (NT5.0) MSVC++ 6.0
- DEC Visual Fortran 6.0
- Intel C and F90 compilers version 7.1
- Code Warrior 8.0
- Windows XP MSVC++.NET
- MAC OS X Darwin 6.5
- gcc and g++ Apple Computer, Inc. GCC
- version 1161, based on gcc version 3.1
-
-
-
-Supported Configuration Features Summary
-========================================
-
- In the tables below
- y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
-
-Platform C C F90 F90 C++ Shared zlib
- parallel parallel libraries (4)
-Solaris2.7 64-bit y y (1) y y (1) y y y
-Solaris2.7 32-bit y y (1) y y (1) y y y
-Solaris2.8 64-bit y y (1) y y (1) y y y
-Solaris2.8 32-bit y y y y (1) y y y
-IRIX6.5 y y (1) n n n y y
-IRIX64_6.5 64-bit y y (2) y y y y y
-IRIX64_6.5 32-bit y y (2) n n n y y
-HPUX11.00 y y (1) y y y y y
-OSF1 v5.1 y y y y y y y
-T3E y y (5) y y (5) n n y
-SV1 y y (5) y y (5) n n y
-T90 IEEE y y (5) y y (5) n n y
-TFLOPS n y (1) n n n n y
-AIX-5.1 32-bit y y y y y n y
-AIX-5.1 64-bit y y y y y n y
-WinXP (6) y n n n y y y
-WinXP Intel y n n n y y y
-Win2000 y n y n y y y
-Win2000 Intel y n y n y y y
-WinNT CW y n n n n n y
-Mac OS X 10.2 y n n n y y y
-FreeBSD y y (1) n n y y y
-Linux 2.4 gcc (3) y y (1) y (PGI) n y y y
-Linux 2.4 Intel (3) y n y n y n y
-Linux 2.4 PGI (3) y n y n y n y
-Linux 2.4 IA32 Intel y n y n y n y
-Linux 2.4 IA64 Intel y n y n y n y
-
-
-ASCII Table 2 -- for RELEASE.txt
-
-Platform static- Thread- SZIP GASS STREAM- High-level H4/H5
- exec safe VFD APIs tools (7)
-Solaris2.7 64-bit x y y n y y n
-Solaris2.7 32-bit x y y n y y y
-Solaris2.8 64-bit x y y n y y n
-Solaris2.8 32-bit x y y n y y y
-IRIX6.5 x n y n y y y
-IRIX64_6.5 64-bit x y y y y y y
-IRIX64_6.5 32-bit x y y y y y y
-HPUX11.00 x n y n y y y
-OSF1 v5.1 y n y n y y y
-T3E y n n n y y y
-SV1 y n n n y y y
-T90 IEEE y n n n y y n
-TFLOPS y n n n n n n
-AIX-5.1 32-bit y n y n y y y
-AIX-5.1 64-bit y n y n y y y
-WinXP (6) y n y n n y y
-WinXP Intel y n y n n y y
-Win2000 y n y n n y y
-Win2000 Intel y n y n n y y
-WinNT CW y n y n n y y
-Mac OS X 10.2 y n y n y y n
-FreeBSD y y y n y y y
-Linux 2.4 gcc (3) y y y n y y y
-Linux 2.4 Intel (3) y n y n y n n
-Linux 2.4 PGI (3) y n y n y n n
-Linux 2.4 IA32 Intel y n y n y y y
-Linux 2.4 IA64 Intel y n y n y y y
-
- Notes: (1) Using mpich 1.2.4.
- (2) Using mpt and mpich 1.2.4.
- (3) Linux 2.4 with GNU, Intel, and PGI compilers, respectively.
- (4) Shared libraries are provided only for the C library, except
- on Windows where they are provided for C and C++.
- (5) Using mpt.
- (6) Binaries only; source code for this platform is not being
- released at this time.
- (7) Includes the H4toH5 Library and the h4toh5 and h5toh4
- utilities.
- Compiler versions for each platform are listed in the preceding
- "Platforms Tested" table.
-
-
-
-Known Problems
-==============
-
-* PGI C++ compiler fails when compiling the C++ library's tests.
- Therefore, we cannot verify that the C++ library built with the PGI C++
- compiler is correct.
-
-* The h5dump tests may fail to match the expected output on some platforms
- (e.g. parallel jobs, Windows) where the error messages directed to
- "stderr" do not appear in the "right order" with output from stdout.
- This is not an error.
-
-* The stream-vfd test uses ip port 10007 for testing. If another
- application is already using that port address, the test will hang
- indefinitely and has to be terminated by the kill command. To try the
- test again, change the port address in test/stream_test.c to one not
- being used in the host.
-
-* The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system
- libraries on Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on IBM SP2 platform for the serial mode. The parallel mode works fine
- with this option.
-
- It is suggested that you don't use this option on these platforms
- during configuration.
-
-* With the gcc 2.95.2 compiler, HDF 5 uses the `-ansi' flag during
- compilation. The ANSI version of the compiler complains about not being
- able to handle the `long long' datatype with the warning:
-
- warning: ANSI C does not support `long long'
-
- This warning is innocuous and can be safely ignored.
-
-
-* The Stream VFD was not tested yet under Windows. It is not supported
- in the TFLOPS machine.
-
-
-* The ./dsets tests failed in the TFLOPS machine if the test program,
- dsets.c, is compiled with the -O option. The hdf5 library still works
- correctly with the -O option. The test program works fine if it is
- compiled with -O1 or -O0. Only -O (same as -O2) causes the test
- program to fail.
-
-* Certain platforms give false negatives when testing h5ls:
- - Cray J90 and Cray T90IEEE give errors during testing when displaying
- some floating-point values. These are benign differences due to
- the different precision in the values displayed and h5ls appears to
- be dumping floating-point numbers correctly.
-
-* Before building HDF5 F90 Library from source on Crays
- replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
- subdirectory in the top level directory with the Cray-specific files
- from the site:
-
-* On some platforms that use Intel compilers to build HDF5 fortran library,
- compilation may fail for fortranlib_test.f90, fflush1.f90 and fflush2.f90
- complaining about exit subroutine. Comment out the line
- IF (total_error .ne. 0) CALL exit (total_error)
-
- ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/hdf5-1.6.0/F90_source_for_Crays
-
-* On IA32 and IA64 systems, if you use a compiler other than GCC (such as
- Intel's ecc or icc compilers), you will need to modify the generated
- "libtool" program after configuration is finished. On or around line 104 of
- the libtool file, there are lines which look like:
-
- # How to pass a linker flag through the compiler.
- wl=""
-
- change these lines to this:
-
- # How to pass a linker flag through the compiler.
- wl="-Wl,"
-
- UPDATE: This is now done automatically by the configure script. However, if
- you still experience a problem, you may want to check this line in the
- libtool file and make sure that it has the correct value.
-
-* Information about building with PGI and Intel compilers is available in
- INSTALL file sections 5.7 and 5.8
------------------------------------------------------------------------
-%%%%1.4.5%%%% Release Information for hdf5-1.4.5 (02/February/03)
-
-
-13. Release information for HDF5 version 1.4.5
-==============================================================================
-
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.4.4 and
-HDF5-1.4.5, and contains information on the platforms tested and
-known problems in HDF5-1.4.5. For additional information check the
-HISTORY.txt file in the HDF5 source.
-
-The HDF5 documentation can be found on the NCSA ftp server
-(ftp.ncsa.uiuc.edu) in the directory:
-
- /HDF/HDF5/docs/
-
-For more information, see the HDF5 home page at:
-
- http://hdf.ncsa.uiuc.edu/HDF5/
-
-If you have any questions or comments, please send them to:
-
- hdfhelp@ncsa.uiuc.edu
-
-
-CONTENTS
-
-- New Features
-- Bug Fixes since HDF5-1.4.4
-- Performance Improvements
-- Documentation
-- Platforms Tested
-- Supported Configuration Features
-- Known Problems
-
-
-New Features
-============
- o Configuration
- ================
- * Added "unofficial support" for building with a C++ compiler (or at least
- not failing badly when building with a C++ compiler). QAK - 2003/01/09
- * Added "unofficial support" for AIX 64bits. See INSTALL for configure
- details. AKC - 2002/08/29
- * Added "--with-dmalloc" flag, to easily enable support for the 'dmalloc'
- debugging malloc implementation. QAK - 2002/07/15
-
- o Library
- =========
- o General
- ---------
- * Allow scalar dataspaces to be used for parallel I/O. QAK - 2002/11/05
- * Added environment variable "HDF5_DISABLE_VERSION_CHECK", which disables
- the version checking between the header files and the library linked
- into an application if set to '1'. This should be used with caution,
- mis-matched headers and library binaries can cause _serious_ problems.
- QAK - 2002/10/15
- * Partially fixed space allocation inefficiencies in the file by
- improving our algorithms for re-using freed space. QAK - 2002/08/27
- * API tracing has been improved. Nested API calls don't screw up the
- output format; function call and return event times can be logged;
- total time spent in each function can be logged. The following
- HDF5_DEBUG environment variable words affect tracing:
- trace -- turn on/off basic tracing
- ttimes -- turn on tracing and report event times and
- time spent in each API function.
- ttop -- turn on tracing but display only top-level
- API calls.
-
- o APIs
- ------
- * Several missing fortran APIs have been added to the library:
-
- h5get_libversion_f h5tget_member_index_f h5dget_storage_size_f
- h5check_version_f h5tvlen_create_f h5dvlen_get_max_len_f
- h5garbage_collect_f h5dwrite_vl_f
- h5dont_atexit_f h5dread_vl_f
-
- Functions h5dvlen_get_max_len_f, h5dwrite_vl_f, and h5dread_vl_f support
- VL Length C APIs functionality for integer, real and string datatypes.
- See HDF5 Reference Manual and HDF5 FORTRAN90 User's Notes for more
- information and for the functions description.
-
- o Parallel library
- ==================
- * The MPI-posix virtual file driver makes gpfs_fcntl() hints to tell
- the underlying GPFS file system to avoid prefetching byte range
- tokens if USE_GPFS_HINTS is defined when this file is compiled.
- This temporary solution is intended to be removed once the HDF5
- API supports the necessary functionality that makes it possible
- for this sort of thing do be done at a higher software layer.
- RPM - 2002/12/03
- * Added MPI-posix VFL driver. This VFL driver uses MPI functions to
- coordinate actions, but performs I/O directly with POSIX sec(2)
- (i.e. open/close/read/write/etc.) calls. This driver should _NOT_
- be used to access files that are not on a parallel filesystem.
- The following API functions were added:
- herr_t H5Pset_fapl_mpiposix(hid_t fapl_id, MPI_Comm comm);
- herr_t H5Pget_fapl_mpiposix(hid_t fapl_id, MPI_Comm *comm/*out*/);
- QAK - 2002/07/15
-
-
-
- o Support for new platforms and languages
- =========================================
- * C++ API now works on the Origin2000 (IRIX6.5.14.) BMR - 2002/11/14
-
-
- o Misc.
- =========================================
- HDF5 1.4.5 works with Portland Group Compilers (pgcc, pgf90 and pgCC
- version 4.0-2) on Linux 2.4
-
-
-Bug Fixes since HDF5-1.4.4 Release
-==================================
- * H5Fopen without the H5F_ACC_CREAT flag should not succeed in creating
- a new file with the 'core' VFL driver. QAK - 2003/01/24
- * Corrected metadata caching bug in parallel I/O which could cause hangs
- when chunked datasets were accessed with independent transfer mode.
- QAK - 2003/01/23
- * Allow opening objects with unknown object header messages.
- QAK - 2003/01/21
- * Added improved error assertion for nil VL strings. It return error
- stack instead of a simple assertion. SLU - 2002/12/16
- * Fixed h5dump bug(cannot dump data and datatype) for VL string.
- SLU - 2002/11/18
- * Fixed error condition where "none" selections were not being handled
- correctly in serial & parallel. QAK - 2002/10/29
- * Fixed problem where optimized hyperslab routines were incorrectly
- invoked for parallel I/O operations in collective mode. QAK - 2002/07/22
- * Fixed metadata corruption problem which could occur when many objects
- are created in a file during parallel I/O. QAK - 2002/07/19
- * Fixed minor problem with configuration when users specified /usr/include
- and /usr/lib for the --with-* options that some compilers can't
- handle. BW - 2003/01/23
-
-
-
-Documentation
-=============
- New PDF files are not available for this release.
-
-
-Platforms Tested
-================
-
- AIX 5.1 (32 and 64-bit) C for AIX Compiler, Version 6
- xlf 8.1.0.2
- poe 3.2.0.11
- Cray T3E sn6606 2.0.6.08 Cray Standard C Version 6.6.0.1.3
- Cray Fortran Version 3.6.0.0.12
- Cray SV1 10.0.1. 0 Cray Standard C Version 6.6.0.1.3
- Cray Fortran Version 3.6.0.0.12
- Cray T90IEEE 10.0.1.01u Cray Standard C Version 6.4.0.2.3
- Cray Fortran Version 3.4.0.3
- FreeBSD 4.7 gcc 2.95.4
- g++ 2.95.5
- HP-UX B.11.00 HP C HP92453-01 A.11.01.20
- HP F90 v2.4
- IRIX 6.5 MIPSpro cc 7.30
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
- F90 MIPSpro 7.3.1.3m (64 only)
- Linux 2.4.18 gcc 3.2.1
- g++ 3.2.1
- Intel(R) C++ Version 6.0
- Intel(R) Fortran Compiler Version 6.0
- PGI compilers (pgcc, pgf90, pgCC) version 4.0-2
- pgf90 3.2-4
- OSF1 V5.1 Compaq C V6.4-014
- Compaq Fortran X5.4A-1684
- gcc version 3.0 for C++
- SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
- (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0
- WorkShop Compilers 5.0 98/10/25
- FORTRAN 90 2.0 Patch 107356-04
- SunOS 5.8/32 Sun WorkShop 6 update 1 C 5.2 2000/09/11
- (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
- Patch 109503-07 2001/08/11
- Sun WorkShop 6 update 1 C++ 5.2 Patch
- 109508-04 2001/07/11
- SunOS 5.8/64 Sun WorkShop 6 update 1 C 5.2 2000/09/11
- (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
- Patch 109503-07 2001/08/11
- Sun WorkShop 6 update 1 C++ 5.2 Patch
- 109508-04 2001/07/11
- TFLOPS r1.0.4 v4.3.3 i386 pgcc Rel 3.1-4i with mpich-1.2.4 with
- local modifications
- IA-32 Linux 2.4.9 gcc 2.96
- Intel(R) C++ Version 7.0
- Intel(R) Fortran Compiler Version 7.0
-
- IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731
- Intel(R) C++ Version 7.0
- Intel(R) Fortran Compiler Version 7.0
- Windows 2000 (NT5.0) MSVC++ 6.0
- DEC Visual Fortran 6.0
- Windows XP .NET
- Windows NT4.0 Code Warrior 6.0
- MAC OS X Darwin 6.2
- gcc and g++ Apple Computer, Inc. GCC
- version 1161, based on gcc version 3.1
-
-
-
-Supported Configuration Features Summary
-========================================
-
- In the tables below
- y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
-
-
- Platform C C F90 F90 C++ Shared zlib
- parallel parallel libraries (5)
- Solaris2.6 y n y n y y y
- Solaris2.7 64-bit y y (1) y y (1) y y y
- Solaris2.7 32-bit y y (1) y y (1) y y y
- Solaris2.8 64-bit y n y y (1) y y y
- Solaris2.8 32-bit y n y y (1) y y y
- IRIX6.5 y y (1) n n n y y
- IRIX64_6.5 64-bit y y (2) y y y y y
- IRIX64_6.5 32-bit y y (2) n n n y y
- HPUX11.00 y y (1) y n n y y
- OSF1 v5.1 y n y n y y y
- T3E (6) y n y n n n y
- SV1 y n y n n n y
- T90 IEEE y n y n n n y
- TFLOPS n y (1) n n n n y
- AIX-5.1 32-bit y y y y y n y
- AIX-5.1 64-bit y y y y y n y
- WinXP (7) y n n n y y y
- WinNT/2000 y n y n y y y
- WinNT CW y n n n n n y
- Mac OS X 10.2 y n n n y y y
- FreeBSD y y (1) n n y y y
- Linux 2.2 y y (1) y y (1) y y y
- Linux 2.4 gcc (3) y y (1) y n y y y
- Linux 2.4 Intel (3) y n y n n n y
- Linux 2.4 PGI (3) y n y n y n y
- Linux 2.4 IA32 y n y n n n y
- Linux 2.4 IA64 y n y n n n y
-
-
- Platform static- Thread- SRB GASS STREAM-
- exec safe VFD
- Solaris2.6 x y n n y
- Solaris2.7 64-bit x y n n y
- Solaris2.7 32-bit x y n n y
- Solaris2.8 64-bit x n n n y
- Solaris2.8 32-bit x y n n y
- IRIX6.5 x n n n y
- IRIX64_6.5 64-bit x y n y y
- IRIX64_6.5 32-bit x y n y y
- HPUX11.00 x n n n y
- OSF1 v5.1 y n n n y
- T3E (6) y n n n y
- SV1 y n n n y
- T90 IEEE y n n n y
- TFLOPS y n n n n
- AIX-5.1 32-bit y n n n y
- AIX-5.1 64-bit y n n n y
- WinXP (7) dna n n n n
- WinNT/2000 dna n n n n
- WinNT CW dna n n n n
- Mac OS X 10.2 y n n n y
- FreeBSD y y n n y
- Linux 2.2 y y n n y
- Linux 2.4 gcc (3) y y n n y
- Linux 2.4 Intel (3) y n n n y
- Linux 2.4 PGI (3) y n n n y
- Linux 2.4 IA32 y n n n y
- Linux 2.4 IA64 y n n n y
-
- Notes: (1) Using mpich 1.2.4.
- (2) Using mpt and mpich 1.2.4.
- (3) Linux 2.4 with GNU, Intel, and PGI compilers.
- (4) No HDF4-related tools.
- (5) Shared libraries are provided only for the C library,
- except on Windows where they are provided for all languages.
- (6) Debug mode only.
- (7) Binaries only; source code for this platform is not being
- released at this time.
-
-
-Known Problems
-==============
-
- * On Linux 2.4 IA64, Fortran test fails for h5dwrite_vl_f
- for integer and real base datatypes.
-
- * When fortran library is built with Intel compilers, compilation
- for fflush1.f90, fflush2.f90 and fortanlib_test.f90 will fail
- complaining about EXEC function. Comment the call to EXEC subroutine
- in each program, or get a patch for the HDF5 Fortran source code.
-
- * Fortran external dataset test fails on Linux 2.4 with pgf90 compiler.
-
- * On Windows, h5dump may abort printing if a VL string is longer than 4096
- bytes due to a compiler problem. It'll be fixed in v1.6 release.
-
- * Datasets or attributes which have a variable-length string datatype are
- not printing correctly with h5dump and h5ls.
-
- * When a dataset with the variable-length datatype is overwritten,
- the library can develop memory leaks that cause the file to become
- unnecessarily large. This is planned to be fixed in the next release.
-
- * On the SV1, the h5ls test fails due to a difference between the
- SV1 printf precision and the printf precision on other platforms.
-
- * The h5dump tests may fail to match the expected output on some
- platforms (e.g. SP2 parallel, Windows) where the error messages
- directed to "stderr" do not appear in the "right order" with output
- from stdout. This is not an error.
-
- * The --enable-static-exec configure flag fails to compile for HP-UX
- 11.00 platforms.
-
- * The executables are always dynamic on IRIX64 6.5(64 and n32) and
- IRIX 6.5 even if they are configured with --enable-static-exec.
-
- * IRIX 6.5 fails to compile if configured with --enable-static-exec.
-
- * The executables are always dynamic on Solaris 2.7 and 2.8(64 and n32)
- even if they are configured with --enable-static-exec.
-
- * The HDF5_MPI_OPT_TYPES optimization code in the parallel HDF5 will cause
- a hang in some cases when chunked storage is used. This is now set to
- be off by default. One may turn it on by setting the environment
- variable HDF5_MPI_OPT_TYPES to a non-zero value such as 1.
-
- * On OSF1 v5.1 and IA32 h5dumpgentst program that generates test files
- for h5dump, gives segmentation fault.
-
- * On Windows platforms, C and Fortran tests fail with the debug DLL version
- of the Library if built from all_withf90.zip file.
-
- * On Cray T3E (sn6606 2.0.6.08 unicosmk CRAY T3E) with Cray Standard C Version 6.6.0.1.3
- compiler optimization causes errors in many HDF5 Library tests. Use -g -h zero flags
- to build HDF5 Library.
-
- * On Cray SV1 10.0.1. 0 datatype conversion test fails. Please check HDF FTP site
- if patch is available. We will try to provide one in the nearest future.
-
- * For configuration, building and testing with Intel and PGI compilers see
- corresponding section in INSTALL file.
-
-
-%%%%1.4.4%%%% Release Information for hdf5-1.4.4 (02/July/02)
-
-12. Release information for HDF5 version 1.4.4
-==============================================================================
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.4.3 and
-HDF5-1.4.4, and contains information on the platforms tested and
-known problems in HDF5-1.4.4. For more details check the HISTORY.txt
-file in the HDF5 source.
-
-The HDF5 documentation can be found on the NCSA ftp server
-(ftp.ncsa.uiuc.edu) in the directory:
-
- /HDF/HDF5/docs/
-
-For more information, see the HDF5 home page at:
-
- http://hdf.ncsa.uiuc.edu/HDF5/
-
-If you have any questions or comments, please send them to:
-
- hdfhelp@ncsa.uiuc.edu
-
-
-CONTENTS
-
-- New Features
-- Bug Fixes since HDF5-1.4.3
-- Performance Improvements
-- Documentation
-- Platforms Tested
-- Supported Configuration Features
-- Known Problems
-
-
-New Features
-============
- o Configuration
- ================
- * The H4 to H5 tools have been removed from the main source and placed
- in a separate package. You can get these tools from the HDF ftp site
- (ftp://hdf.ncsa.uiuc.edu/). The "--with-hdf4" command-line option
- during configure is no longer valid. BW - 2002/06/25
-
- o Library
- =========
- o General
- ---------
- * Fill-value forward-compatibility with release 1.5 was added. SLU -
- 2002/04/11
- * A new query function H5Tget_member_index has been added for compound
- and enumeration data types. This function retrieves a member's index
- by name. SLU - 2002/04/05
- * Added serial multi-gigabyte file size test. "test/big -h" shows
- the help page. AKC - 2002/03/29
-
- o APIs
- ------
- * The F90 subroutines h5dwrite_f, h5dread_f, h5awrite_f, and h5aread_f
- were overloaded with a "dims" argument of type INTEGER(HSIZE_T) to
- specify the size of the array. We recommend using these subroutines
- with the new type; module subroutines that accept "dims" as an i
- INTEGER array of size 7 will be deprecated in release 1.6.
- EIP - 2002/05/06
-
- o Performance
- -------------
- * Added internal "small data" aggregation, which can reduce the number of
- actual I/O calls made, improving performance. QAK - 2002/06/05
- * Improved internal metadata aggregation, which can reduce the number of
- actual I/O calls made, improving performance. Additionally, this can
- reduce the size of files produced. QAK - 2002/06/04
- * Improved internal metadata caching, which can reduce the number of
- actual I/O calls made by a substantial amount, improving
- performance. QAK - 2002/06/03
-
-
- o Parallel library
- ==================
- * Fixed bug in parallel I/O routines where a collective I/O which used
- MPI derived types, followed by an independent I/O would cause the library
- to hang. QAK 2002/06/24
- * Added environment variable flag to control whether creating MPI derived
- types is preferred or not. This can affect performance, depending on
- which way the MPI-I/O library is optimized. The default is set to
- prefer MPI derived types for collective raw data transfers; setting the
- HDF5_MPI_PREFER_DERIVED_TYPES environment variable to "0" (i.e.:
- "setenv HDF5_MPI_PREFER_DERIVED_TYPES 0") changes the preference to avoid
- using them whenever possible. QAK - 2002/06/19
- * Changed MPI I/O routines to avoid creating MPI derived types (and thus
- needing to set the file view) for contiguous selections within datasets.
- This should result in some performance improvement for those types of
- selections. QAK - 2002/06/18
- * Changed MPI type support for collective I/O to be enabled by default.
- This can be disabled by setting the HDF5_MPI_OPT_TYPES environment
- variable to the value "0". QAK - 2002/06/14
- * Allowed chunks in chunked datasets to be cached when parallel file is
- opened for read-only access (bug #709). QAK - 2002/06/10
- * Changed method for allocating chunked dataset blocks to only allocate
- blocks that don't already exist, instead of attempting to create all the
- blocks all the time. This improves performance for chunked
- datasets. QAK - 2002/05/17
- * Allowed the call to MPI_File_sync to be avoided when the file is going to
- immediately be closed, improving performance. QAK - 2002/05/13
- * Allowed the metadata writes to be shared among all processes, easing the
- burden on process 0. QAK - 2002/05/10
-
-
- o Tools
- =======
- * h5redeploy utility was added. It updates HDF5 compiler tools
- after the HDF5 software has been installed in a new location.
-
-
- o Support for new platforms and languages
- =========================================
- * Parallel Fortran Library works now on HP-UX B.11.00 Sys V.
- EIP - 2002/05/06
- * Intel C++ and F90 compilers Version 6.0 are supported on Linux 2.4.
- * Intel C++ compilers Version 6.0 are supported on Windows 2000.
-
-
- o Misc.
- =========================================
- * zlib has been moved out of the Windows source release. Users should go to
- the ZLIB homepage(http://www.zlib.org) to download the corresponding
- zlib library.
- * The Windows binary release is built with the old version of the zlib
- library. We expect users to use zlib 1.1.4 to build with the source
- release.
- * In the Windows-specific install document, we specify how to test backward
- compatibility. However, in this release, we are not testing the backward
- compatibility of HDF5.
-
-
-Bug Fixes since HDF5-1.4.3 Release
-==================================
- * Fixed bug in chunking routines where they were using internal allocation
- free routines, instead of malloc/free, preventing user filters from
- working correctly. Chunks are now allocated/freed with malloc/free and
- so should the chunks in user filters. QAK 2002/06/18
- * Fixed bug where regular hyperslab selection could get incorrectly
- transferred when the number of elements in a row did not fit evenly
- into the buffer provided. QAK 2002/06/12
- * Fixed bug (#499) which allowed an "empty" compound or enumerated datatype
- (one with no members) to be used to create a dataset or to be committed
- to a file. QAK - 2002/06/11
- * Fixed bug (#777) which allowed a compound datatype to be inserted into
- itself. QAK - 2002/06/10
- * Fixed bug (#789) where creating 1-D dataset region reference caused the
- library to go into infinite loop. QAK - 2002/06/10
- * Fixed bug (#699, fix provided by a user) where a scalar dataspace was
- written to the file and then subsequently queried with the
- H5Sget_simple_extent_type function; type was reported as H5S_SIMPLE
- instead of H5S_SCALAR. EIP - 2002/06/04
- * Clear symbol table node "dirty" flag when flushing symbol tables to
- disk, to reduce I/O calls made & improve performance. QAK - 2002/06/03
- * Fixed bug where an object's header could get corrupted in certain
- obscure situations when many objects were created in the
- file. QAK - 2002/05/31
- * Fixed bug where read/write intent in file IDs created with H5Freopen
- was not being kept the same as the original file. QAK - 2002/05/14
- * Fixed bug where selection offsets were not being used when iterating
- through point and hyperslab selections with
- H5Diterate(). QAK - 2002/04/29
- * Fixed bug where the data for several level deep nested compound &
- variable-length datatypes used for datasets were getting corrupted when
- written to the file. QAK - 2002/04/17
- * Fixed bug where selection offset was being ignored for certain hyperslab
- selections when optimized I/O was being performed. QAK - 2002/04/02
- * Fixed limitation in h5dumper with object names which reached over 1024
- characters in length. We can now handle arbitrarily larger sizes for
- object names. BW - 2002/03/29
- * Fixed bug where variable-length string type did not behave as a
- string. SLU - 2002/03/28
- * Fixed bug in H5Gget_objinfo() which was not setting the 'fileno'
- of the H5G_stat_t struct. QAK - 2002/03/27
- * Fixed data corruption bug in hyperslab routines when contiguous
- hyperslab that spans entire dimension and is larger than type
- conversion buffer is attempted to be read. QAK - 2002/03/26
-
-
-Performance Improvements
-========================
- This release of the HDF5 library has been extensively tuned to improve
- performance, especially to improve parallel I/O performance.
- Most of the specific information for particular performance improvements
- is mentioned in the "New Features" and "Bug Fixes since HDF5-1.4.3" sections
- of this document, but in general, the library should make fewer and larger
- I/O requests when accessing a file. Additionally, improvements to the parallel
- I/O portions of the library should have reduced the communications and barriers
- used in various internal algorithms, improving the performance of the library.
- However, with the extensive changes to some portions of the library that
- were required for these improvements, some errors or unanticipated results may
- have been introduced also. Please report any problems encountered to our
- support team at hdfhelp@ncsa.uiuc.edu.
- Hopefully these improvements will benefit all HDF5 applications, but if
- there are particular I/O patterns that appear to be slower than necessary,
- please send e-mail to hdfhelp@ncsa.uiuc.edu with a sample program showing the
- problem behavior; we will look into the issue to see if it is possible to
- address it.
-
-
-Documentation
-=============
- * Documentation was updated for the hdf5-1.4.4 release.
- * A new "HDF5 User's Guide" is under development. See
- http://hdf.ncsa.uiuc.edu/HDF5/doc_dev_snapshot/H5_NewUG/current/.
- * A "Parallel HDF5 Tutorial" is available at
- http://hdf.ncsa.uiuc.edu/HDF5/doc/Tutor/.
- * The "HDF5 Tutorial" is not distributed with this release. It is
- available at http://hdf.ncsa.uiuc.edu/HDF5/doc/Tutor/.
-
-
-Platforms Tested
-================
-
- AIX 4.3.3.0 (IBM SP powerpc) xlc 5.0.2.0
- mpcc_r 5.0.2.0
- xlf 07.01.0000.0002
- mpxlf 07.01.0000.0002
- AIX 4.3 (IBM SP RS6000) C for AIX Compiler, Version 5.0.2.0
- xlf 7.1.0.2
- poe 3.1.0.12 (includes mpi)
- AIX 5.1 xlc 5.0.2.0
- xlf 07.01.0000.0002
- mpcc_r 5.0.2.0; mpxlf_r 07.01.0000.0002
- Cray T3E sn6711 2.0.5.57 Cray Standard C Version 6.5.0.3
- Cray Fortran Version 3.5.0.4
- Cray SV1 10.0.1.1 Cray Standard C Version 6.5.0.3
- Cray Fortran Version 3.5.0.4
- FreeBSD 4.6 gcc 2.95.4
- g++ 2.95.4
- HP-UX B.10.20 HP C HP92453-01 A.10.32.30
- HP F90 v2.3
- HP-UX B.11.00 HP C HP92453-01 A.11.01.20
- HP F90 v2.4
- HP-UX B.11.00 SysV HP C HP92453-01 A.11.01.20
- HP F90 v2.4
- HP MPI [not a product] (03/24/2000) B6060BA
- IRIX 6.5 MIPSpro cc 7.30
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.3m
- F90 MIPSpro 7.3.1.3m (64 only)
- Linux 2.4.9-31smp gcc 2.95.3
- g++ 2.95.3
- Intel(R) C++ Version 6.0
- Intel(R) Fortran Compiler Version 6.0
- MPICH 1.2.2
- Linux 2.2.18smp gcc 2.95.2
- gcc 2.95.2 with mpich 1.2.1
- g++ 2.95.2
- pgf90 3.2-4
- OSF1 V5.1 Compaq C V6.4-014
- Compaq Fortran V5.5-1877-48BBF
- gcc version 3.0 for C++
- SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
- (Solaris 2.7) WorkShop Compilers 5.0 98/12/15 C++ 5.0
- WorkShop Compilers 5.0 98/10/25
- FORTRAN 90 2.0 Patch 107356-04
- SunOS 5.8/32 Sun WorkShop 6 update 1 C 5.2 2000/09/11
- (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
- Patch 109503-07 2001/08/11
- Sun WorkShop 6 update 1 C++ 5.2 Patch
- 109508-04 2001/07/11
- SunOS 5.8/64 Sun WorkShop 6 update 1 C 5.2 2000/09/11
- (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
- Patch 109503-07 2001/08/11
- Sun WorkShop 6 update 1 C++ 5.2 Patch
- 109508-04 2001/07/11
- TFLOPS r1.0.4 v4.2.2 i386 pgcc Rel 3.1-4i with mpich-1.2.3 with
- local modifications
- IA-32 Linux 2.4.9 cc Intel 5.0.1
- gcc 2.96
- Intel(R) C++ Version 6.0
- Intel(R) Fortran Compiler Version 6.0
-
- IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731
- Intel(R) C++ Version 6.0
- Intel(R) Fortran Compiler Version 6.0
- Windows 2000 (NT5.0) MSVC++ 6.0
- DEC Visual Fortran 6.0
- Windows NT4.0 MSVC++ 6.0
- DEC Visual Fortran 6.0
- Windows NT4.0 Code Warrior 6.0
-
-
-Supported Configuration Features Summary
-========================================
-
- In the tables below
- y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- ( ) = footnote appears below second table
-
-
- Platform C C F90 F90 C++ Shared zlib Tools
- parallel parallel libraries(5)
- Solaris2.6 y n y n y y y y
- Solaris2.7 64 y y (1) y n y y y y
- Solaris2.7 32 y y (1) y n y y y y
- Solaris2.8 64 y n y n y y y y
- Solaris2.8 32 y n y n y y y y
- IRIX6.5 y y (1) n n n y y y
- IRIX64_6.5 64 y y (2) y y n y y y
- IRIX64_6.5 n32 y y (2) n n n y y y
- HPUX10.20 y n y n n y y y
- HPUX11.00 y n y n n y y y
- HPUX11 SysV y y y y n y y y
- OSF1 v5.1 y n y n y y y y
- T3E y y y y n n y y
- SV1 y n y n n n y y
- TFLOPS n y (1) n n n n y y (4)
- AIX-4.3 y y y y y n y y
- AIX-5.1 y y y y n n y y
- WinNT/2000 y n y n y y y y
- WinNT CW y n n n n n y y
- FreeBSD y n n n y y y y
- Linux 2.2 y y (1) y n y y y y
- Linux 2.4 y y (1) n n y y y y
- Linux 2.4 Intel(6) y n y n y n y y
- Linux 2.4 IA32 y n y n n n y y
- Linux 2.4 IA64 y n y n n n y y
-
-
- Platform 1.2 static- Thread- SRB GASS STREAM-
- compatibility exec safe VFD
- Solaris2.6 y x y n n y
- Solaris2.7 64 y x y n n y
- Solaris2.7 32 y x y n n y
- Solaris2.8 64 y y n n n y
- Solaris2.8 32 y x y n n y
- IRIX6.5 y x n n n y
- IRIX64_6.5 64 y x y n y y
- IRIX64_6.5 n32 y x y n y y
- HPUX10.20 y y n n n y
- HPUX11.00 y x n n n y
- HPUX11 SysV y x n n n y
- OSF1 v5.1 y y n n n y
- T3E y y n n n y
- SV1 y y n n n y
- TFLOPS y y n n n n
- AIX-4.3 y y (3) n n n y
- AIX-5.1 y y n n n y
- WinNT/2000 y y n n n n
- WinNT CW n n n n n n
- FreeBSD y y y n n y
- Linux 2.2 y y y n n y
- Linux 2.4 y y y n n y
- Linux 2.4 Intel(6) y y n n n y
- Linux 2.4 IA32 y y n n n y
- Linux 2.4 IA64 y y n n n y
-
-
- Footnotes: (1) Using mpich.
- (2) Using mpt and mpich.
- (3) When configured with static-exec enabled, tests fail in
- serial mode.
- (4) No HDF4-related tools.
- (5) Shared libraries are provided only for the C library,
- except on Windows where they are provided for all languages.
- (6) Linux 2.4 with Intel compilers.
-
-
-Known Problems
-==============
-
- * Datasets or attributes which have a variable-length string datatype are
- not printing correctly with h5dump and h5ls.
-
- * When a dataset with the variable-length datatype is overwritten,
- the library can develop memory leaks that cause the file to become
- unnecessarily large. This is planned to be fixed in the next release.
-
- * On the SV1, the h5ls test fails due to a difference between the
- SV1 printf precision and the printf precision on other platforms.
-
- * The h5dump tests may fail to match the expected output on some
- platforms (e.g. SP2 parallel, Windows) where the error messages
- directed to "stderr" do not appear in the "right order" with output
- from stdout. This is not an error.
-
- * The --enable-static-exec configure flag fails to compile for HP-UX
- 11.00 platforms.
-
- * The executables are always dynamic on IRIX64 6.5(64 and n32) and
- IRIX 6.5 even if they are configured with --enable-static-exec.
-
- * IRIX 6.5 fails to compile if configured with --enable-static-exec.
-
- * The HDF5_MPI_OPT_TYPES optimization code in the parallel HDF5 will cause
- a hang in some cases when chunked storage is used. This is now set to
- be off by default. One may turn it on by setting the environment
- variable HDF5_MPI_OPT_TYPES to a non-zero value such as 1.
-
- * On IA32 and IA64 systems, if you use a compiler other than GCC (such as
- Intel's ecc or icc compilers), you will need to modify the generated
- "libtool" program after configuration is finished. On or around line 104
- of the libtool file, there are lines which look like:
-
- # How to pass a linker flag through the compiler.
- wl=""
-
- Change these lines to this:
-
- # How to pass a linker flag through the compiler.
- wl="-Wl,"
-
- * To build the Fortran library using Intel compilers, one has to
- x modify the source code in the fortran/src directory to remove the
- !DEC and !MS compiler directives.
- x The build will fail in the fortran/test directory and then in the
- fortran/examples directory; to proceed, edit the work.pcl files in
- those directories to contain two lines
-
- work.pc
- ../src/work.pc
-
- * To build the Fortran library on IA64 use
- setenv CC "ecc -DIA64"
- setenv F9X "efc -cl,work.pcl"
- before running configure and see the steps described above.
-
-
-%%%%1.4.3%%%% Release Information for hdf5-1.4.3 (18/Februaru/02)
-
-11. Release information for HDF5 version 1.4.3
-==============================================================================
-
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.4.2 and
-HDF5-1.4.3, and contains information on the platforms tested and
-known problems in HDF5-1.4.2. For more details check the HISTORY.txt
-file in the HDF5 source.
-
-The HDF5 documentation can be found on the NCSA ftp server
-(ftp.ncsa.uiuc.edu) in the directory:
-
- /HDF/HDF5/docs/
-
-For more information look at the HDF5 home page at:
-
- http://hdf.ncsa.uiuc.edu/HDF5/
-
-If you have any questions or comments, please send them to:
-
- hdfhelp@ncsa.uiuc.edu
-
-
-CONTENTS
-
-- New Features
-- Bug Fixes since HDF5-1.4.2
-- Documentation
-- Platforms Tested
-- Supported Configuration Features
-- Known Problems
-
-
-New Features
-============
- o Configuration
- ================
- * Can use just enable-threadsafe if the C compiler has built-in pthreads
- support.
-
- o Library
- =========
- o General
- ---------
- * Added a new test to verify the information provided by the configure
- command.
- * Changed internal error handling macros to reduce code size of library by
- about 10%.
-
- o APIs
- ------
- * Changed prototype for H5Awrite from:
- H5Awrite(hid_t attr_id, hid_t type_id, void *buf)
- to:
- H5Awrite(hid_t attr_id, hid_t type_id, const void *buf)
- * The H5Pset_fapl_split() accepts raw and meta file names similar to the
- syntax of H5Pset_fapl_multi() in addition to what it used to accept.
-
- C++ API:
- * Added operator= to class PredType
- * Add the overloaded member function Attribute::getName to return
- the attribute name's length as in C API. Note that the current
- Attribute::getName, that returns "string", is still available.
- * Following the change in the C library, the corresponding C++ API
- is changed from:
- void Attribute::write( const DataType& mem_type, void *buf )
- to:
- void Attribute::write( const DataType& mem_type, const void *buf )
-
- o Performance
- -------------
- * Added perform programs to test the HDF5 library performance. Programs
- are installed in directory perform/.
- * Improved performance of byte-swapping during data conversions.
- * Improved performance of single, contiguous hyperslabs when reading or
- writing.
- * Added support to read/write portions of chunks directly, if they are
- uncompressed and too large to cache. This should speed up I/O on chunked
- datasets for a few more cases. -QAK, 1/31/02
-
- o Parallel Library
- ==================
- * Parallel C HDF5 now works on HP-UX platforms, Compaq clusters,
- Linux clusters, Cplants (alpha-linux clusters).
-
- o Tools
- =======
- * A helper script called ``h5cc'', which helps compilation of HDF5
- programs, is now distributed with HDF5. See the reference manual
- for information on how to use this feature.
- * The H5Dumper can now dump comments associated with groups. -WCW 01-05-02
-
- o Support for new platforms and languages
- =========================================
- * HDF5 C++ Library is supported on Windows platforms (shared and static)
- * HDF5 F90 shared library is supported on Windows platforms.
- * HDF5 C Library is supported on IA32 and IA64 platforms.
-
-
-
-Bug Fixes since HDF5-1.4.2 Release
-==================================
-
- * Fixed a bug when reading chunked datasets where the edge of the dataset
- would be incorrectly detected and generate an assertion failure.
- * Fixed a bug where reading an entire dataset wasn't being handled
- optimally when the dataset had unlimited dimensions. Dataset is read
- in a single low-level I/O now, instead of being broken into separate
- pieces internally.
- * Fixed a bug where reading or writing chunked data which needed datatype
- conversion could result in data values getting corrupted.
- * Fixed a bug where appending a point selection to the current selection
- would not actually append the point when there were no points defined
- currently.
- * Fixed a bug where 'or'ing a hyperslab with a 'none' selection would
- fail. Now adds that hyperslab as the first hyperlab in the selection.
- * Fixed a bug in the 'big' test where quota limits weren't being detected
- properly if they caused close() to fail.
- * Fixed a bug in internal B-tree code where a B-tree was not being copied
- correctly.
- * Fixed an off-by-one error in H5Sselect_valid when hyperslab selections
- which would allow hyperslab selections which overlapped the edge of the
- selection by one element as valid.
- * Fixed the internal macros used to encode & decode file metadata, to avoid
- an unaligned access warning on IA64 machines.
- * Corrected behavior of H5Tinsert to not allow compound datatype fields to
- be inserted past the end of the datatype.
- * Retired the DPSS virtual file driver (--with-gridstorage configure
- option).
- * Fixed bug where variable-length datatypes for attributes was not working
- correctly.
- * Fixed bug where raw data re-allocated from the free-list would sometimes
- overlap with the metadata accumulator and get corrupted. QAK - 1/23/02
- * Fixed bug where a preempted chunk in the chunk data could still be
- used by an internal pointer and cause an assertion failure or core
- dump. QAK - 2/13/02
- * Fixed bug where non-zero fill-value was not being read correctly from
- certain chunked datasets when using an "all" or contiguous hyperslab
- selection. QAK - 2/14/02
-
-
-Documentation
-=============
- * Documentation was updated for the hdf5-1.4.3 release.
- * A new "HDF5 User's Guide" is under development. See
- http://hdf.ncsa.uiuc.edu/HDF5/doc_dev_snapshot/H5_NewUG/current/.
- * Parallel Tutorial is available at http://hdf.ncsa.uiuc.edu/HDF5/doc/Tutor/
-
-
-Platforms Tested
-================
-
- AIX 4.3.3.0 (IBM SP powerpc) xlc 5.0.2.0
- mpcc_r 5.0.2.0
- xlf 07.01.0000.0002
- mpxlf 07.01.0000.0002
- AIX 4.3 (IBM SP RS6000) C for AIX Compiler, Version 5.0.2.0
- xlf 7.1.0.2
- poe 3.1.0.12 (includes mpi)
- Cray T3E sn6711 2.0.5.57 Cray Standard C Version 6.5.0.3
- Cray Fortran Version 3.5.0.4
- Cray SV1 10.0.0.8 Cray Standard C Version 6.5.0.3
- Cray Fortran Version 3.5.0.4
- FreeBSD 4.5 gcc 2.95.3
- g++ 2.95.3
- HP-UX B.10.20 HP C HP92453-01 A.10.32.30
- HP F90 v2.3
- HP-UX B.11.00 HP C HP92453-01 A.11.01.20
- HP F90 v2.4
- HP-UX B.11.00 SysV HP C HP92453-01 A.11.01.20
- HP F90 v2.4
- HP MPI [not a product] (03/24/2000) B6060BA
- IRIX 6.5 MIPSpro cc 7.30
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.2m
- Linux 2.4.4 gcc 2.95.3
- g++ 2.95.3
- Linux 2.2.18smp gcc 2.95.2
- gcc 2.95.2 with mpich 1.2.1
- g++ 2.95.2
- pgf90 3.2-4
- OSF1 V5.1 Compaq C V6.3-028
- Compaq Fortran V5.4-1283
- SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
- (Solaris 2.7) Workshop Compilers 5.0 98/12/15 C++ 5.0
- Workshop Compilers 5.0 98/10/25
- FORTRAN 90 2.0 Patch 107356-04
- SunOS 5.8/32 Sun WorkShop 6 update 1 C 5.2 2000/09/11
- (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
- Patch 109503-07 2001/08/11
- Sun WorkShop 6 update 1 C++ 5.2 Patch
- 109508-04 2001/07/11
- SunOS 5.8/64 Sun WorkShop 6 update 1 C 5.2 2000/09/11
- (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
- Patch 109503-07 2001/08/11
- Sun WorkShop 6 update 1 C++ 5.2 Patch
- 109508-04 2001/07/11
- TFLOPS r1.0.4 v4.0.8 i386 pgcc Rel 3.1-4i with mpich-1.2.1 with
- local modifications
- IA-32 Linux 2.2.10smpx cc Intel 5.0.1
- egcs-2.91.66
- IA-64 Linux 2.4.16 ia64 gcc version 2.96 20000731
- Intel(R) C++ Itanium(TM) Compiler
- for the Itanium(TM)-based applications,
- Version 6.0 Beta, Build 20010905
- Windows 2000 (NT5.0) MSVC++ 6.0
- DEC Visual Fortran 6.0
- Windows NT4.0 MSVC++ 6.0
- DEC Visual Fortran 6.0
- Windows NT4.0 Code Warrior 6.0
- Windows 98 MSVC++ 6.0
- DEC Visual Fortran 6.0
-
-
-Supported Configuration Features Summary
-========================================
-
- In the tables below
- y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- ( ) = footnote appears below second table
-
-
- Platform C C F90 F90 C++ Shared zlib Tools
- parallel parallel libraries
- (5)
- Solaris2.7 y y (1) y n y y y y
- Solaris2.8 64 y n y n y y y y
- Solaris2.8 32 y n y n y y y y
- IA-64 y n n n n n y y
- IRIX6.5 y y (1) n n n y y y
- IRIX64_6.5 64 y y (2) y y n y y y
- IRIX64_6.5 32 y y (2) n n n y y y
- HPUX10.20 y n y n n y y y
- HPUX11.00 y y y n n y y y
- HPUX11 SysV y y y n n y y y
- DECOSF y n y n y y y y
- T3E y y y y n n y y
- SV1 y n y n n n y y
- TFLOPS y y (1) n n n n y y (4)
- AIX-4.3 SP2 y y y y n n y n
- AIX-4.3 SP3 y y y y y n y n
- Win2000 y n y n y (6) y y y
- Win98 y n y n y (6) y y y
- WinNT y n y n y (6) y y y
- WinNT CW y n n n n n y y
- FreeBSD y n n n y y y y
- Linux 2.2 y y (1) y n y y y y
- Linux 2.4 y y (1) n n y y y y
-
-
- Platform 1.2 static- Thread- SRB GASS STREAM-
- compatibility exec safe VFD
- Solaris2.7 n x y n n y
- Solaris2.8 64 n y n n n y
- Solaris2.8 32 n x n n n y
- IA-64 n n n n n y
- IRIX6.5 n x y n n y
- IRIX64_6.5 64 n x y n y y
- IRIX64_6.5 32 n x y n y y
- HPUX10.20 n y n n n y
- HPUX11.00 n x n n n y
- HPUX11 SysV n x n n n y
- DECOSF n y n n n y
- T3E n y n n n y
- SV1 n y n n n y
- TFLOPS n y n n n n
- AIX-4.3 SP2 n y (3) n n n y
- AIX-4.3 SP3 n y n n n y
- Win2000 n y n n n n
- Win98 n y n n n n
- WinNT n y n n n n
- WinNT CW n n n n n n
- FreeBSD n y y n n y
- Linux 2.2 n y y n n y
- Linux 2.4 n y y n n y
-
-
- Footnotes: (1) Using mpich.
- (2) Using mpt and mpich.
- (3) When configured with static-exec enabled, tests fail
- in serial mode.
- (4) No HDF4-related tools.
- (5) Shared libraries are provided only for the C library.
- (6) Exception of (5): DLL is available for C++ API on Windows
-
-
-Known Problems
-==============
-
- * Datasets or attributes which have a variable-length string datatype are
- not printing correctly with h5dump and h5ls.
-
- * When a dataset with the variable-legth datatype is overwritten,
- the library can develop memory leaks that cause the file to become
- unnecessarily large. This is planned to be fixed in the next release.
-
- * On the SV1, the h5ls test fails due to a difference between the
- SV1 printf precision and the printf precision on other platforms.
-
-
- * The h5dump tests may fail to match the expected output in some
- platforms (e.g. SP2 parallel, Windows) where the error messages
- directed to "stderr" do not appear in the "right order" with output
- from stdout. This is not an error.
-
- * The --enable-static-exec configure flag fails to compile for HP-UX
- 11.00 platforms.
-
- * The executables are always dynamic on IRIX64 6.5(64 and n32) and
- IRIX 6.5 even if they are configured with --enable-static-exec.
-
- * IRIX 6.5 fails to compile if configured with --enable-static-exec.
-
- * The HDF5_MPI_OPT_TYPES optimization code in the parallel HDF5 will cause
- a hang in some cases when chunked storage is used. This is now set to
- be off by default. One may turn it on by setting environment variable
- HDF5_MPI_OPT_TYPES to a non-zero value such as 1.
-
- * On IA64 systems one has to use -DIA64 compilation flag to compile
- h4toh5 and h5toh4 utilities. After configuration step manually modify
- Makefile in the tools/h4toh4 and tools/h5toh4 directories to add
- -DIA64 to the compilation flags.
-
- * On IA32 ansd IA64 systems, if you use a compiler other than GCC
- (such as Intel's ecc compiler), you will need to modify the generated
- "libtool" program after configuration is finished. On or around line 102
- of the libtool file, there are lines which look like:
-
- # How to pass a linker flag through the compiler.
- wl=""
-
- change the lines to this:
-
- # How to pass a linker flag through the compiler.
- wl="-Wl,"
-
-
-%%%%1.4.2%%%% Release Information for hdf5-1.4.2 (31/July/01)
-
-10. Release Information for hdf5-1.4.2
-=================================================================
-
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.4.1 and
-HDF5-1.4.2, and contains information on the platforms tested and
-known problems in HDF5-1.4.2.
-
-The HDF5 documentation can be found on the NCSA ftp server
-(ftp.ncsa.uiuc.edu) in the directory:
-
- /HDF/HDF5/docs/
-
-For more information look at the HDF5 home page at:
-
- http://hdf.ncsa.uiuc.edu/HDF5/
-
-If you have any questions or comments, please send them to:
-
- hdfhelp@ncsa.uiuc.edu
-
-
-CONTENTS
-
-- New Features
-- Bug Fixes since HDF5-1.4.1
-- Documentation
-- Platforms Tested
-- Supported Configuration Features
-- Known Problems
-
-
-New Features
-============
-
- * File sizes greater than 2GB are now supported on Linux systems with
- version 2.4.x or higher kernels.
- * Added a global string variable H5_lib_vers_info_g which holds the
- HDF5 library version information. This can be used to identify
- an hdf5 library or hdf5 application binary.
- Also added a verification of the consistency between H5_lib_vers_info_g
- and other version information in the source code.
- * Parallel HDF5 now runs on the HP V2500 and HP N4000 machines.
- * F90 API:
- - Added additional parameter "dims" to the h5dread_f/h5dwrite_f and
- h5aread_f/h5awrite_f subroutines. This parameter is a 1-D array
- of size 7 and contains the sizes of the data buffer dimensions.
- This change enables portability between Windows and UNIX platforms.
- In previous versions of the F90 APIs, the data buffer parameters of
- the above functions were declared as assumed-shape arrays, which
- were passed to the C functions by a descriptor. There is no
- portable means, however, of passing descriptors from F90 to C,
- causing portability problems between Windows and UNIX and among
- UNIX platforms. With this change, the data buffers are assumed-
- size arrays, which can be portably passed to the C functions.
- * F90 static library is available on Windows platforms.
- See INSTALL_Windows_withF90.txt for details.
- * F90 APIs are available on HPUX 11.00 and 10.20 and IBM SP platforms.
- * H5 <-> GIF converter has been added. This is available under
- tools/gifconv. The converter supports the ability to create animated
- gifs as well.
- * Verified correct operation of library on Solaris 2.8 in both 64-bit and
- 32-bit compilation modes. See INSTALL document for instructions on
- compiling the distribution with 64-bit support.
- * Added support for the Metrowerks Code Warrior compiler for Windows.
- * For H4->H5 converter utility, added a new option to choose not to convert
- HDF4 specified attributes(reference number, class) into HDF5 attributes.
- * Added support chunking and compression in SDS and image in H4->H5 converter.
- Currently HDF5 only supports gzip compression, so by default an HDF4 file
- with any other compression method will be converted into an HDF5 file in
- gzip compression.
- * correct the order or reading HDF4 image array in H4->H5 conversion.
- * Added new parallel hdf5 tests in t_mpi. The new test checks if the
- filesystem or the MPI-IO can really handle greater than 2GB files.
- If it fails, it prints information message only without failing the
- test.
- * Added a parallel HDF5 example examples/ph5example.c to illustrate
- the basic way of using parallel HDF5.
- * Added a new public macro, H5_VERS_INFO, which is a string holding
- the HDF5 library version information. This string is also compiled
- into all HDF5 binary code which helps to identify the version information
- of the binary code. One may use the Unix strings command on the binary
- file and looks for the pattern "HDF5 library version".
- * Added new checking in H5check_version() to verify the five HDF5 version
- information macros (H5_VERS_MAJOR, H5_VERS_MINOR, H5_VERS_RELEASE,
- H5_VERS_SUBRELEASE and H5_VERS_INFO) are consistent.
-
-
-Bug Fixes since HDF5-1.4.1 Release
-==================================
-
- * Fixed bug with non-zero userblock sizes causing raw data to not
- write correctly.
- * Fixed problems with Pablo build and linking with non-standard MPI I/O.
- * Fixed build on Linux systems with --enable-static-exec flag. It now
- works correctly.
- * IMPORTANT: Fixed file metadata corruption bug which could cause
- metadata data loss in certain situations.
- * The allocation by alignment (H5Pset_alignment) feature code somehow
- got dropped in some 1.3.x version. Re-implemented it with "new and
- improved" algorithm. It keeps track of "wasted" file-fragment in
- the free-list too.
- * Removed limitation that the data transfer buffer size needed to be
- set for datasets whose dimensions were too large for the 'all'
- selection code to handle. Any size dimensioned datasets should be
- handled correctly now.
- * Changed behavior of H5Tget_member_type to correctly emulate HDF5 v1.2.x
- when --enable-hdf5v1_2 configure flag is enabled.
- * Added --enable-linux-lfs flag to allow more control over whether to
- enable or disable large file support on Linux.
- * Fixed various bugs related to SDS dimensional scale conversions in H4->H5
- converter.
- * Fixed a bug to correctly convert HDF4 objects with fill value into HDF5.
- * Fixed a bug of H5pubconf.h causing repeated definitions if it is included
- more than once. hdf5.h now includes H5public.h which includes
- H5pubconf.h. Applications should #include hdf5.h which handles multiple
- inclusion correctly.
- * Fixed H5FDmpio.h to be C++ friendly by making Parallel HDF5 API's to be
- external to C++.
- * Fixed a bug in H5FD_mpio_flush() that might result in negative file seek
- if both MPIO and Split-file drivers are used together.
-
-
-
-Documentation
-=============
-
- * The H5T_conv_t and H5T_cdata_t structures are now properly defined
- in the H5Tregister entry in the "H5T" section of the "HDF5 Reference
- Manual" and described in detail in section 12, "Data Conversions," in
- the "Datatypes" chapter of the "HDF5 User's Guide."
- * The new tools h52gif and gif2h5 have been added to the "Tools" section
- of the Reference Manual.
- * A "Freespace Management" section has been added to the "Performance"
- chapter of the User's Guide.
- * Several user-reported bugs have been fixed since Release 1.4.1.
- * The "HDF5 Image and Palette Specification" (in the "HDF5 Application
- Developer's Guide") has been heavily revised. Based on extensive user
- feedback and input from visualization software developers, Version 1.2
- of the image specification is substantially different from prior
- versions.
-
-
-Platforms Tested
-================
-
- AIX 4.3.3.0 (IBM SP powerpc) xlc 3.6.6.0
- mpcc_r 3.6.6.0
- xlf 07.01.0000.0002
- mpxlf 07.01.0000.0002
- AIX 4.3 (IBM SP RS6000) C for AIX Compiler, Version 5.0.2.0
- xlf 7.1.0.2
- poe 2.4.0.14 (includes mpi)
- Cray T3E sn6711 2.0.5.49a Cray Standard C Version 6.5.0.1
- Cray SV1 10.0.0.2 Cray Standard C Version 6.5.0.1
- Cray Fortran Version 3.5.0.1
- FreeBSD 4.3 gcc 2.95.3
- g++ 2.95.3
- HP-UX B.10.20 HP C HP92453-01 A.10.32.30
- HP F90 v2.3
- HP-UX B.11.00 HP C HP92453-01 A.11.01.20
- HP F90 v2.4
- HP-UX B.11.00 SysV HP C HP92453-01 A.11.01.20
- HP F90 v2.4
- IRIX 6.5 MIPSpro cc 7.30
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1.2m
- Linux 2.4.4 gcc 2.95.3
- g++ 2.95.3
- Linux 2.2.18smp gcc 2.95.2
- gcc 2.95.2 with mpich 1.2.1
- g++ 2.95.2
- pgf90 3.2-4
- OSF1 V4.0 DEC-V5.2-040 on Digital UNIX V4.0 (Rev 564)
- Digital Fortran 90 V4.1-270
- SunOS 5.6 WorkShop Compilers 5.0 98/12/15 C 5.0
- (Solaris 2.6) WorkShop Compilers 5.0 98/10/25 FORTRAN 90
- 2.0 Patch 107356-04
- SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
- (Solaris 2.7) Workshop Compilers 5.0 98/12/15 C++ 5.0
- Workshop Compilers 5.0 98/10/25 FORTRAN 90
- 2.0 Patch 107356-04
- SunOS 5.8/32 Sun WorkShop 6 update 1 C 5.2 2000/09/11
- (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
- 2000/09/11
- Sun WorkShop 6 update 1 C++ 5.2 2000/09/11
- SunOS 5.8/64 Sun WorkShop 6 update 1 C 5.2 2000/09/11
- (Solaris 2.8) Sun WorkShop 6 update 1 Fortran 95 6.1
- 2000/09/11
- Sun WorkShop 6 update 1 C++ 5.2 2000/09/11
- TFLOPS r1.0.4 v4.0.7 i386 pgcc Rel 3.1-4i with mpich-1.2.1 with
- local modifications
- Windows 2000 (NT5.0) MSVC++ 6.0
- Windows NT4.0 MSVC++ 6.0
- DEC Visual Fortran 6.0
- Windows NT4.0 Code Warrior 6.0
- Windows 98 MSVC++ 6.0
- DEC Visual Fortran 6.0
-
-
-Supported Configuration Features Summary
-========================================
-
- In the tables below
- y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- ( ) = footnote appears below second table
-
-
- Platform C C F90 F90 C++ Shared zlib Tools
- parallel parallel libraries
- (5)
- Solaris2.6 y n y n y y y y
- Solaris2.7 y y (1) y n y y y y
- Solaris2.8 64 y n n n y y y y
- Solaris2.8 32 y n y n y y y y
- IRIX6.5 y y (1) n n n y y y
- IRIX64_6.5 64 y y (2) y y n y y y
- IRIX64_6.5 32 y y (2) n n n y y y
- HPUX10.20 y n y n n y y y
- HPUX11.00 y n y n n y y y
- HPUX11 SysV y n y n n y y y
- DECOSF y n y n n y y y
- T3E y y y y n n y y
- SV1 y n y n n n y y
- TFLOPS y y (1) n n n n y y (4)
- AIX-4.3 SP2 y y y y n n y n
- AIX-4.3 SP3 y y y y n n y n
- Win2000 y n n n n y y y
- Win98 y n y n n y y y
- WinNT y n y n n y y y
- WinNT CW y n n n n n y y
- FreeBSD y n n n y y y y
- Linux 2.2 y y (1) y n y y y y
- Linux 2.4 y y (1) n n y y y y
-
-
- Platform 1.2 static- Thread- SRB GASS STREAM-
- compatibility exec safe VFD
- Solaris2.6 y x n n n y
- Solaris2.7 y x y n n y
- Solaris2.8 64 y y n n n y
- Solaris2.8 32 y x n n n y
- IRIX6.5 y x y n n y
- IRIX64_6.5 64 y x n n n y
- IRIX64_6.5 32 y x n n n y
- HPUX10.20 y y n n n y
- HPUX11.00 y x n n n y
- HPUX11 SysV y x n n n y
- DECOSF y y n n n y
- T3E y y n n n y
- SV1 y y n n n y
- TFLOPS y y n n n n
- AIX-4.3 SP2 y y (3) n n n y
- AIX-4.3 SP3 y y n n n y
- Win2000 y y n n n n
- Win98 n y n n n n
- WinNT y y n n n n
- WinNT CW n n n n n n
- FreeBSD y y n n n y
- Linux 2.2 y y y n n y
- Linux 2.4 y y y n n y
-
-
- Footnotes: (1) Using mpich.
- (2) Using mpt and mpich.
- (3) When configured with static-exec enabled, tests fail
- in serial mode.
- (4) No HDF4-related tools.
- (5) Shared libraries are provided only for the C library.
-
-
-Known Problems
-==============
-
- * When a dataset with the variable-legth datatype is overwritten,
- the library can develop memory leaks that cause the file to become
- unnecessarily large. This is planned to be fixed in the next release.
-
- * On the SV1, the h5ls test fails due to a difference between the
- SV1 printf precision and the printf precision on other platforms.
-
- * The h5dump tests may fail to match the expected output in some
- platforms (e.g. SP2 parallel, Windows) where the error messages
- directed to "stderr" do not appear in the "right order" with output
- from stdout. This is not an error.
-
- * The --enable-static-exec configure flag fails to compile for HP-UX
- 11.00 platforms.
-
- * The executables are always dynamic on IRIX64 6.5(64 and n32) and
- IRIX 6.5 even if they are configured with --enable-static-exec.
-
- * IRIX 6.5 fails to compile if configured with --enable-static-exec.
-
- * For 24-bit image conversion from H4->H5, the current conversion is
- not consistent with HDF5 image specification.
-
- * In some cases, and SDS with an UNLIMITED dimension that has not
- been written (current size = 0) is not converted correctly.
-
- * After "make install" or "make install-doc" one may need to reload
- the source from the tar file before doing another build.
-
- * The HDF5_MPI_OPT_TYPES optimization code in the parallel HDF5 will cause
- a hang in some cases when chunked storage is used. This is now set to
- be off by default. One may turn it on by setting environment variable
- HDF5_MPI_OPT_TYPES to a non-zero value such as 1.
-
-%%%%1.4.1%%%% Release Information for hdf5-1.4.1 (April/01)
-
-9. Release Information for hdf5-1.4.1 (April/01)
-=====================================================================
-
-
-
- HDF5 Release 1.4.1
-
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.4.0 and
-HDF5-1.4.1, and contains information on the platforms tested and
-known problems in HDF5-1.4.1.
-
-The HDF5 documentation can be found on the NCSA ftp server
-(ftp.ncsa.uiuc.edu) in the directory:
-
- /HDF/HDF5/docs/
-
-For more information look at the HDF5 home page at:
-
- http://hdf.ncsa.uiuc.edu/HDF5/
-
-If you have any questions or comments, please send them to:
-
- hdfhelp@ncsa.uiuc.edu
-
-
-CONTENTS
-
-- New Features
-- Bug Fixes since HDF5-1.4.0
-- Documentation
-- Platforms Tested
-- Supported Configuration Features
-- Known Problems
-
-
-New Features
-============
-
- * XML output option for h5dump utility.
-
- A new option --xml to output data in XML format has been added. The
- XML output contains a complete description of the file, marked up in
- XML.
-
- The XML conforms to the HDF5 Document Type Definition (DTD), which
- is available at:
-
- http://hdf.ncsa.uiuc.edu/DTDs/HDF5-File.dtd
-
- The XML output is suitable for use with other tools, including the
- Java Tools:
-
- http://hdf.ncsa.uiuc.edu/java-hdf5-html
-
-
-Bug Fixes since HDF5-1.4.0 Release
-==================================
-
- * h4toh5 utility: conversion of images is fixed
-
- Earlier releases of the h4toh5 utility produced images that did not
- correctly conform to the HDF5 Image and Palette Specification.
-
- http://hdf.ncsa.uiuc.edu/HDF5/doc/ImageSpec.html
-
- Several required HDF5 attributes are omitted, and the dataspace
- is reversed (i.e., the ht. and width of the image dataset is
- incorrectly described.) For more information, please see:
-
- http://hdf.ncsa.uiuc.edu/HDF5/H5Image/ImageDetails.htm
-
- * Fixed bug with contiguous hyperslabs not being detected, causing
- slower I/O than necessary.
- * Fixed bug where non-aligned hyperslab I/O on chunked datasets was
- causing errors during I/O
- * The RCSID string in H5public.h was causing the C++ compiling problem
- because when it was included multiple times, C++ did not like
- multiple definitions of the same static variable. All occurrence of
- RCSID definition are removed since we have not used it consistently
- before.
-
-
-Documentation
-=============
-
- PDF and Postscript versions of the following documents are available
- for this release:
- Document Filename
- -------- --------
- Introduction to HDF5 H5-R141-Introduction.pdf
- HDF5 Reference Manual H5-R141-RefManual.pdf
- C++ APIs to HDF5 documents H5-R141-Cplusplus.pdf
- Fortran90 APIs to HDF5 documents H5-R141-Fortran90.pdf
-
- PDF and Postscript files containing H5-R141-DocSet.pdf
- all of the above H5-R141-DocSet.ps
-
- These files are not included in this distribution, but are available
- via the Web or FTP at the following locations:
- http://hdf.ncsa.uiuc.edu/HDF5/doc/PSandPDF/
- ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/docs/
-
- While these documents are labeled Release 1.4.1, they describe
- Release 1.4.0 as well.
-
-
-Platforms Tested
-================
-
-Due to the nature of this release only C, C++ libraries and tools were tested.
-
- AIX 4.3.3.0 (IBM SP powerpc) xlc 3.6.6
- mpcc_r 3.6.6
- Cray T3E sn6711 2.0.5.47 Cray Standard C Version 6.5.0.0
- Cray SV1 10.0.0.8 Cray Standard C Version 6.5.0.0
- FreeBSD 4.3 gcc 2.95.2
- HP-UX B.10.20 HP C HP92453-01 A.10.32.30
- HP-UX B.11.00 HP C HP92453-01 A.11.01.20
- IRIX 6.5 MIPSpro cc 7.30
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m
- Linux 2.2.18smp gcc-2.95.2
- g++ 2.95.2
- OSF1 V4.0 DEC-V5.2-040
- Digital Fortran 90 V4.1-270
- SunOS 5.6 WorkShop Compilers 5.0 98/12/15 C 5.0
- (Solaris 2.6)
-
- SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
- (Solaris 2.7) Workshop Compilers 5.0 98/12/15 C++ 5.0
- TFLOPS r1.0.4 v4.0 mpich-1.2.1 with local changes
- Windows NT4.0, 2000 (NT5.0) MSVC++ 6.0
- Windows 98 MSVC++ 6.0
-
-
-Supported Configuration Features Summary
-========================================
-
- * See "Supported Configuration Features Summary" section for the HDF5
- 1.4.0 release in the HISTORY.txt file.
-
-Known Problems
-==============
-
- * The h5dump tests may fail to match the expected output in some
- platforms (e.g. SP2 parallel, Windows) where the error messages
- directed to "stderr" do not appear in the "right order" with output
- from stdout. This is not an error.
-
- * The --enable-static-exec configure flag fails to compile for HP-UX
- 11.00 platforms.
-
- * The executable are always dynamic on IRIX64 6.5(64 and n32) and
- IRIX 6.5 even if they are configured with --enable-static-exec.
-
- * The shared library failed compilation on IRIX 6.5.
-
- * After "make install" or "make install-doc" one may need to reload the source
- from the tar file before doing another build.
-
- * See "Known problems" section for the HDF5 1.4.0 release in the
- HISTORY.txt file.
-
-%%%%1.4.0%%%% Release Information for hdf5-1.4.0 (2/22/01)
-
-8. Release Information for hdf5-1.4.0
-===================================================================
-
- HDF5 Release 1.4.0
-
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.2.0 and
-HDF5-1.4.0, and contains information on the platforms tested and
-known problems in HDF5-1.4.0. For more details check the HISTORY.txt
-file in the HDF5 source.
-
-The HDF5 documentation can be found on the NCSA ftp server
-(ftp.ncsa.uiuc.edu) in the directory:
-
- /HDF/HDF5/docs/
-
-For more information look at the HDF5 home page at:
-
- http://hdf.ncsa.uiuc.edu/HDF5/
-
-If you have any questions or comments, please send them to:
-
- hdfhelp@ncsa.uiuc.edu
-
-
-CONTENTS
-
-- New Features
-- h4toh5 Utility
-- F90 Support
-- C++ Support
-- Pablo Support
-- Bug Fixes since HDF5-1.2.0
-- Bug Fixes since HDF5-1.4.0-beta2
-- Bug Fixes since HDF5-1.4.0
-- Documentation
-- Platforms Tested
-- Supported Configuration Features
-- Known Problems
-
-
-New Features
-============
- * The Virtual File Layer, VFL, was added to replace the old file
- drivers. It also provides an API for user defined file drivers.
- * New features added to snapshots. Use 'snapshot help' to see a
- complete list of features.
- * Improved configure to detect if MPIO routines are available when
- parallel mode is requested.
- * Added Thread-Safe support. Phase I implemented. See:
-
- http://hdf.ncsa.uiuc.edu/HDF5/papers/mthdf/MTHDFpaper.htm
-
- for more details.
- * Added data sieve buffering to raw data I/O path. This is enabled
- for all VFL drivers except the mpio & core drivers. Setting the
- sieve buffer size is controlled with the new API function,
- H5Pset_sieve_buf_size(), and retrieved with H5Pget_sieve_buf_size().
- * Added new Virtual File Driver, Stream VFD, to send/receive entire
- HDF5 files via socket connections.
- * As parts of VFL, HDF-GASS and HDF-SRB are also added to this
- release. To find out details, please read INSTALL_VFL file.
- * Increased maximum number of dimensions for a dataset (H5S_MAX_RANK)
- from 31 to 32 to align with HDF4 & netCDF.
- * Added 'query' function to VFL drivers. Also added 'type' parameter to
- VFL 'read' & 'write' calls, so they are aware of the type of data
- being accessed in the file. Updated the VFL document also.
- * A new h4toh5 utility, to convert HDF4 files to analogous HDF5 files.
- * Added a new array datatype to the datatypes which can be created.
- Removed "array fields" from compound datatypes (use an array datatype
- instead).
- * Parallel HDF5 works correctly with mpich-1.2.1 on Solaris, SGI, Linux.
- * You can now install the HDF5 documentation using the
- ``make install-doc'' command. The documentation is installed in the
- $(prefix)/doc directory where $(prefix) is the prefix specified by
- the (optional) ``--prefix'' flag during configuration.
- * HDF5 can operate correctly in the OpenMP environment in a limited way.
- Check doc/html/TechNotes/openmp-hdf5.html for details.
-
-
-h4toh5 Utility
-==============
- The h4toh5 utility is a new utility that converts an HDF4 file to an
- HDF5 file. For details, see the document, "Mapping HDF4 Objects to
- HDF5 Objects":
- http://hdf.ncsa.uiuc.edu/HDF5/papers/H4-H5MappingGuidelines.pdf
-
- Known Bugs:
-
- The h4toh5 utility produces images that do not correctly conform
- to the HDF5 Image and Palette Specification.
-
- http://hdf.ncsa.uiuc.edu/HDF5/doc/ImageSpec.html
-
- Several required HDF5 attributes are omitted, and the dataspace
- is reversed (i.e., the ht. and width of the image dataset is
- incorrectly described.) For more information, please see:
-
- http://hdf.ncsa.uiuc.edu/HDF5/H5Image/ImageDetails.html
-
- This bug has been fixed for the snapshot of hdf5 1.4 release. March 12th,2001
-
- Known Limitations of the h4toh5 release
- ---------------------------------------------
-
- 1. Error handlings
-
- h4toh5 utility will print out an error message when an error occurs.
-
- 2. String Datatype
-
- HDF4 has no 'string' type. String valued data are usually defined as
- an array of 'char' in HDF4. The h4toh5 utility will generally map
- these to HDF5 'String' types rather than array of char, with the
- following additional rules:
-
- * For the data of an HDF4 SDS, image, and palette, if the data is
- declared 'DFNT_CHAR8' it will be assumed to be integer and will
- be an H5T_INTEGER type.
- * For attributes of any HDF4 object, data of type 'DFNT_CHAR8'
- will be converted to an HDF5 'H5T_STRING' type.
- * For an HDF4 Vdata, it is difficult to determine whether data
- of type 'DFNT_CHAR8' is intended to be bytes or characters. The
- h4toh5 utility will consider them to be C characters, and will
- convert them to an HDF5 'H5T_STRING' type.
-
-
- 3. Compression, Chunking and External Storage
-
- Chunking is supported, but compression and external storage is not.
-
- An HDF4 object that uses chunking will be converted to an HDF5 file
- with analogous chunked storage.
-
- An HDF4 object that uses compression will be converted to an
- uncompressed HDF5 object.
-
- An HDF4 object that uses external storage will be converted to an
- HDF5 object without external storage.
-
- 4. Memory Use
-
- This version of the h4toh5 utility copies data from HDF4 objects
- in a single read followed by a single write to the HDF5 object. For
- large objects, this requires a very large amount of memory, which may
- be extremely slow or fail on some platforms.
-
- Note that a dataset that has only been partly written will
- be read completely, including uninitialized data, and all the
- data will be written to the HDF5 object.
-
- 5. Platforms
-
- The h4toh5 utility requires HDF5-1.4.0 and HDF4r1.4
-
- h4toh5 utility has been tested on all platforms listed below (see
- section "Platforms Tested") except TFLOPS.
-
-
-F90 Support
-===========
- This is the first release of the HDF5 Library with fully integrated
- F90 API support. The Fortran Library is created when the
- --enable-fortran flag is specified during configuration.
-
- Not all F90 subroutines are implemented. Please refer to the HDF5
- Reference Manual for more details.
-
- F90 APIs are available for the Solaris 2.6 and 2.7, Linux, DEC UNIX,
- T3E, SV1 and O2K (64 bit option only) platforms. The Parallel version of
- the HDF5 F90 Library is supported on the O2K and T3E platforms.
-
- Changes since the last prototype release (July 2000)
- ----------------------------------------------------
- * h5open_f and h5close_f must be called instead of h5init_types and
- h5close_types.
-
- * The following subroutines are no longer available:
-
- h5pset_xfer_f
- h5pget_xfer_f
- h5pset_mpi_f
- h5pget_mpi_f
- h5pset_stdio_f
- h5pget_stdio_f
- h5pset_sec2_f
- h5pget_sec2_f
- h5pset_core_f
- h5pget_core_f
- h5pset_family_f
- h5pget_family_f
-
- * The following functions have been added:
-
- h5pset_fapl_mpio_f
- h5pget_fapl_mpio_f
- h5pset_dxpl_mpio_f
- h5pget_dxpl_mpio_f
-
- * In the previous HDF5 F90 releases, the implementation of object
- references and dataset region references was not portable. This
- release introduces a portable implementation, but it also introduces
- changes to the read/write APIs that handle references. If object or
- dataset region references are written or read to/from an HDF5 file,
- h5dwrite_f and h5dread_f must use the extra parameter, n, for the
- buffer size:
-
- h5dwrite(read)_f(dset_id, mem_type_id, buf, n, hdferr, &
- ^^^
- mem_space_id, file_space_id, xfer_prp)
-
- For other datatypes the APIs were not changed.
-
-
-C++ Support
-===========
- This is the first release of the HDF5 Library with fully integrated
- C++ API support. The HDF5 C++ library is built when the --enable-cxx
- flag is specified during configuration.
-
- Check the HDF5 Reference Manual for available C++ documentation.
-
- C++ APIs are available for Solaris 2.6 and 2.7, Linux, and FreeBSD.
-
-
-Pablo Support
-=============
- This version does not allow proper building of the Pablo-instrumented
- version of the library. A version supporting the pablo build is
- available on the Pablo Website at
- www-pablo.cs.uiuc.edu/pub/Pablo.Release.5/HDFLibrary/hdf5_v1.4.tar.gz
-
-
-Bug Fixes since HDF5-1.2.0
-==========================
-
-Library
--------
- * The function H5Pset_mpi is renamed as H5Pset_fapl_mpio.
- * Corrected a floating point number conversion error for the Cray J90
- platform. The error did not convert the value 0.0 correctly.
- * Error was fixed which was not allowing dataset region references to
- have their regions retrieved correctly.
- * Corrected a bug that caused non-parallel file drivers to fail in
- the parallel version.
- * Added internal free-lists to reduce memory required by the library
- and H5garbage_collect API function
- * Fixed error in H5Giterate which was not updating the "index"
- parameter correctly.
- * Fixed error in hyperslab iteration which was not walking through the
- correct sequence of array elements if hyperslabs were staggered in a
- certain pattern
- * Fixed several other problems in hyperslab iteration code.
- * Fixed another H5Giterate bug which was causes groups with large
- numbers of objects in them to misbehave when the callback function
- returned non-zero values.
- * Changed return type of H5Aiterate and H5A_operator_t typedef to be
- herr_t, to align them with the dataset and group iterator functions.
- * Changed H5Screate_simple and H5Sset_extent_simple to not allow
- dimensions of size 0 with out the same dimension being unlimited.
- * QAK - 4/19/00 - Improved metadata hashing & caching algorithms to
- avoid many hash flushes and also remove some redundant I/O when
- moving metadata blocks in the file.
- * The "struct(opt)" type conversion function which gets invoked for
- certain compound datatype conversions was fixed for nested compound
- types. This required a small change in the datatype conversion
- function API.
- * Re-wrote lots of the hyperslab code to speed it up quite a bit.
- * Added bounded garbage collection for the free lists when they run
- out of memory and also added H5set_free_list_limits API call to
- allow users to put an upper limit on the amount of memory used for
- free lists.
- * Checked for non-existent or deleted objects when dereferencing one
- with object or region references and disallow dereference.
- * "Time" datatypes (H5T_UNIX_D*) were not being stored and retrieved
- from object headers correctly, fixed now.
- * Fixed H5Dread or H5Dwrite calls with H5FD_MPIO_COLLECTIVE requests
- that may hang because not all processes are transfer the same amount
- of data. (A.K.A. prematured collective return when zero amount data
- requested.) Collective calls that may cause hanging is done via the
- corresponding MPI-IO independent calls.
- * If configure with --enable-debug=all, couple functions would issue
- warning messages to "stderr" that the operation is expensive time-wise.
- This messed up applications (like testings) that did not expect the
- extra output. It is changed so that the warning will be printed only
- if the corresponding Debug key is set.
-
-Configuration
--------------
- * The hdf5.h include file was fixed to allow the HDF5 Library to be
- compiled with other libraries/applications that use GNU autoconf.
- * Configuration for parallel HDF5 was improved. Configure now attempts
- to link with libmpi.a and/or libmpio.a as the MPI libraries by
- default. It also uses "mpirun" to launch MPI tests by default. It
- tests to link MPIO routines during the configuration stage, rather
- than failing later as before. One can just do "./configure
- --enable-parallel" if the MPI library is in the system library.
- * Added support for pthread library and thread-safe option.
- * The libhdf5.settings file shows the correct machine byte-sex.
- * Added option "--enable-stream-vfd" to configure w/o the Stream VFD.
- For Solaris, added -lsocket to the LIBS list of libraries.
-
-Tools
------
- * h5dump now accepts both short and long command-line parameters:
- -h, --help Print a usage message and exit
- -B, --bootblock Print the content of the boot block
- -H, --header Print the header only; no data is displayed
- -i, --object-ids Print the object ids
- -V, --version Print version number and exit
- -a P, --attribute=P Print the specified attribute
- -d P, --dataset=P Print the specified dataset
- -g P, --group=P Print the specified group and all members
- -l P, --soft-link=P Print the value(s) of the specified soft link
- -o F, --output=F Output raw data into file F
- -t T, --datatype=T Print the specified named data type
- -w #, --width=# Set the number of columns
-
- P - is the full path from the root group to the object.
- T - is the name of the data type.
- F - is a filename.
- # - is an integer greater than 1.
- * A change from the old way command line parameters were interpreted
- is that multiple attributes, datasets, groups, soft-links, and
- object-ids cannot be specified with just one flag but you have to
- use a flag with each object. I.e., instead of doing this:
-
- h5dump -a /attr1 /attr2 foo.h5
-
- do this:
-
- h5dump -a /attr1 -a /attr2 foo.h5
-
- The cases are similar for the other object types.
- * h5dump correctly displays compound datatypes.
- * Corrected an error in h5toh4 which did not convert the 32bits
- int from HDF5 to HDF4 correctly for the T3E platform.
- * h5dump correctly displays the committed copy of predefined types
- correctly.
- * Added an option, -V, to show the version information of h5dump.
- * Fixed a core dumping bug of h5toh4 when executed on platforms like
- TFLOPS.
- * The test script for h5toh4 used to not able to detect the hdp
- dumper command was not valid. It now detects and reports the
- failure of hdp execution.
- * Merged the tools with the 1.2.2 branch. Required adding new
- macros, VERSION12 and VERSION13, used in conditional compilation.
- Updated the Windows project files for the tools.
- * h5dump displays opaque and bitfield data correctly.
- * h5dump and h5ls can browse files created with the Stream VFD
- (eg. "h5ls :").
- * h5dump has a new feature "-o " which outputs the raw data
- of the dataset into ascii text file .
- * h5toh4 used to converts hdf5 strings type to hdf4 DFNT_INT8 type.
- Corrected to produce hdf4 DFNT_CHAR type instead.
- * h5dump and h5ls displays array data correctly.
-
-
-Bug Fixes since HDF5-1.4.0-beta2
-================================
- * Fixed a bug in the conversion from a little endian double to a big
- endian float in some special cases.
- * Corrected configuration error which was not including compression
- support correctly.
- * Cleaned up lots of warnings.
- * Changed a few h5dump command line switches and added long versions of
- the switches.
- * Changed parameters for H5Tconvert, H5Pset_bufer and H5Pget_buffer from
- size_t to hsize_t
- * Fixed fairly obscure bug in hyperslab I/O which could (in rare cases)
- not copy all the data during a transfer.
- * Removed ragged array code from library.
- * F90 library and module files are installed properly now on all supported
- platforms.
-
-
-Bug Fixes since HDF5-1.4.0 Release
-==================================
-
- * Fixed bug with contiguous hyperslabs not being detected, causing
- slower I/O than necessary.
- * Fixed bug where non-aligned hyperslab I/O on chunked datasets was
- causing errors during I/O
- * Implemented XML support in h5dump.
-
-
-Documentation
-=============
- * A new document summarizing the changes in the library leading up to
- the current release has been added:
- HDF5 Software Changes from Release to Release
- This document is in the Application Developer's Guide and is of
- particular interest to developers who must keep an application
- synchronized with the library.
- * The documentation for the Fortran90 and C++ APIs is linked to the
- opening page of the Reference Manual. Fortran90 functions are
- individually referenced from the corresponding C functions through-
- out the Reference Manual.
- * User's Guide and Reference Manual were updated to reflect changed
- function syntax and to fix reported bugs.
- * Functions that are new at this release were added to the Reference
- Manual.
- * Functions that have been removed from the library were removed from
- the User's Guide and the Reference Manual.
- * PostScript and PDF versions of the Release 1.4 document set are
- not available at the time of Release 1.4.0.
-
-
-Platforms Tested
-================
- AIX 4.3.3.0 (IBM SP powerpc) xlc 3.6.6
- mpcc_r 3.6.6
- Cray T3E sn6711 2.0.5.45 Cray Standard C Version 6.4.0.0
- Cray Fortran Version 3.4.0.2
- Cray SV1 sn9605 10.0.0.7 Cray Standard C Version 6.4.0.0
- Cray Fortran Version 3.4.0.2
- FreeBSD 4.2 gcc 2.95.2
- g++ 2.95.2
- HP-UX B.10.20 HP C HP92453-01 A.10.32.30
- HP-UX B.11.00 HP C HP92453-01 A.11.00.13
- IRIX 6.5 MIPSpro cc 7.30
- mpich-1.2.1
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m
- mpt.1.4.0.2
- mpich-1.2.1
- Linux 2.2.16-3smp gcc-2.95.2
- g++ 2.95.2
- pgf90 3.1-3
- mpich-1.2.1
- OSF1 V4.0 DEC-V5.2-040
- Digital Fortran 90 V4.1-270
- SunOS 5.6 WorkShop Compilers 5.0 98/12/15 C 5.0
- (Solaris 2.6) WorkShop Compilers 5.0 99/10/25 Fortran 90
- 2.0 Patch 107356-04
- Workshop Compilers 5.0 98/12/15 C++ 5.0
- SunOS 5.7 WorkShop Compilers 5.0 98/12/15 C 5.0
- (Solaris 2.7) WorkShop Compilers 5.0 99/10/25 Fortran 90
- 2.0 Patch 107356-04
- Workshop Compilers 5.0 98/12/15 C++ 5.0
- mpich-1.2.1
- SunOS 5.5.1 gcc-2.7.2
- (Solaris 2.5.1 (x86))
- TFLOPS r1.0.4 v4.0 mpich-1.2.1 with local changes
- Windows NT4.0, 2000 (NT5.0) MSVC++ 6.0
- Windows 98 MSVC++ 6.0
-
-
-Supported Configuration Features Summary
-========================================
- In the tables below
- y = tested and supported
- n = not supported or not working in this release
- ( ) = footnote appears below table
-
- Platform C C F90 F90 C++ Shared zlib Tools
- parallel parallel libraries
- Solaris2.6 y n y n y y y y
- Solaris2.7 y y (1) y n y y y y
- Solarisx86 y n n n n y y y
- IRIX6.5 y y (1) n n n n y y
- IRIX64_6.5 64 y y (2) y y n y y y
- IRIX64_6.5 32 y y (2) n n n y y y
- HPUX10.20 y n n n n y y y
- DECOSF y n y n n y y y
- T3E y y y y n n y y
- SV1 y n y n n n y y
- TFLOPS y y (1) n n n n y y (4)
- AIX-4.3 y y n n n n y n
- Win2000 y n n n n y y y
- Win98 y n n n n y y y
- WinNT y n n n n y y y
- FreeBSD y n n n y y y y
- Linux y y (1) y n y y y y
-
-
- Platform 1.2 static- Thread- SRB GASS STREAM-
- compatibility exec safe VFD
- Solaris2.6 y n n n n y
- Solaris2.7 y n y n n y
- Solarisx86 y n n n n y
- IRIX6.5 y n y n n y
- IRIX64_6.5 64 y n n n n y
- IRIX64_6.5 32 y n n n n y
- HPUX10.20 y y n n n y
- DECOSF y y n n n y
- T3E y y n n n y
- SV1 y y n n n y
- TFLOPS y y n n n n
- AIX-4.3 y y (3) n n n y
- Win2000 y y n n n n
- Win98 y y n n n n
- WinNT y y n n n n
- FreeBSD y y n n n y
- Linux y n y n n y
-
- Footnotes: (1) Using mpich.
- (2) Using mpt and mpich.
- (3) When configured with static-exec enabled, tests fail
- in serial mode.
- (4) No HDF4-related tools.
-
-
-Known Problems
-==============
- * The stream-vfd test uses ip port 10007 for testing. If another
- application is already using that port address, the test will hang
- indefinitely and has to be terminated by the kill command. To try the
- test again, change the port address in test/stream_test.c to one not
- being used in the host.
-
- * The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system
- libraries on Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on Linux platforms using the gcc-2.95.2 compiler.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on IBM SP2 platform for the serial mode. The parallel mode works fine
- with this option.
-
- The compilation fails if configured with --enable-static-exec on IRIX 6.5.
-
- The executable files in hdf5/bin are dynamic-linked for IRIX64 6.5(64 and
- n32 modes) and IRIX 6.5, even though they are compiled with static library.
-
- It is suggested that you don't use this option on these platforms
- during configuration.
-
- * testhdf5 got bus error with configuration options --prefix and --with-hdf4
- on IRIX 6.5.
-
- * With the gcc 2.95.2 compiler, HDF 5 uses the `-ansi' flag during
- compilation. The ANSI version of the compiler complains about not being
- able to handle the `long long' datatype with the warning:
-
- warning: ANSI C does not support `long long'
-
- This warning is innocuous and can be safely ignored.
-
- * SunOS 5.6 with C WorkShop Compilers 4.2: Hyperslab selections will
- fail if library is compiled using optimization of any level.
-
- * When building hdf5 tools and applications on windows platform, a linking
- warning: defaultlib "LIBC" conflicts with use of other libs will appear
- on debug version when running VC++6.0. This warning doesn't affect building
- and testing hdf5 applications. We will continue investigating this.
-
- * h5toh4 converter fails two cases(tstr.h5 and tmany.h5) for release dll
- version on windows 2000 and NT. The reason is possibly due to Windows NT
- DLL convention on freeing memory. It seems that memory cannot be freed
- across library or DLL. It is still under investigation.
-
- * HDF-GASS testings and testhdf5 in the test directory will get bus error if
- the configured with --with-gass.
-
- * HDF-SRB testing got segmentation error on Solaris 2.7.
-
- * The Stream VFD was not tested yet under Windows.
- It is not supported in the TFLOPS machine.
-
- * Shared library option is broken for IBM SP and some Origin 2000 platforms.
- One needs to run ./configure with '--disable-shared --enable-static'.
-
- * The ./dsets tests failed in the TFLOPS machine if the test program,
- dsets.c, is compiled with the -O option. The hdf5 library still works
- correctly with the -O option. The test program works fine if it is
- compiled with -O1 or -O0. Only -O (same as -O2) causes the test
- program to fail.
-
- * Certain platforms give false negatives when testing h5ls:
- - Solaris x86 2.5.1, Cray T3E and Cray J90 give errors during testing
- when displaying object references in certain files. These are benign
- differences due to the difference in sizes of the objects created on
- those platforms. h5ls appears to be dumping object references
- correctly.
- - Cray J90 give errors during testing when displaying
- some floating-point values. These are benign differences due to the
- different precision in the values displayed and h5ls appears to be
- dumping floating-point numbers correctly.
-
- * Before building HDF5 F90 Library from source on Crays (T3E and SV1)
- replace H5Aff.f90, H5Dff.f90 and H5Pff.f90 files in the fortran/src
- subdirectory in the top level directory with the Cray-specific files from
- the ftp://ftp.ncsa.uiuc.edu/HDF/HDF5/hdf5-1.4.0/src/crayf90/ directory.
-
- * The h4toh5 utility produces images that do not correctly conform
- to the HDF5 Image and Palette Specification.
-
- http://hdf.ncsa.uiuc.edu/HDF5/doc/ImageSpec.html
-
- Several required HDF5 attributes are omitted, and the dataspace
- is reversed (i.e., the ht. and width of the image dataset is
- incorrectly described.) For more information, please see:
-
- http://hdf.ncsa.uiuc.edu/HDF5/H5Image/ImageDetails.htm
-
-%%%%1.2.2%%%% Release Information for hdf5-1.2.2 (6/23/00)
-
-7. Release Information for hdf5-1.2.2
-=================================================================
-INTRODUCTION
-
-This document describes the differences between HDF5-1.2.1 and
-HDF5-1.2.2, and contains information on the platforms where HDF5-1.2.2
-was tested and known problems in HDF5-1.2.2.
-
-The HDF5 documentation can be found on the NCSA ftp server
-(ftp.ncsa.uiuc.edu) in the directory:
-
- /HDF/HDF5/docs/
-
-For more information look at the HDF5 home page at:
-
- http://hdf.ncsa.uiuc.edu/HDF5/
-
-If you have any questions or comments, please send them to:
-
- hdfhelp@ncsa.uiuc.edu
-
-
-CONTENTS
-
-- Features Added since HDF5-1.2.1
-- Bug Fixes since HDF5-1.2.1
-- Known Problems
-- Platforms Tested
-
-
-Features Added since HDF5-1.2.1
-===============================
- * Added internal free-lists to reduce memory required by the library and
- H5garbage_collect API function.
- * h5dump displays opaque and bitfield types.
- * New features added to snapshots. Use 'snapshot help' to see a
- complete list of features.
- * Improved configure to detect if MPIO routines are available when
- parallel mode is requested.
-
-Bug Fixes since HDF5-1.2.1
-==========================
- * h5dump correctly displays compound datatypes, including simple and
- nested compound types.
- * h5dump correctly displays the committed copy of predefined types.
- * Corrected an error in h5toh4 which did not convert the 32-bit
- int from HDF5 to HDF4 correctly for the T3E platform.
- * Corrected a floating point number conversion error for the
- Cray J90 platform. The error did not convert the value 0.0
- correctly.
- * Fixed error in H5Giterate which was not updating the "index" parameter
- correctly.
- * Fixed error in hyperslab iteration which was not walking through the
- correct sequence of array elements if hyperslabs were staggered in a
- certain pattern.
- * Fixed several other problems in hyperslab iteration code.
- * Fixed another H5Giterate bug which caused groups with large numbers
- of objects in them to misbehave when the callback function returned
- non-zero values.
- * Changed return type of H5Aiterate and H5A_operator_t typedef to be
- herr_t, to align them with the dataset and group iterator functions.
- * Changed H5Screate_simple and H5Sset_extent_simple to not allow dimensions
- of size 0 without the same dimension being unlimited.
- * Improved metadata hashing & caching algorithms to avoid
- many hash flushes and also removed some redundant I/O when moving metadata
- blocks in the file.
- * The libhdf5.settings file shows the correct machine byte-sex.
- * The "struct(opt)" type conversion function which gets invoked for
- certain compound datatype conversions was fixed for nested compound
- types. This required a small change in the datatype conversion
- function API.
-
-Known Problems
-==============
-
-o SunOS 5.6 with C WorkShop Compilers 4.2: hyperslab selections will
- fail if library is compiled using optimization of any level.
-o TFLOPS: dsets test fails if compiled with optimization turned on.
-o J90: tools fail to display data for the datasets with a compound datatype.
-
-Platforms Tested
-================
-
- AIX 4.3.3 (IBM SP) 3.6.6 | binaries
- mpicc using mpich 1.1.2 | are not
- mpicc_r using IBM MPI-IO prototype | available
- AIX 4.3.2.0 (IBM SP) xlc 5.0.1.0
- Cray J90 10.0.0.7 cc 6.3.0.2
- Cray T3E 2.0.5.29 cc 6.3.0.2
- mpt.1.3
- FreeBSD 4.0 gcc 2.95.2
- HP-UX B.10.20 HP C HP92453-01 A.10.32
- HP-UX B.11.00 HP92453-01 A.11.00.13 HP C Compiler
- (static library only, h5toh4 tool is not available)
- IRIX 6.5 MIPSpro cc 7.30
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m
- mpt.1.4
-
- Linux 2.2.10 SMP gcc 2.95.1
- mpicc(gcc-2.95.1)
- gcc (egcs-2.91.66)
- mpicc (egcs-2.91.66)
- Linux 2.2.16 (RedHat 6.2) gcc 2.95.2
-
- OSF1 V4.0 DEC-V5.2-040
- SunOS 5.6 cc WorkShop Compilers 5.0 no optimization
- SunOS 5.7 cc WorkShop Compilers 5.0
- SolarisX86 SunOS 5.5.1 gcc version 2.7.2 with --disable-hsizet
- TFLOPS 3.2.1 pgcc Rel 3.1-3i
- mpich-1.1.2 with local changes
- Windows NT4.0 sp5 MSVC++ 6.0
- Windows 98 MSVC++ 6.0
- Windows 2000 MSVC++ 6.0
-
-
-
-%%%%1.2.1%%%% Release Information for hdf5-1.2.1
-
-6. Release Information for hdf5-1.2.1
-================================================================
-
-
-Bug fixes since HDF5-1.2.0
-==========================
-
-Configuration
--------------
-
- * The hdf5.h include file was fixed to allow the HDF5 Library to be compiled
- with other libraries/applications that use GNU autoconf.
- * Configuration for parallel HDF5 was improved. Configure now attempts to
- link with libmpi.a and/or libmpio.a as the MPI libraries by default.
- It also uses "mpirun" to launch MPI tests by default. It tests to
- link MPIO routines during the configuration stage, rather than failing
- later as before. One can just do "./configure --enable-parallel"
- if the MPI library is in the system library.
-
-Library
--------
-
- * Error was fixed which was not allowing dataset region references to have
- their regions retrieved correctly.
- * Added internal free-lists to reduce memory required by the library and
- H5garbage_collect API function
- * Fixed error in H5Giterate which was not updating the "index" parameter
- correctly.
- * Fixed error in hyperslab iteration which was not walking through the
- correct sequence of array elements if hyperslabs were staggered in a
- certain pattern
- * Fixed several other problems in hyperslab iteration code.
-
-Tests
-------
-
- * Added additional tests for group and attribute iteration.
- * Added additional test for staggered hyperslab iteration.
- * Added additional test for random 5-D hyperslab selection.
-
-Tools
-------
-
- * Added an option, -V, to show the version information of h5dump.
- * Fixed a core dumping bug of h5toh4 when executed on platforms like
- TFLOPS.
- * The test script for h5toh4 used to not able to detect the hdp
- dumper command was not valid. It now detects and reports the
- failure of hdp execution.
-
-Documentation
--------------
-
- * User's Guide and Reference Manual were updated.
- See doc/html/PSandPDF/index.html for more details.
-
-
-Platforms Tested:
-================
-Note: Due to the nature of bug fixes, only static versions of the library and tools were tested.
-
-
- AIX 4.3.2 (IBM SP) 3.6.6
- Cray T3E 2.0.4.81 cc 6.3.0.1
- mpt.1.3
- FreeBSD 3.3-STABLE gcc 2.95.2
- HP-UX B.10.20 HP C HP92453-01 A.10.32
- IRIX 6.5 MIPSpro cc 7.30
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m
- mpt.1.3 (SGI MPI 3.2.0.0)
-
- Linux 2.2.10 SuSE egcs-2.91.66 configured with
- (i686-pc-linux-gnu) --disable-hsizet
- mpich-1.2.0 egcs-2.91.66 19990314/Linux
-
- OSF1 V4.0 DEC-V5.2-040
- SunOS 5.6 cc WorkShop Compilers 4.2 no optimization
- SunOS 5.7 cc WorkShop Compilers 5.0
- TFLOPS 2.8 cicc (pgcc Rel 3.0-5i)
- mpich-1.1.2 with local changes
- Windows NT4.0 sp5 MSVC++ 6.0
-
-Known Problems:
-==============
-
-o SunOS 5.6 with C WorkShop Compilers 4.2: Hyperslab selections will
- fail if library is compiled using optimization of any level.
-
-
-
-%%%%1.2.0%%%% Release Information for hdf5-1.2.0
-
-5. Release Information for hdf5-1.2.0
-===================================================================
-
-A. Platforms Supported
- -------------------
-
-Operating systems listed below with compiler information and MPI library, if
-applicable, are systems that HDF5 1.2.0 was tested on.
-
- Compiler & libraries
- Platform Information Comment
- -------- ---------- --------
-
- AIX 4.3.2 (IBM SP) 3.6.6
-
- Cray J90 10.0.0.6 cc 6.3.0.0
-
- Cray T3E 2.0.4.61 cc 6.2.1.0
- mpt.1.3
-
- FreeBSD 3.2 gcc 2.95.1
-
- HP-UX B.10.20 HP C HP92453-01 A.10.32
- gcc 2.8.1
-
- IRIX 6.5 MIPSpro cc 7.30
-
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.3.1m
- mpt.1.3 (SGI MPI 3.2.0.0)
-
- Linux 2.2.10 egcs-2.91.66 configured with
- --disable-hsizet
- lbraries: glibc2
-
- OSF1 V4.0 DEC-V5.2-040
-
- SunOS 5.6 cc WorkShop Compilers 4.2
- no optimization
- gcc 2.8.1
-
- SunOS 5.7 cc WorkShop Compilers 5.0
- gcc 2.8.1
-
- TFLOPS 2.7.1 cicc (pgcc Rel 3.0-4i)
- mpich-1.1.2 with local changes
-
- Windows NT4.0 intel MSVC++ 5.0 and 6.0
-
- Windows NT alpha 4.0 MSVC++ 5.0
-
- Windows 98 MSVC++ 5.0
-
-
-B. Known Problems
- --------------
-
-* NT alpha 4.0
- Dumper utiliy h5dump fails if linked with DLL.
-
-* SunOS 5.6 with C WorkShop Compilers 4.2
- Hyperslab selections will fail if library is compiled using optimization
- of any level.
-
-
-C. Changes Since Version 1.0.1
- ---------------------------
-
-1. Documentation
- -------------
-
-* More examples
-
-* Updated user guide, reference manual, and format specification.
-
-* Self-contained documentation for installations isolated from the
- Internet.
-
-* HDF5 Tutorial was added to the documentation
-
-2. Configuration
- -------------
-
-* Better detection and support for MPI-IO.
-
-* Recognition of compilers with known code generation problems.
-
-* Support for various compilers on a single architecture (e.g., the
- native compiler and the GNU compilers).
-
-* Ability to build from read-only media and with different compilers
- and/or options concurrently.
-
-* Added a libhdf5.settings file which summarizes the configuration
- information and is installed along with the library.
-
-* Builds a shared library on most systems that support it.
-
-* Support for Cray T3E, J90 and Windows/NT.
-
-3. Debugging
- ---------
-
-* Improved control and redirection of debugging and tracing messages.
-
-4. Datatypes
- ---------
-
-* Optimizations to compound datatype conversions and I/O operations.
-
-* Added nearly 100 optimized conversion functions for native datatypes
- including support for non-aligned data.
-
-* Added support for bitfield, opaque, and enumeration types.
-
-* Added distinctions between signed and unsigned char types to the
- list of predefined native hdf5 datatypes.
-
-* Added HDF5 type definitions for C9x types like int32_t.
-
-* Application-defined type conversion functions can handle non-packed
- data.
-
-* Changed the H5Tunregister() function to use wildcards when matching
- conversion functions. H5Tregister_hard() and H5Tregister_soft()
- were combined into H5Tregister().
-
-* Support for variable-length datatypes (arrays of varying length per
- dataset element). Variable length strings currently supported only
- as variable length arrays of 1-byte integers.
-
-5. Dataspaces
- ----------
-
-* New query functions for selections.
-
-* I/O operations bypass the stripmining loop and go directly to
- storage for certain contiguous selections in the absence of type
- conversions. In other cases the stripmining buffers are used more
- effectively.
-
-* Reduced the number of I/O requests under certain circumstances,
- improving performance on systems with high I/O latency.
-
-6. Persistent Pointers
- -------------------
-
-* Object (serial and parallel) and dataset region (serial only)
- references are implemented.
-
-7. Parallel Support
- ----------------
-
-* Improved parallel I/O performance.
-
-* Supported new platforms: Cray T3E, Linux, DEC Cluster.
-
-* Use vendor supported version of MPIO on SGI O2K and Cray platforms.
-
-* Improved the algorithm that translates an HDF5 hyperslab selection
- into an MPI type for better collective I/O performance.
-
-8. New API functions
- -----------------
-
- a. Property List Interface:
- ------------------------
-
- H5Pset_xfer - set data transfer properties
- H5Pset_preserve - set dataset transfer property list status
- H5Pget_preserve - get dataset transfer property list status
- H5Pset_hyper_cache - indicates whether to cache hyperslab blocks during I/O
- H5Pget_hyper_cache - returns information regarding the caching of
- hyperslab blocks during I/O
- H5Pget_btree_ratios - sets B-tree split ratios for a dataset
- transfer property list
- H5Pset_btree_ratios - gets B-tree split ratios for a dataset
- transfer property list
- H5Pset_vlen_mem_manager - sets the memory manager for variable-length
- datatype allocation
- H5Pget_vlen_mem_manager - sets the memory manager for variable-length
- datatype allocation
-
- b. Dataset Interface:
- ------------------
-
- H5Diterate - iterate over all selected elements in a dataspace
- H5Dget_storage_size - return the amount of storage required for a dataset
- H5Dvlen_reclaim - reclaim VL datatype memory buffers
-
- c. Dataspace Interface:
- --------------------
- H5Sget_select_hyper_nblocks - get number of hyperslab blocks
- H5Sget_select_hyper_blocklist - get the list of hyperslab blocks
- currently selected
- H5Sget_select_elem_npoints - get the number of element points
- in the current selection
- H5Sget_select_elem_pointlist - get the list of element points
- currently selected
- H5Sget_select_bounds - gets the bounding box containing
- the current selection
-
- d. Datatype Interface:
- -------------------
- H5Tget_super - return the base datatype from which a
- datatype is derived
- H5Tvlen_create - creates a new variable-length dataype
- H5Tenum_create - creates a new enumeration datatype
- H5Tenum_insert - inserts a new enumeration datatype member
- H5Tenum_nameof - returns the symbol name corresponding to a
- specified member of an enumeration datatype
- H5Tvalueof - return the value corresponding to a
- specified member of an enumeration datatype
- H5Tget_member_value - return the value of an enumeration datatype member
- H5Tset_tag - tags an opaque datatype
- H5Tget_tag - gets the tag associated with an opaque datatype
-
- e. Identifier Interface:
- ---------------------
- H5Iget_type - retrieve the type of an object
-
- f. Reference Interface:
- --------------------
- H5Rcreate - creates a reference
- H5Rdereference - open the HDF5 object referenced
- H5Rget_region - retrieve a dataspace with the specified region selected
- H5Rget_object_type - retrieve the type of object that an
- object reference points to
-
- g. Ragged Arrays (alpha) (names of those API functions were changed):
- ------------------------------------------------------------------
- H5RAcreate - create a new ragged array (old name was H5Rcreate)
- H5RAopen - open an existing array (old name was H5Ropen)
- H5RAclose - close a ragged array (old name was H5Rclose)
- H5RAwrite - write to an array (old name was H5Rwrite)
- H5RAread - read from an array (old name was H5Rread)
-
-
-9. Tools
- -----
-
-* Enhancements to the h5ls tool including the ability to list objects
- from more than one file, to display raw hexadecimal data, to
- show file addresses for raw data, to format output more reasonably,
- to show object attributes, and to perform a recursive listing,
-
-* Enhancements to h5dump: support new data types added since previous
- versions.
-
-* h5toh4: An hdf5 to hdf4 converter.
-
-
-
-%%%%1.0.1%%%% Release Information for hdf5-1.0.1
-
-4. Changes from Release 1.0.0 to Release 1.0.1
-=====================================================================
-
-* [Improvement]: configure sets up the Makefile in the parallel tests
- suit (testpar/) correctly.
-
-* [Bug-Fix]: Configure failed for all IRIX versions other than 6.3.
- It now configures correctly for all IRIX 6.x version.
-
-* Released Parallel HDF5
-
- Supported Features:
- ------------------
-
- HDF5 files are accessed according to the communicator and INFO
- object defined in the property list set by H5Pset_mpi.
-
- Independent read and write accesses to fixed and extendable dimension
- datasets.
-
- Collective read and write accesses to fixed dimension datasets.
-
- Supported Platforms:
- -------------------
-
- Intel Red
- IBM SP2
- SGI Origin 2000
-
- Changes In This Release:
- -----------------------
-
- o Support of Access to Extendable Dimension Datasets.
- Extendable dimension datasets must use chunked storage methods.
- A new function, H5Dextend, is created to extend the current
- dimensions of a dataset. The current release requires the
- MPI application must make a collective call to extend the
- dimensions of an extendable dataset before writing to the
- newly extended area. (The serial does not require the
- call of H5Dextend. The dimensions of an extendable
- dataset is increased when data is written to beyond the
- current dimensions but within the maximum dimensions.)
- The required collective call of H5Dextend may be relaxed
- in future release.
-
- This release only support independent read and write accesses
- to extendable datasets. Collective accesses to extendable
- datasets will be implemented in future releases.
-
- o Collective access to fixed dimension datasets.
- Collective access to a dataset can be specified in the transfer
- property list argument in H5Dread and H5Dwrite. The current
- release supports collective access to fixed dimension datasets.
- Collective access to extendable datasets will be implemented in
- future releases.
-
- o HDF5 files are opened according to Communicator and INFO object.
- H5Dopen now records the communicator and INFO setup by H5Pset_mmpi
- and pass them to the corresponding MPIO open file calls for
- processing.
-
- o This release has been tested on IBM SP2, Intel Red and SGI Origin 2000
- systems. It uses the ROMIO version of MPIO interface for parallel
- I/O supports.
-
-
-
-%%%%1.0.0%%%% Release Information for hdf5-1.0.0
-
-3. Changes from the Beta 1.0.0 Release to Release 1.0.0
-====================================================================
-
-* Added fill values for datasets. For contiguous datasets fill value
- performance may be quite poor since the fill value is written to the
- entire dataset when the dataset is created. This will be remedied
- in a future version. Chunked datasets using fill values do not
- incur any additional overhead. See H5Pset_fill_value().
-
-* Multiple hdf5 files can be "mounted" on one another to create a
- larger virtual file. See H5Fmount().
-
-* Object names can be removed or changed but objects are never
- actually removed from the file yet. See H5Gunlink() and H5Gmove().
-
-* Added a tuning mechanism for B-trees to insure that sequential
- writes to chunked datasets use less overhead. See H5Pset_btree_ratios().
-
-* Various optimizations and bug fixes.
-
-
-
-%%%%1.0.0 Beta%%%% Release Information for hdf5-1.0.0 Beta
-
-2. Changes from the Second Alpha 1.0.0 Release to the Beta 1.0.0 Release
-=========================================================================
-
-* Strided hyperslab selections in dataspaces now working.
-
-* The compression API has been replaced with a more general filter
- API. See doc/html/Filters.html for details.
-
-* Alpha-quality 2d ragged arrays are implemented as a layer built on
- top of other hdf5 objects. The API and storage format will almost
- certainly change.
-
-* More debugging support including API tracing. See Debugging.html.
-
-* C and Fortran style 8-bit fixed-length character string types are
- supported with space or null padding or null termination and
- translations between them.
-
-* Added function H5Fflush() to write all cached data immediately to
- the file.
-
-* Datasets maintain a modification time which can be retrieved with
- H5Gstat().
-
-* The h5ls tool can display much more information, including all the
- values of a dataset.
-
-
-
-%%%%1.0.0 Alpha 2%%%% Release Information for hdf5-1.0.0 Alpha 2
-
-1. Changes from the First Alpha 1.0.0 Release to
- the Second Alpha 1.0.0 Release
-=====================================================================
-
-* Two of the packages have been renamed. The data space API has been
- renamed from `H5P' to `H5S' and the property list (template) API has
- been renamed from `H5C' to `H5P'.
-
-* The new attribute API `H5A' has been added. An attribute is a small
- dataset which can be attached to some other object (for instance, a
- 4x4 transformation matrix attached to a 3-dimensional dataset, or an
- English abstract attached to a group).
-
-* The error handling API `H5E' has been completed. By default, when an
- API function returns failure an error stack is displayed on the
- standard error stream. The H5Eset_auto() controls the automatic
- printing and H5E_BEGIN_TRY/H5E_END_TRY macros can temporarily
- disable the automatic error printing.
-
-* Support for large files and datasets (>2GB) has been added. There
- is an html document that describes how it works. Some of the types
- for function arguments have changed to support this: all arguments
- pertaining to sizes of memory objects are `size_t' and all arguments
- pertaining to file sizes are `hsize_t'.
-
-* More data type conversions have been added although none of them are
- fine tuned for performance. There are new converters from integer
- to integer and float to float, but not between integers and floating
- points. A bug has been fixed in the converter between compound
- types.
-
-* The numbered types have been removed from the API: int8, uint8,
- int16, uint16, int32, uint32, int64, uint64, float32, and float64.
- Use standard C types instead. Similarly, the numbered types were
- removed from the H5T_NATIVE_* architecture; use unnumbered types
- which correspond to the standard C types like H5T_NATIVE_INT.
-
-* More debugging support was added. If tracing is enabled at
- configuration time (the default) and the HDF5_TRACE environment
- variable is set to a file descriptor then all API calls will emit
- the function name, argument names and values, and return value on
- that file number. There is an html document that describes this.
- If appropriate debugging options are enabled at configuration time,
- some packages will display performance information on stderr.
-
-* Data types can be stored in the file as independent objects and
- multiple datasets can share a data type.
-
-* The raw data I/O stream has been implemented and the application can
- control meta and raw data caches, so I/O performance should be
- improved from the first alpha release.
-
-* Group and attribute query functions have been implemented so it is
- now possible to find out the contents of a file with no prior
- knowledge.
-
-* External raw data storage allows datasets to be written by other
- applications or I/O libraries and described and accessed through
- HDF5.
-
-* Hard and soft (symbolic) links are implemented which allow groups to
- share objects. Dangling and recursive symbolic links are supported.
-
-* User-defined data compression is implemented although we may
- generalize the interface to allow arbitrary user-defined filters
- which can be used for compression, checksums, encryption,
- performance monitoring, etc. The publicly-available `deflate'
- method is predefined if the GNU libz.a can be found at configuration
- time.
-
-* The configuration scripts have been modified to make it easier to
- build debugging vs. production versions of the library.
-
-* The library automatically checks that the application was compiled
- with the correct version of header files.
-
-
- Parallel HDF5 Changes
-
-* Parallel support for fixed dimension datasets with contiguous or
- chunked storages. Also, support unlimited dimension datasets which
- must use chunk storage. No parallel support for compressed datasets.
-
-* Collective data transfer for H5Dread/H5Dwrite. Collective access
- support for datasets with contiguous storage only, thus only fixed
- dimension datasets for now.
-
-* H5Pset_mpi and H5Pget_mpi no longer have the access_mode
- argument. It is taken over by the data-transfer property list
- of H5Dread/H5Dwrite.
-
-* New functions H5Pset_xfer and H5Pget_xfer to handle the
- specification of independent or collective data transfer_mode
- in the dataset transfer properties list. The properties
- list can be used to specify data transfer mode in the H5Dwrite
- and H5Dread function calls.
-
-* Added parallel support for datasets with chunked storage layout.
- When a dataset is extend in a PHDF5 file, all processes that open
- the file must collectively call H5Dextend with identical new dimension
- sizes.
-
-
- LIST OF API FUNCTIONS
-
-The following functions are implemented. Errors are returned if an
-attempt is made to use some feature which is not implemented and
-printing the error stack will show `not implemented yet'.
-
-Library
- H5check - check that lib version matches header version
- H5open - initialize library (happens automatically)
- H5close - shut down the library (happens automatically)
- H5dont_atexit - don't call H5close on exit
- H5get_libversion - retrieve library version info
- H5check_version - check for specific library version
-
-Property Lists
- H5Pclose - release template resources
- H5Pcopy - copy a template
- H5Pcreate - create a new template
- H5Pget_chunk - get chunked storage properties
- H5Pset_chunk - set chunked storage properties
- H5Pget_class - get template class
- H5Pget_istore_k - get chunked storage properties
- H5Pset_istore_k - set chunked storage properties
- H5Pget_layout - get raw data layout class
- H5Pset_layout - set raw data layout class
- H5Pget_sizes - get address and size sizes
- H5Pset_sizes - set address and size sizes
- H5Pget_sym_k - get symbol table storage properties
- H5Pset_sym_k - set symbol table storage properties
- H5Pget_userblock - get user-block size
- H5Pset_userblock - set user-block size
- H5Pget_version - get file version numbers
- H5Pget_alignment - get data alignment properties
- H5Pset_alignment - set data alignment properties
- H5Pget_external_count- get count of external data files
- H5Pget_external - get information about an external data file
- H5Pset_external - add a new external data file to the list
- H5Pget_driver - get low-level file driver class
- H5Pget_stdio - get properties for stdio low-level driver
- H5Pset_stdio - set properties for stdio low-level driver
- H5Pget_sec2 - get properties for sec2 low-level driver
- H5Pset_sec2 - set properties for sec2 low-level driver
- H5Pget_core - get properties for core low-level driver
- H5Pset_core - set properties for core low-level driver
- H5Pget_split - get properties for split low-level driver
- H5Pset_split - set properties for split low-level driver
- H5P_get_family - get properties for family low-level driver
- H5P_set_family - set properties for family low-level driver
- H5Pget_cache - get meta- and raw-data caching properties
- H5Pset_cache - set meta- and raw-data caching properties
- H5Pget_buffer - get raw-data I/O pipe buffer properties
- H5Pset_buffer - set raw-data I/O pipe buffer properties
- H5Pget_preserve - get type conversion preservation properties
- H5Pset_preserve - set type conversion preservation properties
- H5Pget_nfilters - get number of raw data filters
- H5Pget_filter - get raw data filter properties
- H5Pset_filter - set raw data filter properties
- H5Pset_deflate - set deflate compression filter properties
- H5Pget_mpi - get MPI-IO properties
- H5Pset_mpi - set MPI-IO properties
- H5Pget_xfer - get data transfer properties
- + H5Pset_xfer - set data transfer properties
- + H5Pset_preserve - set dataset transfer property list status
- + H5Pget_preserve - get dataset transfer property list status
- + H5Pset_hyper_cache - indicates whether to cache hyperslab blocks during I/O
- + H5Pget_hyper_cache - returns information regarding the caching of
- hyperslab blocks during I/O
- + H5Pget_btree_ratios - sets B-tree split ratios for a dataset
- transfer property list
- + H5Pset_btree_ratios - gets B-tree split ratios for a dataset
- transfer property list
- + H5Pset_vlen_mem_manager - sets the memory manager for variable-length
- datatype allocation
- + H5Pget_vlen_mem_manager - sets the memory manager for variable-length
- datatype allocation
-
-Datasets
- H5Dclose - release dataset resources
- H5Dcreate - create a new dataset
- H5Dget_space - get data space
- H5Dget_type - get data type
- H5Dget_create_plist - get dataset creation properties
- H5Dopen - open an existing dataset
- H5Dread - read raw data
- H5Dwrite - write raw data
- H5Dextend - extend a dataset
- + H5Diterate - iterate over all selected elements in a dataspace
- + H5Dget_storage_size - return the amount of storage required for a dataset
- + H5Dvlen_reclaim - reclaim VL datatype memory buffers
-
-Attributes
- H5Acreate - create a new attribute
- H5Aopen_name - open an attribute by name
- H5Aopen_idx - open an attribute by number
- H5Awrite - write values into an attribute
- H5Aread - read values from an attribute
- H5Aget_space - get attribute data space
- H5Aget_type - get attribute data type
- H5Aget_name - get attribute name
- H5Anum_attrs - return the number of attributes for an object
- H5Aiterate - iterate over an object's attributes
- H5Adelete - delete an attribute
- H5Aclose - close an attribute
-
-Errors
- H5Eclear - clear the error stack
- H5Eprint - print an error stack
- H5Eget_auto - get automatic error reporting settings
- H5Eset_auto - set automatic error reporting
- H5Ewalk - iterate over the error stack
- H5Ewalk_cb - the default error stack iterator function
- H5Eget_major - get the message for the major error number
- H5Eget_minor - get the message for the minor error number
-
-Files
- H5Fclose - close a file and release resources
- H5Fcreate - create a new file
- H5Fget_create_plist - get file creation property list
- H5Fget_access_plist - get file access property list
- H5Fis_hdf5 - determine if a file is an hdf5 file
- H5Fopen - open an existing file
- H5Freopen - reopen an HDF5 file
- H5Fmount - mount a file
- H5Funmount - unmount a file
- H5Fflush - flush all buffers associated with a file to disk
-
-Groups
- H5Gclose - close a group and release resources
- H5Gcreate - create a new group
- H5Gopen - open an existing group
- H5Giterate - iterate over the contents of a group
- H5Gmove - change the name of some object
- H5Glink - create a hard or soft link to an object
- H5Gunlink - break the link between a name and an object
- H5Gget_objinfo - get information about a group entry
- H5Gget_linkval - get the value of a soft link
- H5Gget_comment - get the comment string for an object
- H5Gset_comment - set the comment string for an object
-
-Dataspaces
- H5Screate - create a new data space
- H5Scopy - copy a data space
- H5Sclose - release data space
- H5Screate_simple - create a new simple data space
- H5Sset_space - set simple data space extents
- H5Sis_simple - determine if data space is simple
- H5Sset_extent_simple - set simple data space dimensionality and size
- H5Sget_simple_extent_npoints - get number of points in simple extent
- H5Sget_simple_extent_ndims - get simple data space dimensionality
- H5Sget_simple_extent_dims - get simple data space size
- H5Sget_simple_extent_type - get type of simple extent
- H5Sset_extent_none - reset extent to be empty
- H5Sextent_copy - copy the extent from one data space to another
- H5Sget_select_npoints - get number of points selected for I/O
- H5Sselect_hyperslab - set hyperslab dataspace selection
- H5Sselect_elements - set element sequence dataspace selection
- H5Sselect_all - select entire extent for I/O
- H5Sselect_none - deselect all elements of extent
- H5Soffset_simple - set selection offset
- H5Sselect_valid - determine if selection is valid for extent
- + H5Sget_select_hyper_nblocks - get number of hyperslab blocks
- + H5Sget_select_hyper_blocklist - get the list of hyperslab blocks
- currently selected
- + H5Sget_select_elem_npoints - get the number of element points
- in the current selection
- + H5Sget_select_elem_pointlist - get the list of element points
- currently selected
- + H5Sget_select_bounds - gets the bounding box containing
- the current selection
-
-Datatypes
- H5Tclose - release data type resources
- H5Topen - open a named data type
- H5Tcommit - name a data type
- H5Tcommitted - determine if a type is named
- H5Tcopy - copy a data type
- H5Tcreate - create a new data type
- H5Tequal - compare two data types
- H5Tlock - lock type to prevent changes
- H5Tfind - find a data type conversion function
- H5Tconvert - convert data from one type to another
- H5Tregister - register a conversion function
- H5Tunregister - remove a conversion function
- H5Tget_overflow - get function that handles overflow conv. cases
- H5Tset_overflow - set function to handle overflow conversion cases
- H5Tget_class - get data type class
- H5Tget_cset - get character set
- H5Tget_ebias - get exponent bias
- H5Tget_fields - get floating point fields
- H5Tget_inpad - get inter-field padding
- H5Tget_member_dims - get struct member dimensions
- H5Tget_member_name - get struct member name
- H5Tget_member_offset - get struct member byte offset
- H5Tget_member_type - get struct member type
- H5Tget_nmembers - get number of struct members
- H5Tget_norm - get floating point normalization
- H5Tget_offset - get bit offset within type
- H5Tget_order - get byte order
- H5Tget_pad - get padding type
- H5Tget_precision - get precision in bits
- H5Tget_sign - get integer sign type
- H5Tget_size - get size in bytes
- H5Tget_strpad - get string padding
- H5Tinsert - insert scalar struct member
- H5Tinsert_array - insert array struct member
- H5Tpack - pack struct members
- H5Tset_cset - set character set
- H5Tset_ebias - set exponent bias
- H5Tset_fields - set floating point fields
- H5Tset_inpad - set inter-field padding
- H5Tset_norm - set floating point normalization
- H5Tset_offset - set bit offset within type
- H5Tset_order - set byte order
- H5Tset_pad - set padding type
- H5Tset_precision - set precision in bits
- H5Tset_sign - set integer sign type
- H5Tset_size - set size in bytes
- H5Tset_strpad - set string padding
- + H5Tget_super - return the base datatype from which a
- datatype is derived
- + H5Tvlen_create - creates a new variable-length dataype
- + H5Tenum_create - creates a new enumeration datatype
- + H5Tenum_insert - inserts a new enumeration datatype member
- + H5Tenum_nameof - returns the symbol name corresponding to a
- specified member of an enumeration datatype
- + H5Tvalueof - return the value corresponding to a
- specified member of an enumeration datatype
- + H5Tget_member_value - return the value of an enumeration datatype member
- + H5Tset_tag - tags an opaque datatype
- + H5Tget_tag - gets the tag associated with an opaque datatype
-
- - H5Tregister_hard - register specific type conversion function
- - H5Tregister_soft - register general type conversion function
-
-Filters
- H5Tregister - register a conversion function
-
-Compression
- H5Zregister - register new compression and uncompression
- functions for a method specified by a method number
-
-Identifiers
- + H5Iget_type - retrieve the type of an object
-
-References
- + H5Rcreate - creates a reference
- + H5Rdereference - open the HDF5 object referenced
- + H5Rget_region - retrieve a dataspace with the specified region selected
- + H5Rget_object_type - retrieve the type of object that an
- object reference points to
-
-Ragged Arrays (alpha)
- H5RAcreate - create a new ragged array
- H5RAopen - open an existing array
- H5RAclose - close a ragged array
- H5RAwrite - write to an array
- H5RAread - read from an array
-
-
diff --git a/release_docs/HISTORY-1_10.txt b/release_docs/HISTORY-1_10.txt
deleted file mode 100644
index 1fc3c60..0000000
--- a/release_docs/HISTORY-1_10.txt
+++ /dev/null
@@ -1,6562 +0,0 @@
-HDF5 History
-============
-
-This file contains development history of the HDF5 1.10 branch
-
-09. Release Information for hdf5-1.10.7
-08. Release Information for hdf5-1.10.6
-07. Release Information for hdf5-1.10.5
-06. Release Information for hdf5-1.10.4
-05. Release Information for hdf5-1.10.3
-04. Release Information for hdf5-1.10.2
-03. Release Information for hdf5-1.10.1
-02. Release Information for hdf5-1.10.0-patch1
-01. Release Information for hdf5-1.10.0
-
-[Search on the string '%%%%' for section breaks of each release.]
-
-%%%%1.10.7%%%%
-
-HDF5 version 1.10.7 released on 2020-09-11
-================================================================================
-
-
-INTRODUCTION
-
-This document describes the differences between this release and the previous
-HDF5 release. It contains information on the platforms tested and known
-problems in this release. For more details check the HISTORY*.txt files in the
-HDF5 source.
-
-Note that documentation in the links below will be updated at the time of each
-final release.
-
-Links to HDF5 documentation can be found on The HDF5 web page:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5
-
-The official HDF5 releases can be obtained from:
-
- https://www.hdfgroup.org/downloads/hdf5/
-
- HDF5 binaries provided are fully tested with ZLIB and the free
- Open Source SZIP successor Libaec (with BSD license).
- The official ZLIB and SZIP/Libaec pages are at:
-
- ZLIB: http://www.zlib.net/
- http://www.zlib.net/zlib_license.html
- SZIP/Libaec: https://gitlab.dkrz.de/k202009/libaec
- https://gitlab.dkrz.de/k202009/libaec/-/blob/master/Copyright.txt
-
-Changes from Release to Release and New Features in the HDF5-1.10.x release series
-can be found at:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5+Application+Developer%27s+Guide
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.10.6
-- Supported Platforms
-- Tested Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-- CMake vs. Autotools installations
-
-
-New Features
-============
-
- Configuration:
- -------------
- - Disable memory sanity checks in the Autotools in release branches
-
- The library can be configured to use internal memory sanity checking,
- which replaces C API calls like malloc(3) and free(3) with our own calls
- which add things like heap canaries. These canaries can cause problems
- when external filter plugins reallocate canary-marked buffers.
-
- For this reason, the default will be to not use the memory allocation
- sanity check feature in release branches (e.g., hdf5_1_10_7).
- Debug builds in development branches (e.g., develop, hdf5_1_10) will
- still use them by default.
-
- This change only affects Autotools debug builds. Non-debug autotools
- builds and all CMake builds do not enable this feature by default.
-
- (DER - 2020/08/19)
-
- - Add file locking configure and CMake options
-
- HDF5 1.10.0 introduced a file locking scheme, primarily to help
- enforce SWMR setup. Formerly, the only user-level control of the scheme
- was via the HDF5_USE_FILE_LOCKING environment variable.
-
- This change introduces configure-time options that control whether
- or not file locking will be used and whether or not the library
- ignores errors when locking has been disabled on the file system
- (useful on some HPC Lustre installations).
-
- In both the Autotools and CMake, the settings have the effect of changing
- the default property list settings (see the H5Pset/get_file_locking()
- entry, below).
-
- The yes/no/best-effort file locking configure setting has also been
- added to the libhdf5.settings file.
-
- Autotools:
-
- An --enable-file-locking=(yes|no|best-effort) option has been added.
-
- yes: Use file locking.
- no: Do not use file locking.
- best-effort: Use file locking and ignore "disabled" errors.
-
- CMake:
-
- Two self-explanatory options have been added:
-
- HDF5_USE_FILE_LOCKING
- HDF5_IGNORE_DISABLED_FILE_LOCKS
-
- Setting both of these to ON is the equivalent to the Autotools'
- best-effort setting.
-
- NOTE:
- The precedence order of the various file locking control mechanisms is:
-
- 1) HDF5_USE_FILE_LOCKING environment variable (highest)
-
- 2) H5Pset_file_locking()
-
- 3) configure/CMake options (which set the property list defaults)
-
- 4) library defaults (currently best-effort)
-
- (DER - 2020/07/30, HDFFV-11092)
-
- - CMake option to link the generated Fortran MOD files into the include
- directory.
-
- The Fortran generation of MOD files by a Fortran compile can produce
- different binary files between SHARED and STATIC compiles with different
- compilers and/or different platforms. Note that it has been found that
- different versions of Fortran compilers will produce incompatible MOD
- files. Currently, CMake will locate these MOD files in subfolders of
- the include directory and add that path to the Fortran library target
- in the CMake config file, which can be used by the CMake find library
- process. For other build systems using the binary from a CMake install,
- a new CMake configuration can be used to copy the pre-chosen version
- of the Fortran MOD files into the install include directory.
-
- The default will depend on the configuration of
- BUILD_STATIC_LIBS and BUILD_SHARED_LIBS:
- YES YES Default to SHARED
- YES NO Default to STATIC
- NO YES Default to SHARED
- NO NO Default to SHARED
- The defaults can be overridden by setting the config option
- HDF5_INSTALL_MOD_FORTRAN to one of NO, SHARED, or STATIC
-
- (ADB - 2020/07/09, HDFFV-11116)
-
- - CMake option to use AEC (open source SZip) library instead of SZip
-
- The open source AEC library is a replacement library for SZip. In
- order to use it for hdf5, the libaec CMake source was changed to add
- "-fPIC" and exclude test files. A new option USE_LIBAEC is required
- to compensate for the different files produced by AEC build.
-
- Autotools does not build the compression libraries within hdf5 builds,
- but will use an installed libaec when configured as before with the
- option --with-libsz=.
-
- (ADB - 2020/04/22, OESS-65)
-
- - CMake ConfigureChecks.cmake file now uses CHECK_STRUCT_HAS_MEMBER
-
- Some handcrafted tests in HDFTests.c have been removed and the CMake
- CHECK_STRUCT_HAS_MEMBER module has been used.
-
- (ADB - 2020/03/24, TRILAB-24)
-
- - Both build systems use same set of warnings flags
-
- GNU C, C++ and gfortran warnings flags were moved to files in a config
- sub-folder named gnu-warnings. Flags that only are available for a specific
- version of the compiler are in files named with that version.
- Clang C warnings flags were moved to files in a config sub-folder
- named clang-warnings.
- Intel C, Fortran warnings flags were moved to files in a config sub-folder
- named intel-warnings.
-
- There are flags in named "error-xxx" files with warnings that may
- be promoted to errors. Some source files may still need fixes.
-
- There are also pairs of files named "developer-xxx" and "no-developer-xxx"
- that are chosen by the CMake option:HDF5_ENABLE_DEV_WARNINGS or the
- configure option:--enable-developer-warnings.
-
- In addition, CMake no longer applies these warnings for examples.
-
- (ADB - 2020/03/24, TRILAB-192)
-
- - Update CMake minimum version to 3.12
-
- Updated CMake minimum version to 3.12 and added version checks
- for Windows features.
-
- (ADB - 2020/02/05, TRILABS-142)
-
- - Fixed CMake include properties for Fortran libraries
-
- Corrected the library properties for Fortran to use the
- correct path for the Fortran module files.
-
- (ADB - 2020/02/04, HDFFV-11012)
-
- - Added common warnings files for gnu and intel
-
- Added warnings files to use one common set of flags
- during configure for both autotools and CMake build
- systems. The initial implementation only affects a
- general set of flags for gnu and intel compilers.
-
- (ADB - 2020/01/17)
-
- - Added new options to CMake for control of testing
-
- Added CMake options (default ON);
- HDF5_TEST_SERIAL AND/OR HDF5_TEST_PARALLEL
- combined with:
- HDF5_TEST_TOOLS
- HDF5_TEST_EXAMPLES
- HDF5_TEST_SWMR
- HDF5_TEST_FORTRAN
- HDF5_TEST_CPP
- HDF5_TEST_JAVA
-
- (ADB - 2020/01/15, HDFFV-11001)
-
- - Added Clang sanitizers to CMake for analyzer support if compiler is clang.
-
- Added CMake code and files to execute the Clang sanitizers if
- HDF5_ENABLE_SANITIZERS is enabled and the USE_SANITIZER option
- is set to one of the following:
- Address
- Memory
- MemoryWithOrigins
- Undefined
- Thread
- Leak
- 'Address;Undefined'
-
- (ADB - 2019/12/12, TRILAB-135)
-
-
- Library:
- --------
- - Add metadata cache optimization to reduce skip list usage
-
- On file flush or close, the metadata cache attempts to write out
- all dirty entries in increasing address order. To do this, it needs
- an address sorted list of metadata entries. Further, since flushing
- one metadata cache entry can dirty another, this list must support
- efficient insertion and deletion.
-
- The metadata cache uses a skip list of all dirty entries for this
- purpose. Before this release, this skip list was maintained at all
- times. However, since profiling indicates that this imposes a
- significant cost, we now construct and maintain the skip list only
- when needed. Specifically, we enable the skip list and load it with
- a list of all dirty entries in the metadata cache just before a flush,
- and disable it after the flush.
-
- (JRM - 2020/08/17, HDFFV-11034)
-
- - Add BEST_EFFORT value to HDF5_USE_FILE_LOCKING environment variable
-
- This change adds a BEST_EFFORT to the TRUE/FALSE, 1/0 settings that
- were previously accepted. This option turns on file locking but
- ignores locking errors when the library detects that file locking
- has been disabled on a file system (useful on some HPC Lustre
- installations).
-
- The capitalization of BEST_EFFORT is mandatory.
-
- See the configure option discussion for HDFFV-11092 (above) for more
- information on the file locking feature and how it's controlled.
-
- (DER - 2020/07/30, HDFFV-11092)
-
-
- - Add H5Pset/get_file_locking() API calls
-
- This change adds new API calls which can be used to set or get the
- file locking parameters. The single API call sets both the "use file
- locking" flag and the "ignore disabled file locking" flag.
-
- When opening a file multiple times without closing, the file MUST be
- opened with the same file locking settings. Opening a file with different
- file locking settings will fail (this is similar to the behavior of
- H5Pset_fclose_degree()).
-
- See the configure option discussion for HDFFV-11092 (above) for more
- information on the file locking feature and how it's controlled.
-
- (DER - 2020/07/30, HDFFV-11092)
-
- - Add Mirror VFD
-
- Use TCP/IP sockets to perform write-only (W/O) file I/O on a remote
- machine. Must be used in conjunction with the Splitter VFD.
-
- (JOS - 2020/03/13, TBD)
-
- - Add Splitter VFD
-
- Maintain separate R/W and W/O channels for "concurrent" file writes
- to two files using a single HDF5 file handle.
-
- (JOS - 2020/03/13, TBD)
-
- - Fixed an assertion failure in the parallel library when collectively
- filling chunks. As it is required that chunks be written in
- monotonically non-decreasing order of offset in the file, this assertion
- was being triggered when the list of chunk file space allocations being
- passed to the collective chunk filling routine was not sorted according
- to this particular requirement.
-
- The addition of a sort of the out of order chunks trades a bit of
- performance for the elimination of this assertion and of any complaints
- from MPI implementations about the file offsets used being out of order.
-
- (JTH - 2019/10/07)
-
- Fortran Library:
- ----------------
- - Add wrappers for H5Pset/get_file_locking() API calls
-
- h5pget_file_locking_f()
- h5pset_file_locking_f()
-
- See the configure option discussion for HDFFV-11092 (above) for more
- information on the file locking feature and how it's controlled.
-
- (DER - 2020/07/30, HDFFV-11092)
-
- - Added new Fortran parameters:
-
- H5F_LIBVER_ERROR_F
- H5F_LIBVER_NBOUNDS_F
- H5F_LIBVER_V18_F
- H5F_LIBVER_V110_F
-
- - Added new Fortran API: h5pget_libver_bounds_f
-
- (MSB - 2020/02/11, HDFFV-11018)
-
- C++ Library:
- ------------
- - Add wrappers for H5Pset/get_file_locking() API calls
-
- FileAccPropList::setFileLocking()
- FileAccPropList::getFileLocking()
-
- See the configure option discussion for HDFFV-11092 (above) for more
- information on the file locking feature and how it's controlled.
-
- (DER - 2020/07/30, HDFFV-11092)
-
- Java Library:
- ----------------
- - Add wrappers for H5Pset/get_file_locking() API calls
-
- H5Pset_file_locking()
- H5Pget_use_file_locking()
- H5Pget_ignore_disabled_file_locking()
-
- Unlike the C++ and Fortran wrappers, there are separate getters for the
- two file locking settings, each of which returns a boolean value.
-
- See the configure option discussion for HDFFV-11092 (above) for more
- information on the file locking feature and how it's controlled.
-
- (DER - 2020/07/30, HDFFV-11092)
-
- Tools:
- ------
- - h5repack added options to control how external links are handled.
-
- Currently h5repack preserves external links and cannot copy and merge
- data from the external files. Two options, merge and prune, were added to
- control how to merge data from an external link into the resulting file.
- --merge Follow external soft link recursively and merge data.
- --prune Do not follow external soft links and remove link.
- --merge --prune Follow external link, merge data and remove dangling link.
-
- (ADB - 2020/08/05, HDFFV-9984)
-
- High-Level APIs:
- ---------------
- - None
-
- C Packet Table API
- ------------------
- - None
-
- Internal header file
- --------------------
- - None
-
- Documentation
- -------------
- - None
-
-
-Support for new platforms, languages and compilers.
-=======================================
- - None
-
-
-Bug Fixes since HDF5-1.10.6 release
-==================================
-
- Library
- -------
- - Fix bug and simplify collective metadata write operation when some ranks
- have no entries to contribute. This fixes parallel regression test
- failures with IBM SpectrumScale MPI on the Summit system at ORNL.
-
- (QAK - 2020/09/02)
-
- - Avoid setting up complex MPI types with 0-length vectors, which some
- MPI implementations don't handle well. (In particular, IBM
- SpectrumScale MPI on the Summit system at ORNL)
-
- (QAK - 2020/08/21)
-
- - Fixed use-of-uninitialized-value error
-
- Appropriate initialization of local structs was added to remove the
- use-of-uninitialized-value errors reported by MemorySanitizer.
-
- (BMR - 2020/8/13, HDFFV-11101)
-
- - Creation of dataset with optional filter
-
- When the combination of type, space, etc doesn't work for filter
- and the filter is optional, it was supposed to be skipped but it was
- not skipped and the creation failed.
-
- A fix is applied to allow the creation of a dataset in such
- situation, as specified in the user documentation.
-
- (BMR - 2020/8/13, HDFFV-10933)
-
- - Explicitly declared dlopen to use RTLD_LOCAL
-
- dlopen documentation states that if neither RTLD_GLOBAL nor
- RTLD_LOCAL are specified, then the default behavior is unspecified.
- The default on linux is usually RTLD_LOCAL while macos will default
- to RTLD_GLOBAL.
-
- (ADB - 2020/08/12, HDFFV-11127)
-
- - Fixed issues CVE-2018-13870 and CVE-2018-13869
-
- When a buffer overflow occurred because a name length was corrupted
- and became very large, h5dump crashed on memory access violation.
-
- A check for reading past the end of the buffer was added to multiple
- locations to prevent the crashes and h5dump now simply fails with an
- error message when this error condition occurs.
-
- (BMR - 2020/7/31, HDFFV-11120 and HDFFV-11121)
-
- - H5Sset_extent_none() sets the dataspace class to H5S_NO_CLASS which
- causes asserts/errors when passed to other dataspace API calls.
-
- H5S_NO_CLASS is an internal class value that should not have been
- exposed via a public API call.
-
- In debug builds of the library, this can cause asserts to trip. In
- non-debug builds, it will produce normal library errors.
-
- The new library behavior is for H5Sset_extent_none() to convert
- the dataspace into one of type H5S_NULL, which is better handled
- by the library and easier for developers to reason about.
-
- (DER - 2020/07/27, HDFFV-11027)
-
- - Fixed the segmentation fault when reading attributes with multiple threads
-
- It was reported that the reading of attributes with variable length string
- datatype will crash with segmentation fault particularly when the number
- of threads is high (>16 threads). The problem was due to the file pointer
- that was set in the variable length string datatype for the attribute.
- That file pointer was already closed when the attribute was accessed.
-
- The problem was fixed by setting the file pointer to the current opened
- file pointer when the attribute was accessed. Similar patch up was done
- before when reading dataset with variable length string datatype.
-
- (VC - 2020/07/13, HDFFV-11080)
-
- - Fixed issue CVE-2018-17438
-
- A division by zero was discovered in H5D__select_io() of H5Dselect.c.
- https://security-tracker.debian.org/tracker/CVE-2018-17438
-
- A check was added to protect against division by zero. When such
- situation occurs again, the normal HDF5 error handling will be invoked,
- instead of segmentation fault.
-
- (BMR, DER - 2020/07/09, HDFFV-10587)
-
- - Fixed CVE-2018-17435
-
- The tool h52gif produced a segfault when the size of an attribute message
- was corrupted and caused a buffer overflow.
-
- The problem was fixed by verifying the attribute message's size against the
- buffer size before accessing the buffer. h52gif was also fixed to display
- the failure instead of silently exiting after the segfault was eliminated.
-
- (BMR - 2020/6/19, HDFFV-10591)
-
- - Don't allocate an empty (0-dimensioned) chunked dataset's chunk
- index, until the dataset's dimensions are increased.
-
- (QAK - 2020/05/07)
-
- Configuration
- -------------
- - Stopped addition of szip header and include directory path for
- incompatible libsz
-
- szlib.h is the same for both 32-bit and 64-bit szip, and the header file
- and its path were added to the HDF5 binary even though the configure
- check of a function in libsz later failed and szip compression was not
- enabled. The header file and include path are now added only when the
- libsz function passes the configure check.
-
- (LRK - 2020/08/17, HDFFV-10830)
-
- - Added -fsanitize=address autotools configure option for Clang compiler
-
- Clang sanitizer options were also added for Clang compilers with CMake.
-
- (LRK, 2020/08/05, HDFFV-10836)
-
- - Updated testh5cc.sh.in for functions versioned in HDF5 1.10.
-
- testh5cc.sh previously tested that the correct version of a function
- versioned in HDF5 1.6 or 1.8 was compiled when one of
- H5_NO_DEPRECATED_SYMBOLS or H5_USE_16_API_DEFAULT were defined. This
- test was extended for additional testing with H5_USE_18_API_DEFAULT.
-
- (LRK, 2020/06/22, HDFFV-11000)
-
- - Fixed CMake include properties for Fortran libraries
-
- Corrected the library properties for Fortran to use the
- correct path for the Fortran module files.
-
- (ADB - 2020/02/04, HDFFV-11012)
-
- Performance
- -------------
- - None
-
- Java Library:
- ----------------
- - None
-
- Fortran
- --------
- - Corrected INTERFACE INTENT(IN) to INTENT(OUT) for buf_size in h5fget_file_image_f.
-
- (MSB - 2020/2/18, HDFFV-11029)
-
- - Fixed configure issue when building HDF5 with NAG Fortran 7.0.
-
- HDF5 now accounts for the addition of half-precision floating-point
- in NAG 7.0 with a KIND=16.
-
- (MSB - 2020/02/28, HDFFV-11033)
-
- Tools
- -----
- - The tools library was updated by standardizing the error stack process.
-
- General sequence is:
- h5tools_setprogname(PROGRAMNAME);
- h5tools_setstatus(EXIT_SUCCESS);
- h5tools_init();
- ... process the command-line (check for error-stack enable) ...
- h5tools_error_report();
- ... (do work) ...
- h5diff_exit(ret);
-
- (ADB - 2020/07/20, HDFFV-11066)
-
- - h5diff fixed a command line parsing error.
-
- h5diff would ignore the argument to -d (delta) if it is smaller than DBL_EPSILON.
- The macro H5_DBL_ABS_EQUAL was removed and a direct value comparison was used.
-
- (ADB - 2020/07/20, HDFFV-10897)
-
- - h5diff added a command line option to ignore attributes.
-
- h5diff would ignore all objects with a supplied path if the exclude-path argument is used.
- Adding the exclude-attribute argument will only eclude attributes, with the supplied path,
- from comparison.
-
- (ADB - 2020/07/20, HDFFV-5935)
-
- - h5diff added another level to the verbose argument to print filenames.
-
- Added verbose level 3 that is level 2 plus the filenames. The levels are:
- 0 : Identical to '-v' or '--verbose'
- 1 : All level 0 information plus one-line attribute status summary
- 2 : All level 1 information plus extended attribute status report
- 3 : All level 2 information plus file names
-
- (ADB - 2020/07/20, HDFFV-10005)
-
- - h5repack was fixed to repack the reference attributes properly.
- The code line that checks if the update of reference inside a compound
- datatype is misplaced outside the code block loop that carries out the
- check. In consequence, the next attribute that is not the reference
- type was repacked again as the reference type and caused the failure of
- repacking. The fix is to move the corresponding code line to the correct
- code block.
-
- (KY -2020/02/10, HDFFV-11014)
-
- High-Level APIs:
- ------
- - The H5DSis_scale function was updated to return "not a dimension scale" (0)
- instead of failing (-1), when CLASS or DIMENSION_SCALE attributes are
- not written according to Dimension Scales Specification.
-
- (EIP - 2020/08/12, HDFFV-10436)
-
- Fortran High-Level APIs:
- ------
- - None
-
- Documentation
- -------------
- - None
-
- F90 APIs
- --------
- - None
-
- C++ APIs
- --------
- - None
-
- Testing
- -------
- - Stopped java/test/junit.sh.in installing libs for testing under ${prefix}
-
- Lib files needed are now copied to a subdirectory in the java/test
- directory, and on Macs the loader path for libhdf5.xxxs.so is changed
- in the temporary copy of libhdf5_java.dylib.
-
- (LRK, 2020/7/2, HDFFV-11063)
-
-
-Supported Platforms
-===================
-
- Linux 3.10.0-1127.10.1.el7 gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
- (echidna) GNU Fortran (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
-
- Linux 2.6.32-754.31.1.el6 IBM XL C/C++ V13.1
- #1 SMP ppc64 GNU/Linux IBM XL Fortran V15.1
- (ostrich)
-
- Linux 3.10.0-327.18.2.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (jelly/kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Version 4.9.3, Version 5.3.0, Version 6.3.0,
- Version 7.2.0, Version 8.3.0, Version 9.1.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.0.098 Build 20160721
- MPICH 3.3 compiled with GCC 7.2.0
- OpenMPI 4.0.0 compiled with GCC 7.2.0
-
- SunOS 5.11 11.4.5.12.5.0 Sun C 5.15 SunOS_sparc 2017/05/30
- 32- and 64-bit Studio 12.6 Fortran 95 8.8 SunOS_sparc 2017/05/30
- (hedgehog) Sun C++ 5.15 SunOS_sparc 2017/05/30
-
- Windows 7 x64 Visual Studio 2015 w/ Intel C, Fortran 2018 (cmake)
-
- Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
- Visual Studio 2017 w/ Intel Fortran 19 (cmake)
- Visual Studio 2019 w/ Intel Fortran 19 (cmake)
- Visual Studio 2019 w/ MSMPI 10.1 (cmake)
-
- macOS Mojave 10.14.6 Apple LLVM version 10.0.1 (clang-1001.0.46.4)
- 64-bit gfortran GNU Fortran (GCC) 6.3.0
- (swallow) Intel icc/icpc/ifort version 19.0.4.233 20190416
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-Solaris2.11 32-bit n y/y n y y y
-Solaris2.11 64-bit n y/n n y y y
-Windows 7 x64 y y/y y y y y
-Windows 10 y y/y n y y y
-Windows 10 x64 y y/y n y y y
-MacOS Sierra 10.12.6 64-bit n y/y n y y y
-MacOS High Sierra 10.13.6 64-bit n y/y n y y y
-MacOS Mojave 10.14.6 64-bit n y/y n y y y
-CentOS 7.2 Linux 3.10.0 x86_64 PGI n y/y n y y y
-CentOS 7.2 Linux 3.10.0 x86_64 GNU y y/y y y y y
-CentOS 7.2 Linux 3.10.0 x86_64 Intel n y/y n y y y
-Linux 2.6.32-754.31.1.el6.ppc64 XL n y/y n y y y
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.11 32-bit y y y y
-Solaris2.11 64-bit y y y y
-Windows 7 x64 y y y y
-Windows 10 y y y y
-Windows 10 x64 y y y y
-MacOS Sierra 10.12.6 64-bit y n y y
-MacOS High Sierra 10.13.6 64-bit y n y y
-MacOS Mojave 10.14.6 64-bit y n y y
-CentOS 7.2 Linux 3.10.0 x86_64 PGI y y y n
-CentOS 7.2 Linux 3.10.0 x86_64 GNU y y y y
-CentOS 7.2 Linux 3.10.0 x86_64 Intel y y y n
-Linux 2.6.32-754.31.1.el6.ppc64 XL y y y n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (platypus) Version 4.4.7 20120313
- Version 4.9.3, 5.3.0, 6.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 19.10-0
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- Linux 2.6.32-754.31.1.el6 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
-
- Linux 3.10.0-327.18.2.el7 GNU C (gcc) and C++ (g++) compilers
- #1 SMP x86_64 GNU/Linux Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- (jelly) with NAG Fortran Compiler Release 6.1(Tozai)
- GCC Version 7.1.0
- OpenMPI 2.1.6-GCC-7.2.0-2.29,
- 3.1.3-GCC-7.2.0-2.29
- Intel(R) C (icc) and C++ (icpc) compilers
- Version 17.0.0.098 Build 20160721
- with NAG Fortran Compiler Release 6.1(Tozai)
-
- Linux 3.10.0-327.10.1.el7 MPICH 3.1.4 compiled with GCC 4.9.3
- #1 SMP x86_64 GNU/Linux
- (moohan)
-
- Linux-3.10.0-1127.0.0.1chaos openmpi-4.0.0
- #1 SMP x86_64 GNU/Linux clang/3.9.0, 8.0.1
- (quartz) gcc/7.3.0, 8.1.0
- intel/16.0.4
-
- Linux-4.14.0-115.10.1.1 spectrum-mpi/rolling-release
- #1 SMP ppc64le GNU/Linux clang/coral-2018.08.08
- (lassen) gcc/7.3.1
- xl/2019.02.07
-
- Linux-4.12.14-150.52-default cray-mpich/7.7.10
- #1 SMP x86_64 GNU/Linux gcc/7.3.0, 8.2.0
- (cori) intel/19.0.3
-
- Linux-4.4.180-94.107-default cray-mpich/7.7.6
- # 1SMP x86_64 GNU/Linux gcc/7.2.0, 8.2.0
- (mutrino) intel/17.0.4, 18.0.2, 19.0.4
-
- Fedora 32 5.7.15-200.fc32.x86_64 Clang version 10.0.0 (Fedora 10.0.0-2.fc32)
- #1 SMP x86_64 GNU/Linux GNU gcc (GCC) 10.2.1 20200723 (Red Hat 10.2.1-1)
- GNU Fortran (GCC) 10.2.1 20200723 (Red Hat 10.2.1)
- (cmake and autotools)
-
- Mac OS X El Capitan 10.11.6 Apple clang version 7.3.0 from Xcode 7.3
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1011test) Intel icc/icpc/ifort version 16.0.2
-
- macOS Sierra 10.12.6 Apple LLVM version 9.0.0 (clang-900.39.2)
- 64-bit gfortran GNU Fortran (GCC) 7.4.0
- (kite) Intel icc/icpc/ifort version 17.0.2
-
- macOS High Sierra 10.13.6 Apple LLVM version 10.0.0 (clang-1000.10.44.4)
- 64-bit gfortran GNU Fortran (GCC) 6.3.0
- (bear) Intel icc/icpc/ifort version 19.0.4.233 20190416
-
- SunOS 5.11 11.3 Sun C 5.15 SunOS_sparc
- 32- and 64-bit Sun Fortran 95 8.8 SunOS_sparc
- (emu) Sun C++ 5.15 SunOS_sparc
-
-
-Known Problems
-==============
- CMake files do not behave correctly with paths containing spaces.
- Do not use spaces in paths because the required escaping for handling spaces
- results in very complex and fragile build files.
- ADB - 2019/05/07
-
- At present, metadata cache images may not be generated by parallel
- applications. Parallel applications can read files with metadata cache
- images, but since this is a collective operation, a deadlock is possible
- if one or more processes do not participate.
-
- Two tests fail attempting collective writes with OpenMPI 3.0.0/GCC-7.2.0-2.29:
- testphdf5 (ecdsetw, selnone, cchunk1, cchunk3, cchunk4, and actualio)
- t_shapesame (sscontig2)
-
- CPP ptable test fails on both VS2017 and VS2019 with Intel compiler, JIRA
- issue: HDFFV-10628. This test will pass with VS2015 with Intel compiler.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-CMake vs. Autotools installations
-=================================
-While both build systems produce similar results, there are differences.
-Each system produces the same set of folders on linux (only CMake works
-on standard Windows); bin, include, lib and share. Autotools places the
-COPYING and RELEASE.txt file in the root folder, CMake places them in
-the share folder.
-
-The bin folder contains the tools and the build scripts. Additionally, CMake
-creates dynamic versions of the tools with the suffix "-shared". Autotools
-installs one set of tools depending on the "--enable-shared" configuration
-option.
- build scripts
- -------------
- Autotools: h5c++, h5cc, h5fc
- CMake: h5c++, h5cc, h5hlc++, h5hlcc
-
-The include folder holds the header files and the fortran mod files. CMake
-the share folder.
-
-The bin folder contains the tools and the build scripts. Additionally, CMake
-places the fortran mod files into separate shared and static subfolders,
-while Autotools places one set of mod files into the include folder. Because
-CMake produces a tools library, the header files for tools will appear in
-the include folder.
-
-The lib folder contains the library files, and CMake adds the pkgconfig
-subfolder with the hdf5*.pc files used by the bin/build scripts created by
-the CMake build. CMake separates the C interface code from the fortran code by
-creating C-stub libraries for each Fortran library. In addition, only CMake
-installs the tools library. The names of the szip libraries are different
-between the build systems.
-
-The share folder will have the most differences because CMake builds include
-a number of CMake specific files for support of CMake's find_package and support
-for the HDF5 Examples CMake project.
-
-
-
-%%%%1.10.6%%%%
-
-HDF5 version 1.10.6 released on 2019-12-23
-================================================================================
-
-
-INTRODUCTION
-
-This document describes the differences between this release and the previous
-HDF5 release. It contains information on the platforms tested and known
-problems in this release. For more details check the HISTORY*.txt files in the
-HDF5 source.
-
-Note that documentation in the links below will be updated at the time of each
-final release.
-
-Links to HDF5 documentation can be found on The HDF5 web page:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5
-
-The official HDF5 releases can be obtained from:
-
- https://www.hdfgroup.org/downloads/hdf5/
-
-Changes from Release to Release and New Features in the HDF5-1.10.x release series
-can be found at:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5+Application+Developer%27s+Guide
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.10.5
-- Supported Platforms
-- Tested Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-- CMake vs. Autotools installations
-
-
-New Features
-============
-
- Configuration:
- -------------
- - Update CMake for VS2019 support
-
- CMake added support for VS2019 in version 3.15. Changes to the CMake
- generator setting required changes to scripts. Also updated version
- references in CMake files as necessary.
-
- (ADB - 2019/11/18, HDFFV-10962)
-
- - Update CMake options to match new autotools options
-
- Add configure options (autotools - CMake):
- enable-asserts HDF5_ENABLE_ASSERTS
- enable-symbols HDF5_ENABLE_SYMBOLS
- enable-profiling HDF5_ENABLE_PROFILING
- enable-optimization HDF5_ENABLE_OPTIMIZATION
- In addition NDEBUG is no longer forced defined and relies on the CMake
- process.
-
- (ADB - 2019/10/07, HDFFV-100901, HDFFV-10637, TRILAB-97)
-
- - Update CMake tests to use FIXTURES
-
- CMake test fixtures allow setup/cleanup tests and other dependency
- requirements as properties for tests. This is more flexible for
- modern CMake code.
-
- (ADB - 2019/07/23, HDFFV-10529)
-
- - Windows PDB files are always installed
-
- There are build configuration or flag settings for Windows that may not
- generate PDB files. If those files are not generated then the install
- utility will fail because those PDB files are not found. An optional
- variable, DISABLE_PDB_FILES, was added to not install PDB files.
-
- (ADB - 2019/07/17, HDFFV-10424)
-
- - Add mingw CMake support with a toolchain file
-
- There have been a number of mingw issues that have been linked under
- HDFFV-10845. It has been decided to implement the CMake cross-compiling
- technique of toolchain files. We will use a linux platform with the mingw
- compiler stack for testing. Only the C language is fully supported, and
- the error tests are skipped. The C++ language works for static but shared
- builds have a shared library issue with the mingw Standard Exception Handling
- library, which is not available on Windows. Fortran has a common cross-compile
- problem with the fortran configure tests.
-
- (ADB - 2019/07/12, HDFFV-10845, HDFFV-10595)
-
- - Windows PDB files are installed incorrectly
-
- For static builds, the PDB files for windows should be installed next
- to the static libraries in the lib folder. Also the debug versions of
- libraries and PDB files are now correctly built using the default
- CMAKE_DEBUG_POSTFIX setting.
-
- (ADB - 2019/07/09, HDFFV-10581)
-
- - Add option to build only shared libs
-
- A request was made to prevent building static libraries and only build
- shared. A new option was added to CMake, ONLY_SHARED_LIBS, which will
- skip building static libraries. Certain utility functions will build with
- static libs but are not published. Tests are adjusted to use the correct
- libraries depending on SHARED/STATIC settings.
-
- (ADB - 2019/06/12, HDFFV-10805)
-
- - Add options to enable or disable building tools and tests
-
- Configure options --enable-tests and --enable-tools were added for
- autotools configure. These options are enabled by default, and can be
- disabled with either --disable-tests (or tools) or --enable-tests=no
- (or --enable-tools=no). Build time is reduced ~20% when tools are
- disabled, 35% when tests are disabled, 45% when both are disabled.
- Re-enabling them after the initial build requires running configure
- again with the option(s) enabled.
-
- (LRK - 2019/06/12, HDFFV-9976)
-
- - Change tools tests to search the error stack
-
- There are some use cases which can cause the error stack of tools to be
- different then the expected output. These tests now use grepTest.cmake;
- this was changed to allow the error file to be searched for an expected string.
-
- (ADB - 2019/04/15, HDFFV-10741)
-
-
- Library:
- --------
- - Added S3 and HDFS Virtual File Drivers (VFDs) to HDF5
-
- These new VFDs have been introduced in HDF5-1.10.6. Instructions to
- enable them when configuring HDF5 on Linux and Mac may be found at
- https://portal.hdfgroup.org/display/HDF5/Virtual+File+Drivers+-+S3+and+HDFS.
-
- Installing on Windows requires CMake 3.13 and the following additional setup.
- Install openssl library (with dev files);
- from "Shining Light Productions". msi package preferred.
-
- PATH should have been updated with the installation dir.
- set ENV variable OPENSSL_ROOT_DIR to the installation dir.
- set ENV variable OPENSSL_CONF to the cfg file, likely %OPENSSL_ROOT_DIR%\bin\openssl.cfg
- Install libcurl library (with dev files);
- download the latest released version using git: https://github.com/curl/curl.git
-
- Open a Visual Studio Command prompt
- change to the libcurl root folder
- run the "buildconf.bat" batch file
- change to the winbuild directory
- nmake /f Makefile.vc mode=dll MACHINE=x64
- copy libcurl-vc-x64-release-dll-ipv6-sspi-winssl dir to C:\curl (installation dir)
- set ENV variable CURL_ROOT to C:\curl (installation dir)
- update PATH ENV variable to %CURL_ROOT%\bin (installation bin dir).
- the aws credentials file should be in %USERPROFILE%\.aws folder
- set the ENV variable "HDF5_ROS3_TEST_BUCKET_URL=https://s3.us-east-2.amazonaws.com/hdf5ros3"
-
- (ADB - 2019/09/12, HDFFV-10854)
-
- C++ Library:
- ------------
- - Added new wrappers for H5Pset/get_create_intermediate_group()
- LinkCreatPropList::setCreateIntermediateGroup()
- LinkCreatPropList::getCreateIntermediateGroup()
-
- (BMR - 2019/04/22, HDFFV-10622)
-
-
- Java Library:
- ----------------
- - Fixed a failure in JUnit-TestH5P on 32-bit architectures
-
- (JTH - 2019/04/30)
-
-
-Support for new platforms, languages and compilers.
-=======================================
- - CMake added support for VS2019 in version 3.15. Updated scripts.
-
- - macOS 10.13.6 Darwin 17.7.0 with Apple clang LLVM version 10.0.0
-
- - macOS 10.14.6 Darwin 18.7.0 with Apple clang LLVM version 10.0.1
-
-
-Bug Fixes since HDF5-1.10.5 release
-==================================
-
- Library
- -------
- - Improved performance when creating a large number of small datasets by
- retrieving default property values from the API context instead of doing
- skip list searches. More work is required to achieve parity with HDF5 1.8.
-
- (CJH - 2019/12/10, HDFFV-10658)
-
- - Fixed user-created data access properties not existing in the property list
- returned by H5Dget_access_plist. Thanks to Steven Varga for submitting a
- reproducer and a patch.
-
- (CJH - 2019/12/9, HDFFV-10934)
-
- - Inappropriate linking with deprecated MPI C++ libraries
-
- HDF5 does not define *_SKIP_MPICXX in the public headers, so applications
- can inadvertently wind up linking to the deprecated MPI C++ wrappers.
-
- MPICH_SKIP_MPICXX and OMPI_SKIP_MPICXX have both been defined in H5public.h
- so this should no longer be an issue. HDF5 makes no use of the deprecated
- MPI C++ wrappers.
-
- (DER - 2019/09/17, HDFFV-10893)
-
- - fcntl(2)-based file locking incorrectly passed the lock argument struct
- instead of a pointer to the struct, causing errors on systems where
- flock(2) is not available.
-
- File locking is used when files are opened to enforce SWMR semantics. A
- lock operation takes place on all file opens unless the
- HDF5_USE_FILE_LOCKING environment variable is set to the string "FALSE".
- flock(2) is preferentially used, with fcntl(2) locks as a backup if
- flock(2) is unavailable on a system (if neither is available, the lock
- operation fails). On these systems, the file lock will often fail, which
- causes HDF5 to not open the file and report an error.
-
- This bug only affects POSIX systems. Win32 builds on Windows use a no-op
- locking call which always succeeds. Systems which exhibit this bug will
- have H5_HAVE_FCNTL defined but not H5_HAVE_FLOCK in the configure output.
-
- This bug affects HDF5 1.10.0 through 1.10.5.
-
- fcntl(2)-based file locking now correctly passes the struct pointer.
-
- (DER - 2019/08/27, HDFFV-10892)
-
- - Fixed a bug caused by a bad tag value when condensing object header
- messages
-
- There was an assertion failure when moving messages from running a
- user test program with library release HDF5 1.10.4. It was because
- the tag value (object header's address) was not set up when entering
- the library routine H5O__chunk_update_idx(), which eventually
- verifies the metadata tag value when protecting the object header.
-
- The problem was fixed by replacing FUNC_ENTER_PACKAGE in H5O__chunk_update_idx()
- with FUNC_ENTER_PACKAGE_TAG(oh->cache_info.addr) to set up the metadata tag.
-
- (VC - 2019/08/23, HDFFV-10873)
-
- - Fixed the test failure from test_metadata_read_retry_info() in
- test/swmr.c
-
- The test failure is due to an incorrect number of bins returned for
- retry info (info.nbins). The # of bins expected for 101 read attempts
- is 3 instead of 2. The routine H5F_set_retries() in src/H5Fint.c
- calculates the # of bins by first obtaining the log10 value for
- (read attempts - 1). For PGI/19, the log10 value for 100 read attempts
- is 1.9999999999999998 instead of 2.00000. When casting the log10 value
- to unsigned later on, the decimal part is chopped off causing the test
- failure.
-
- This was fixed by obtaining the rounded integer value (HDceil) for the
- log10 value of read attempts first before casting the result to unsigned.
-
- (VC - 2019/8/14, HDFFV-10813)
-
- - Fixed an issue when creating a file with non-default file space info
- together with library high bound setting to H5F_LIBVER_V18.
-
- When setting non-default file space info in fcpl via
- H5Pset_file_space_strategy() and then creating a file with both high and
- low library bounds set to H5F_LIBVER_V18 in fapl, the library succeeds in
- creating the file. File creation should fail because the feature of
- setting non-default file space info does not exist in library release 1.8
- or earlier.
-
- This was fixed by setting and checking the proper version in the file
- space info message based on the library low and high bounds when creating
- and opening the HDF5 file.
-
- (VC - 2019/6/25, HDFFV-10808)
-
- - Fixed an issue where copying a version 1.8 dataset between files using
- H5Ocopy fails due to an incompatible fill version
-
- When using the HDF5 1.10.x H5Ocopy() API call to copy a version 1.8
- dataset to a file created with both high and low library bounds set to
- H5F_LIBVER_V18, the H5Ocopy() call will fail with the error stack indicating
- that the fill value version is out of bounds.
-
- This was fixed by changing the fill value message version to H5O_FILL_VERSION_3
- (from H5O_FILL_VERSION_2) for H5F_LIBVER_V18.
-
- (VC - 2019/6/14, HDFFV-10800)
-
- - Fixed a bug that would cause an error or cause fill values to be
- incorrectly read from a chunked dataset using the "single chunk" index if
- the data was held in cache and there was no data on disk.
-
- (NAF - 2019/03/06)
-
- - Fixed a bug that could cause an error or cause fill values to be
- incorrectly read from a dataset that was written to using H5Dwrite_chunk
- if the dataset was not closed after writing.
-
- (NAF - 2019/03/06, HDFFV-10716)
-
- - Fixed memory leak in scale offset filter
-
- In a special case where the MinBits is the same as the number of bits in
- the datatype's precision, the filter's data buffer was not freed, causing
- the memory usage to grow. In general the buffer was freed correctly. The
- Minbits are the minimal number of bits to store the data values. Please
- see the reference manual for H5Pset_scaleoffset for the details.
-
- (RL - 2019/3/4, HDFFV-10705)
-
-
- Configuration
- -------------
- - Correct option for default API version
-
- CMake options for default API version are not mutually exclusive.
- Change the multiple BOOL options to a single STRING option with the
- strings; v16, v18, v110.
-
- (ADB - 2019/08/12, HDFFV-10879)
-
- Tools
- -----
- - h5repack was fixed to repack datasets with external storage
- to other types of storage.
-
- New test added to repack files and verify the correct data using h5diff.
-
- (JS - 2019/09/25, HDFFV-10408)
- (ADB - 2019/10/02, HDFFV-10918)
-
-
-Supported Platforms
-===================
-
- Linux 2.6.32-696.20.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-23)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-23)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-23)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-327.10.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (jelly/kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Version 4.9.3, Version 5.2.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.0.098 Build 20160721
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
-
- Windows 7 x64 Visual Studio 2015 w/ Intel C, Fortran 2018 (cmake)
- Visual Studio 2015 w/ MSMPI 8 (cmake)
-
- Windows 10 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
-
- Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
- Visual Studio 2017 w/ Intel Fortran 19 (cmake)
- Visual Studio 2019 w/ Intel Fortran 19 (cmake)
-
- macOS 10.13.6, Darwin, Apple clang LLVM version 10.0.0
- 17.7.0, x86_64 gfortran GNU Fortran (GCC) 6.3.0
- (bear) Intel icc/icpc/ifort version 19.0.4
-
- macOS 10.14.6, Darwin Apple clang LLVM version 10.0.1
- 18.7.0, x86_64 gfortran GNU Fortran (GCC) 6.3.0
- (bobcat) Intel icc/icpc/ifort version 19.0.4
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-Solaris2.11 32-bit n y/y n y y y
-Solaris2.11 64-bit n y/n n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y y y y y
-Windows 7 Cygwin n y/n n y y y
-Windows 7 x64 Cygwin n y/n n y y y
-Windows 10 y y/y n y y y
-Windows 10 x64 y y/y n y y y
-Mac OS X Yosemite 10.10.5 64-bit n y/y n y y y
-Mac OS X El Capitan 10.11.6 64-bit n y/y n y y y
-MacOS High Sierra 10.13.6 64-bit n y/y n y y y
-CentOS 7.2 Linux 3.10.0 x86_64 PGI n y/y n y y y
-CentOS 7.2 Linux 3.10.0 x86_64 GNU y y/y y y y y
-CentOS 7.2 Linux 3.10.0 x86_64 Intel n y/y n y y y
-Linux 2.6.32-573.18.1.el6.ppc64 n y/y n y y y
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.11 32-bit y y y y
-Solaris2.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 7 x64 Cygwin n n n y
-Windows 10 y y y y
-Windows 10 x64 y y y y
-Mac OS X Yosemite 10.10.5 64-bit y y y y
-Mac OS X El Capitan 10.11.6 64-bit y y y y
-MacOS High Sierra 10.13.6 64-bit y y y y
-CentOS 7.2 Linux 3.10.0 x86_64 PGI y y y n
-CentOS 7.2 Linux 3.10.0 x86_64 GNU y y y y
-CentOS 7.2 Linux 3.10.0 x86_64 Intel y y y n
-Linux 2.6.32-573.18.1.el6.ppc64 y y y n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following configurations are not supported but have been tested for this release.
-
- Linux 2.6.32-754.11.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (mayll/platypus) Version 4.4.7 20120313
- Version 4.9.3, 5.3.0, 6.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 17.10-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.4.196 Build 20170411
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- Linux 3.10.0-327.18.2.el7 GNU C (gcc) and C++ (g++) compilers
- #1 SMP x86_64 GNU/Linux Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- (jelly) with NAG Fortran Compiler Release 6.2(Chiyoda)
- GCC Version 7.1.0
- MPICH 3.2-GCC-4.9.3
- MPICH 3.2.1-GCC-7.2.0-2.29
- OpenMPI 2.1.5-GCC-7.2.0-2.29
- Intel(R) C (icc) and C++ (icpc) compilers
- Version 17.0.0.098 Build 20160721
- with NAG Fortran Compiler Release 6.2(Chiyoda)
-
- Linux 3.10.0-327.10.1.el7 MPICH 3.2 compiled with GCC 5.3.0
- #1 SMP x86_64 GNU/Linux
- (moohan)
-
- Linux 2.6.32-573.18.1.el6.ppc64 MPICH mpich 3.1.4 compiled with
- #1 SMP ppc64 GNU/Linux IBM XL C/C++ for Linux, V13.1
- (ostrich) and IBM XL Fortran for Linux, V15.1
-
- Fedora30 5.3.11-200.fc30.x86_64
- #1 SMP x86_64 GNU/Linux GNU gcc (GCC) 9.2.1 20190827 (Red Hat 9.2.1 20190827)
- GNU Fortran (GCC) 9.2.1 20190827 (Red Hat 9.2.1 20190827)
- (cmake and autotools)
-
- Mac OS X 10.11.6, Darwin, Apple clang version 7.3.0 from Xcode 7.3
- 15.6.0, x86-64 gfortran GNU Fortran (GCC) 5.2.0
- (osx1011test) Intel icc/icpc/ifort version 16.0.2
-
- macOS 10.12.6, Darwin, Apple clang LLVM version 8.1.0 from Xcode 8.3
- 16.6.0, x86_64 gfortran GNU Fortran (GCC) 7.1.0
- (kite) Intel icc/icpc/ifort version 17.0.2
-
- Windows 7 x64 Visual Studio 2008
-
-
-Known Problems
-==============
- CMake files do not behave correctly with paths containing spaces.
- Do not use spaces in paths because the required escaping for handling spaces
- results in very complex and fragile build files.
- ADB - 2019/05/07
-
- At present, metadata cache images may not be generated by parallel
- applications. Parallel applications can read files with metadata cache
- images, but since this is a collective operation, a deadlock is possible
- if one or more processes do not participate.
-
- Three tests fail with OpenMPI 3.0.0/GCC-7.2.0-2.29:
- testphdf5 (ecdsetw, selnone, cchunk1, cchunk3, cchunk4, and actualio)
- t_shapesame (sscontig2)
- t_pflush1/fails on exit
- The first two tests fail attempting collective writes.
-
- Parallel builds using OpenMPI 3.03 or later and romio fail several tests
- with collective writes or compression that will not fail when ompio is used
- instead of romio. This can be done by adding "--mca io ompio" to the mpirun
- command. For example, in autotools builds RUNPARALLEL can be set to
- "mpirun --mca io ompio -n 6" provided ompio is installed.
-
- CPP ptable test fails on VS2017 with Intel compiler, JIRA issue: HDFFV-10628.
- This test will pass with VS2015 with Intel compiler.
-
- Older MPI libraries such as OpenMPI 2.0.1 and MPICH 2.1.5 were tested
- while attempting to resolve the Jira issue: HDFFV-10540.
- The known problems of reading or writing > 2GBs when using MPI-2 was
- partially resolved with the MPICH library. The proposed support recognizes
- IO operations > 2GB and if the datatype is not a derived type, the library
- breaks the IO into chunks which can be input or output with the existing
- MPI 2 limitations, i.e. size reporting and function API size/count
- arguments are restricted to be 32 bit integers. For derived types larger
- than 2GB, MPICH 2.1.5 fails while attempting to read or write data.
- OpenMPI in contrast, implements MPI-3 APIs even in the older releases
- and thus does not suffer from the 32 bit size limitation described here.
- OpenMPI releases prior to v3.1.3 appear to have other datatype issues however,
- e.g. within a single parallel test (testphdf5) the subtests (cdsetr, eidsetr)
- report data verification errors before eventually aborting.
- The most recent versions of OpenMPI (v3.1.3 or newer) have evidently
- resolved these issues and parallel HDF5 testing does not currently report
- errors though occasional hangs have been observed.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-CMake vs. Autotools installations
-=================================
-While both build systems produce similar results, there are differences.
-Each system produces the same set of folders on linux (only CMake works
-on standard Windows); bin, include, lib and share. Autotools places the
-COPYING and RELEASE.txt file in the root folder, CMake places them in
-the share folder.
-
-The bin folder contains the tools and the build scripts. Additionally, CMake
-creates dynamic versions of the tools with the suffix "-shared". Autotools
-installs one set of tools depending on the "--enable-shared" configuration
-option.
- build scripts
- -------------
- Autotools: h5c++, h5cc, h5fc
- CMake: h5c++, h5cc, h5hlc++, h5hlcc
-
-The include folder holds the header files and the fortran mod files. CMake
-places the fortran mod files into separate shared and static subfolders,
-while Autotools places one set of mod files into the include folder. Because
-CMake produces a tools library, the header files for tools will appear in
-the include folder.
-
-The lib folder contains the library files, and CMake adds the pkgconfig
-subfolder with the hdf5*.pc files used by the bin/build scripts created by
-the CMake build. CMake separates the C interface code from the fortran code by
-creating C-stub libraries for each Fortran library. In addition, only CMake
-installs the tools library. The names of the szip libraries are different
-between the build systems.
-
-The share folder will have the most differences because CMake builds include
-a number of CMake specific files for support of CMake's find_package and support
-for the HDF5 Examples CMake project.
-
-%%%%1.10.5%%%%
-
-HDF5 version 1.10.5 released on 2019-02-25
-================================================================================
-
-
-INTRODUCTION
-
-This document describes the differences between this release and the previous
-HDF5 release. It contains information on the platforms tested and known
-problems in this release. For more details check the HISTORY*.txt files in the
-HDF5 source.
-
-Note that documentation in the links below will be updated at the time of each
-final release.
-
-Links to HDF5 documentation can be found on The HDF5 web page:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5
-
-The official HDF5 releases can be obtained from:
-
- https://www.hdfgroup.org/downloads/hdf5/
-
-Changes from Release to Release and New Features in the HDF5-1.10.x release series
-can be found at:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5+Application+Developer%27s+Guide
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.10.4
-- Supported Platforms
-- Tested Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-- CMake vs. Autotools installations
-
-
-New Features
-============
-
- Configuration:
- -------------
- - Cross compile on mutrino and other Cray XC40 systems.
-
- Added support for CMake options to use CrayLinuxEnvironment, craype-mic-knl
- module for building with craype-haswell module for configuration, and
- batch scripts in bin/batch for use with sbatch or bsub to run tests in
- batch jobs on compute nodes. An instruction file README_HPC describing
- the use of these options was added in release_docs.
-
- (LRK - 2019/02/18, TRILABS-34)
-
- - Rework CMake command files to fix MPI testing.
-
- Added setup fixture to remove any test generated files and added DEPENDS
- to test properties to execute tests in order expected.
-
- (ADB - 2019/02/14, TRILABS-111)
-
- - Disable SZIP or ZLIB options if TGZ files are not available.
-
- Changed the TGZ option for SZip and ZLib to disable the options
- if the source tar.gz files are not found.
-
- (ADB - 2019/02/05, HDFFV-10697)
-
- - Added a new option to enable/disable using pread/pwrite instead of
- read/write in the sec2, log, and core VFDs.
-
- This option is enabled by default when pread/pwrite are detected.
-
- Autotools: --enable-preadwrite
- CMake: HDF5_ENABLE_PREADWRITE
-
- (DER - 2019/02/03, HDFFV-10696)
-
- - Rework CMake versioning for OSX platforms.
-
- Changed the current_version and compatibility_version flags from optional
- with HDF5_BUILD_WITH_INSTALL_NAME to always setting the flags for OSX.
-
- (ADB - 2019/01/22, HDFFV-10685)
-
- - Rework CMake command files to eliminate developer CMP005 warning
-
- Use variables without quotes in if () statements.
-
- (ADB - 2019/01/18, TILABS-105)
-
- - Rework CMake configure files to eliminate developer CMP0075 warning
-
- Renamed varname to HDF5_REQUIRED_LIBRARIES as the contents were not
- required for configuration. Also moved check includes calls to top of
- files.
-
- (ADB - 2019/01/03, HDFFV-10546)
-
- - Keep stderr and stdout separate in tests
-
- Changed test handling of output capture. Tests now keep the stderr
- output separate from the stdout output. It is up to the test to decide
- which output to check against a reference. Also added the option
- to grep for a string in either output.
-
- (ADB - 2018/12/12, HDFFV-10632)
-
- - Incorrectly installed private header files were removed from
- CMake installs.
-
- The CMake build files incorrectly flagged the following header files
- as public and installed them. They are private and will no longer be
- installed.
-
- HDF5 library private package files (H5Xpkg.h)
- H5Edefin.h
- H5Einit.h
- H5Eterm.h
- H5LTparse.h
- h5diff.h
- h5tools_dump.h
- h5tools.h
- h5tools_ref.h
- h5tools_str.h
- h5tools_utils.h
- h5trav.h
-
- (DER - 2018/10/26, HDFFV-10614, 10609)
-
- - Autotools installs now install H5FDwindows.h
-
- This is simply to align the installed header files between the
- autotools and CMake. H5FDwindows.h has no functionality on
- non-Windows systems.
-
- (DER - 2018/10/26, HDFFV-10614)
-
-
- Library:
- --------
- - The sec2, log, and core VFDs can now use pread/pwrite instead of
- read/write.
-
- pread and pwrite do not change the file offset, a feature that was
- requested by a user working with a multi-threaded application.
-
- The option to configure this feature is described above.
-
- (DER - 2019/02/03, HDFFV-10696)
-
- - Add ability to minimize dataset object headers.
-
- Creation of many, very small datasets resulted in extensive file bloat
- due to extra space in the dataset object headers -- this space is
- allocated by default to allow for the insertion of a small number of
- attributes within the object header and not require a continuation
- block, an unnecessary provision in the target use case.
-
- Inform the library to expect no attributes on created datasets, and to
- allocate the least space possible for the object headers.
- NOTE: A continuation block is created if attributes are added to a
- 'minimized' dataset, which can reduce performance.
- NOTE: Some extra space is allocated for attributes essential to the
- correct behavior of the object header (store creation times, e.g.). This
- does not violate the design principle, as the space is calculated and
- allocated as needed at the time of dataset object header creation --
- unused space is not generated.
- New API calls:
- H5Fget_dset_no_attrs_hint
- H5Fset_dset_no_attrs_hint
- H5Pget_dset_no_attrs_hint
- H5Pset_dset_no_attrs_hint
-
- (JOS - 2019/01/04, TRILAB-45)
-
- - Added new chunk query functions
-
- The following public functions were added to discover information about
- the chunks in an HDF5 file.
- herr_t H5Dget_num_chunks(dset_id, fspace_id, *nchunks)
- herr_t H5Dget_chunk_info_by_coord(dset_id, *coord, *filter_mask, *addr, *size)
- herr_t H5Dget_chunk_info(dset_id, fspace_id, index, *coord, *filter_mask, *addr, *size)
-
- (BMR - 2018/11/07, HDFFV-10615)
-
- - Several empty public header files where removed from the distribution
-
- The following files were empty placeholders. They are for internal
- packages that are unlikely to ever have public functionality and have
- thus been removed.
-
- H5Bpublic.h
- H5B2public.h
- H5FSpublic.h
- H5HFpublic.h
- H5HGpublic.h
- H5HLpublic.h
-
- They were only installed in CMake builds.
-
- (DER - 2018/10/26, HDFFV-10614)
-
-
- Parallel Library:
- -----------------
- - Changed the default behavior in parallel when reading the same dataset in its entirety
- (i.e. H5S_ALL dataset selection) which is being read by all the processes collectively.
- The dataset must be contiguous, less than 2GB, and of an atomic datatype.
- The new behavior is the HDF5 library will use an MPI_Bcast to pass the data read from
- the disk by the root process to the remain processes in the MPI communicator associated
- with the HDF5 file.
-
- (MSB - 2019/01/02, HDFFV-10652)
-
- - All MPI-1 API calls have been replaced with MPI-2 equivalents.
-
- This was done to better support OpenMPI, as default builds no longer
- include MPI-1 support (as of OpenMPI 4.0).
-
- (DER - 2018/12/30, HDFFV-10566)
-
- Fortran Library:
- ----------------
- - Added wrappers for dataset object header minimization calls.
- (see the note for TRILAB-45, above)
-
- New API calls:
-
- h5fget_dset_no_attrs_hint_f
- h5fset_dset_no_attrs_hint_f
- h5pget_dset_no_attrs_hint_f
- h5pset_dset_no_attrs_hint_f
-
- (DER - 2019/01/09, TRILAB-45)
-
- - Added new Fortran derived type, c_h5o_info_t, which is interoperable with
- C's h5o_info_t. This is needed for callback functions which
- pass C's h5o_info_t data type definition.
-
- (MSB, 2019/01/08, HDFFV-10443)
-
- - Added new Fortran API, H5gmtime, which converts (C) 'time_t' structure
- to Fortran DATE AND TIME storage format.
-
- (MSB, 2019/01/08, HDFFV-10443)
-
- - Added new Fortran 'fields' optional parameter to: h5ovisit_f, h5oget_info_by_name_f,
- h5oget_info, h5oget_info_by_idx and h5ovisit_by_name_f.
-
- (MSB, 2019/01/08, HDFFV-10443)
-
- C++ Library:
- ------------
- - Added new function to the C++ interface
-
- Added wrapper for H5Ovisit2:
- H5Object::visit()
-
- (BMR - 2019/02/14, HDFFV-10532)
-
-
- Java Library:
- ----------------
- - Rewrote the JNI error handling to be much cleaner
-
- (JTH - 2019/02/12)
-
- - Add new functions to java interface
-
- Added wrappers for:
- H5Fset_libver_bounds
- H5Fget_dset_no_attrs_hint/H5Fset_dset_no_attrs_hint
- H5Pget_dset_no_attrs_hint/H5Pset_dset_no_attrs_hint
-
- (ADB - 2019/01/07, HDFFV-10664)
-
- - Fix java unit tests when Time is a natural number
-
- Time substitution in java/test/junit.sh.in doesn't
- handle the case when Time is a natural number. Fixed
- the regular expression.
-
- (ADB - 2019/01/07, HDFFV-10674)
-
- - Duplicate the data read/write functions of Datasets for Attributes.
-
- Region references could not be displayed for attributes as they could
- for datasets. Datasets had overloaded read and write functions for different
- datatypes that were not available for attributes. After adding similar
- functions, attribute region references work normally.
-
- (ADB - 2018/12/12, HDFVIEW-4)
-
-
- Tools:
- ------
- - The h5repart -family-to-sec2 argument was changed to -family-to-single
-
- In order to better support other single-file VFDs which could work with
- h5repart, the -family-to-sec2 argument was renamed to -family-to-single.
- This is just a name change and the functionality of the argument has not
- changed.
-
- The -family-to-sec2 argument has been kept for backwards-compatibility.
- This argument should be considered deprecated.
-
- (DER - 2018/11/14, HDFFV-10633)
-
-
-Bug Fixes since HDF5-1.10.4 release
-==================================
-
- Library
- -------
- - Fix hangs with collective metadata reads during chunked dataset I/O
-
- In the parallel library, it was discovered that when a particular
- sequence of operations following a pattern of:
-
- "write to chunked dataset" -> "flush file" -> "read from dataset"
-
- occurred with collective metadata reads enabled, hangs could be
- observed due to certain MPI ranks not participating in the collective
- metadata reads.
-
- To fix the issue, collective metadata reads are now disabled during
- chunked dataset raw data I/O.
-
- (JTH - 2019/02/11, HDFFV-10563, HDFFV-10688)
-
- - Performance issue when closing an object
-
- The slow down is due to the search of the "tag_list" to find
- out the "corked" status of an object and "uncork" it if so.
-
- Improve performance by skipping the search of the "tag_list"
- if there are no "corked" objects when closing an object.
-
- (VC - 2019/02/06)
-
- - Uninitialized bytes from a type conversion buffer could be written
- to disk in H5Dwrite calls where type conversion takes place
- and the type conversion buffer was created by the HDF5 library.
-
- When H5Dwrite is called and datatype conversion must be performed,
- the library will create a temporary buffer for type conversion if
- one is not provided by the user via H5Pset_buffer. This internal
- buffer is allocated via malloc and contains uninitialized data. In
- some datatype conversions (float to long double, possibly others),
- some of this uninitialized data could be written to disk.
-
- This was flagged by valgrind in the dtransform test and does not
- appear to be a common occurrence (it is flagged in one test out
- of the entire HDF5 test suite).
-
- Switching to calloc fixed the problem.
-
- (DER - 2019/02/03, HDFFV-10694)
-
- - There was missing protection against division by zero reported to
- The HDF Group as issue #CVE-2018-17434.
-
- Protection against division by zero was added to address the issue
- #CVE-2018-17434.
-
- (BMR - 2019/01/29, HDFFV-10586)
-
- - The issue CVE-2018-17437 was reported to The HDF Group
-
- Although CVE-2018-17437 reported a memory leak, the actual issue
- was invalid read. It was found that the attribute name length
- in an attribute message was corrupted, which caused the buffer
- pointer to be advanced too far and later caused an invalid read.
-
- A check was added to detect when the attribute name or its length
- was corrupted and report the potential of data corruption.
-
- (BMR - 2019/01/29, HDFFV-10588)
-
- - H5Ewalk did not stop when it was supposed to
-
- H5Ewalk was supposed to stop when the callback function stopped
- even though the errors in the stack were not all visited, but it
- did not. This problem is now fixed.
-
- (BMR - 2019/01/29, HDFFV-10684)
-
- - Revert H5Oget_info* and H5Ovisit* functions
-
- In 1.10.3 new H5Oget_info*2 and H5Ovisit*2 functions were
- added for performance. Inadvertently, the original functions;
- H5Oget_info,
- H5Oget_info_by_name,
- H5Oget_info_by_idx,
- H5Ovisit,
- H5Ovisit_by_name
- were versioned to H5Oget_info*1 and H5Ovisit*1. This
- broke the API compatibility for a maintenance release. The
- original functions have been restored.
-
- (ADB - 2019/01/24, HDFFV-10686)
-
- - Fixed a potential invalid memory access and failure that could occur when
- decoding an unknown object header message (from a future version of the
- library).
-
- (NAF - 2019/01/07)
-
- - Deleting attributes in dense storage
-
- The library aborts with "infinite loop closing library" after
- attributes in dense storage are created and then deleted.
-
- When deleting the attribute nodes from the name index v2 B-tree,
- if an attribute is found in the intermediate B-tree nodes,
- which may be merged/redistributed in the process, we need to
- free the dynamically allocated spaces for the intermediate
- decoded attribute.
-
- (VC - 2018/12/26, HDFFV-10659)
-
- - There was missing protection against division by zero reported to
- The HDF Group as issue #CVE-2018-17233.
-
- Protection against division by zero was added to address the issue
- #CVE-2018-17233. In addition, several similar occurrences in the same
- file were fixed as well.
-
- (BMR - 2018/12/23, HDFFV-10577)
-
- - Fixed an issue where the parallel filters tests would fail
- if zlib was not available on the system. Until support can
- be added in the tests for filters beyond gzip/zlib, the tests
- will be skipped if zlib is not available.
-
- (JTH - 2018/12/05)
-
- - A bug was discovered in the parallel library where an application
- would eventually consume all of the available MPI communicators
- when continually writing to a compressed dataset in parallel. This
- was due to internal copies of an HDF5 File Access Property List,
- which each contained a copy of the MPI communicator, not being
- closed at the end of each write operation. This problem was
- exacerbated by larger numbers of processors.
-
- (JTH - 2018/12/05, HDFFV-10629)
-
-
- Fortran
- --------
- - Fixed issue with Fortran not returning h5o_info_t field values
- meta_size%attr%index_size and meta_size%attr%heap_size.
-
- (MSB, 2019/01/08, HDFFV-10443)
-
- - Added symbolic links libhdf5_hl_fortran.so to libhdf5hl_fortran.so and
- libhdf5_hl_fortran.a to libhdf5hl_fortran.a in hdf5/lib directory for
- autotools installs. These were added to match the name of the files
- installed by cmake and the general pattern of hl lib files. We will
- change the names of the installed lib files to the matching name in
- the next major release.
-
- (LRK - 2019/01/04, HDFFV-10596)
-
- - Made Fortran specific subroutines PRIVATE in generic procedures.
-
- Affected generic procedures were functions in H5A, H5D, H5P, H5R and H5T.
-
- (MSB, 2018/12/04, HDFFV-10511)
-
-
- Testing
- -------
- - Fixed a test failure in testpar/t_dset.c caused by
- the test trying to use the parallel filters feature
- on MPI-2 implementations.
-
- (JTH, 2019/2/7)
-
-
-Supported Platforms
-===================
-
- Linux 2.6.32-696.16.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-327.10.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Version 4.9.3, Version 5.2.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.0.098 Build 20160721
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 7 x64 Visual Studio 2013
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Visual Studio 2015 w/ Intel C, Fortran 2018 (cmake)
- Visual Studio 2015 w/ MSMPI 8 (cmake)
-
- Windows 10 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
-
- Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
- Visual Studio 2017 w/ Intel Fortran 18 (cmake)
-
- Mac OS X Yosemite 10.10.5 Apple clang/clang++ version 6.1 from Xcode 7.0
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X El Capitan 10.11.6 Apple clang/clang++ version 7.3.0 from Xcode 7.3
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1011dev/osx1011test) Intel icc/icpc/ifort version 16.0.2
-
- MacOS High Sierra 10.13.6 Apple LLVM version 10.0.0 (clang/clang++-1000.10.44.4)
- 64-bit gfortran GNU Fortran (GCC) 8.3.0
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-Solaris2.11 32-bit n y/y n y y y
-Solaris2.11 64-bit n y/n n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y y y y y
-Windows 7 Cygwin n y/n n y y y
-Windows 7 x64 Cygwin n y/n n y y y
-Windows 10 y y/y n y y y
-Windows 10 x64 y y/y n y y y
-Mac OS X Yosemite 10.10.5 64-bit n y/y n y y y
-Mac OS X El Capitan 10.11.6 64-bit n y/y n y y y
-MacOS High Sierra 10.13.6 64-bit n y/y n y y y
-CentOS 7.2 Linux 3.10.0 x86_64 PGI n y/y n y y y
-CentOS 7.2 Linux 3.10.0 x86_64 GNU y y/y y y y y
-CentOS 7.2 Linux 3.10.0 x86_64 Intel n y/y n y y y
-Linux 2.6.32-573.18.1.el6.ppc64 n y/y n y y y
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.11 32-bit y y y y
-Solaris2.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 7 x64 Cygwin n n n y
-Windows 10 y y y y
-Windows 10 x64 y y y y
-Mac OS X Yosemite 10.10.5 64-bit y y y y
-Mac OS X El Capitan 10.11.6 64-bit y y y y
-MacOS High Sierra 10.13.6 64-bit y y y y
-CentOS 7.2 Linux 3.10.0 x86_64 PGI y y y n
-CentOS 7.2 Linux 3.10.0 x86_64 GNU y y y y
-CentOS 7.2 Linux 3.10.0 x86_64 Intel y y y n
-Linux 2.6.32-573.18.1.el6.ppc64 y y y n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following configurations are not supported but have been tested for this release.
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (mayll/platypus) Version 4.4.7 20120313
- Version 4.9.3, 5.3.0, 6.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 17.10-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.4.196 Build 20170411
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- Linux 3.10.0-327.18.2.el7 GNU C (gcc) and C++ (g++) compilers
- #1 SMP x86_64 GNU/Linux Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- (jelly) with NAG Fortran Compiler Release 6.1(Tozai)
- GCC Version 7.1.0
- MPICH 3.2-GCC-4.9.3
- MPICH 3.2.1-GCC-7.2.0-2.29
- OpenMPI 2.1.5-GCC-7.2.0-2.29
- Intel(R) C (icc) and C++ (icpc) compilers
- Version 17.0.0.098 Build 20160721
- with NAG Fortran Compiler Release 6.1(Tozai)
-
- Linux 3.10.0-327.10.1.el7 MPICH 3.2 compiled with GCC 5.3.0
- #1 SMP x86_64 GNU/Linux
- (moohan)
-
- Fedora 29 4.20.10-200.fc29.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc, g++ (GCC) 8.2.1 20181215
- (Red Hat 8.2.1-6)
- GNU Fortran (GCC) 8.2.1 20181215
- (Red Hat 8.2.1-6)
- (cmake and autotools)
-
- Windows 7 x64 Visual Studio 2008
-
-
-Known Problems
-==============
-
- At present, metadata cache images may not be generated by parallel
- applications. Parallel applications can read files with metadata cache
- images, but since this is a collective operation, a deadlock is possible
- if one or more processes do not participate.
-
- Three tests fail with OpenMPI 3.0.0/GCC-7.2.0-2.29:
- testphdf5 (ecdsetw, selnone, cchunk1, cchunk3, cchunk4, and actualio)
- t_shapesame (sscontig2)
- t_pflush1/fails on exit
- The first two tests fail attempting collective writes.
-
- CPP ptable test fails on VS2017 with Intel compiler, JIRA issue: HDFFV-10628.
- This test will pass with VS2015 with Intel compiler.
-
- Older MPI libraries such as OpenMPI 2.0.1 and MPICH 2.1.5 were tested
- while attempting to resolve the Jira issue: HDFFV-10540.
- The known problems of reading or writing > 2GBs when using MPI-2 was
- partially resolved with the MPICH library. The proposed support recognizes
- IO operations > 2GB and if the datatype is not a derived type, the library
- breaks the IO into chunks which can be input or output with the existing
- MPI 2 limitations, i.e. size reporting and function API size/count
- arguments are restricted to be 32 bit integers. For derived types larger
- than 2GB, MPICH 2.1.5 fails while attempting to read or write data.
- OpenMPI in contrast, implements MPI-3 APIs even in the older releases
- and thus does not suffer from the 32 bit size limitation described here.
- OpenMPI releases prior to v3.1.3 appear to have other datatype issues however,
- e.g. within a single parallel test (testphdf5) the subtests (cdsetr, eidsetr)
- report data verification errors before eventually aborting.
- The most recent versions of OpenMPI (v3.1.3 or newer) have evidently
- resolved these issues and parallel HDF5 testing does not currently report
- errors though occasional hangs have been observed.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-CMake vs. Autotools installations
-=================================
-While both build systems produce similar results, there are differences.
-Each system produces the same set of folders on linux (only CMake works
-on standard Windows); bin, include, lib and share. Autotools places the
-COPYING and RELEASE.txt file in the root folder, CMake places them in
-the share folder.
-
-The bin folder contains the tools and the build scripts. Additionally, CMake
-creates dynamic versions of the tools with the suffix "-shared". Autotools
-installs one set of tools depending on the "--enable-shared" configuration
-option.
- build scripts
- -------------
- Autotools: h5c++, h5cc, h5fc
- CMake: h5c++, h5cc, h5hlc++, h5hlcc
-
-The include folder holds the header files and the fortran mod files. CMake
-places the fortran mod files into separate shared and static subfolders,
-while Autotools places one set of mod files into the include folder. Because
-CMake produces a tools library, the header files for tools will appear in
-the include folder.
-
-The lib folder contains the library files, and CMake adds the pkgconfig
-subfolder with the hdf5*.pc files used by the bin/build scripts created by
-the CMake build. CMake separates the C interface code from the fortran code by
-creating C-stub libraries for each Fortran library. In addition, only CMake
-installs the tools library. The names of the szip libraries are different
-between the build systems.
-
-The share folder will have the most differences because CMake builds include
-a number of CMake specific files for support of CMake's find_package and support
-for the HDF5 Examples CMake project.
-
-%%%%1.10.4%%%%
-
-HDF5 version 1.10.4 released on 2018-10-05
-================================================================================
-
-
-INTRODUCTION
-
-This document describes the differences between this release and the previous
-HDF5 release. It contains information on the platforms tested and known
-problems in this release. For more details check the HISTORY*.txt files in the
-HDF5 source.
-
-Note that documentation in the links below will be updated at the time of each
-final release.
-
-Links to HDF5 documentation can be found on The HDF5 web page:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5
-
-The official HDF5 releases can be obtained from:
-
- https://www.hdfgroup.org/downloads/hdf5/
-
-Changes from Release to Release and New Features in the HDF5-1.10.x release series
-can be found at:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5+Application+Developer%27s+Guide
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-
-- Bug Fixes since HDF5-1.10.3
-- Supported Platforms
-- Tested Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-- CMake vs. Autotools installations
-
-
-New Features
-============
-
- Configuration:
- -------------
- - Add toolchain and cross-compile support
-
- Added info on using a toolchain file to INSTALL_CMAKE.txt. A
- toolchain file is also used in cross-compiling, which requires
- CMAKE_CROSSCOMPILING_EMULATOR to be set. To help with cross-compiling
- the fortran configure process, the HDF5UseFortran.cmake file macros
- were improved. Fixed a Fortran configure file issue that incorrectly
- used #cmakedefine instead of #define.
-
- (ADB - 2018/10/04, HDFFV-10594)
-
- - Add warning flags for Intel compilers
-
- Identified Intel compiler specific warnings flags that should be used
- instead of GNU flags.
-
- (ADB - 2018/10/04, TRILABS-21)
-
- - Add default rpath to targets
-
- Default rpaths should be set in shared executables and
- libraries to allow the use of loading dependent libraries
- without requiring LD_LIBRARY_PATH to be set. The default
- path should be relative using @rpath on osx and $ORIGIN
- on linux. Windows is not affected.
-
- (ADB - 2018/09/26, HDFFV-10594)
-
- Library:
- --------
- - Allow pre-generated H5Tinit.c and H5make_libsettings.c to be used.
-
- Rather than always running H5detect and generating H5Tinit.c and
- H5make_libsettings.c, supply a location for those files.
-
- (ADB - 2018/09/18, HDFFV-10332)
-
-
-Bug Fixes since HDF5-1.10.3 release
-==================================
-
- Library
- -------
- - Allow H5detect and H5make_libsettings to take a file as an argument.
-
- Rather than only writing to stdout, add a command argument to name
- the file that H5detect and H5make_libsettings will use for output.
- Without an argument, stdout is still used, so backwards compatibility
- is maintained.
-
- (ADB - 2018/09/05, HDFFV-9059)
-
- - A bug was discovered in the parallel library where an application
- would hang if a collective read/write of a chunked dataset occurred
- when collective metadata reads were enabled and some of the ranks
- had no selection in the dataset's dataspace. The ranks which had no
- selection in the dataset's dataspace called H5D__chunk_addrmap() to
- retrieve the lowest chunk address in the dataset. This is because we
- require reads/writes to be performed in strictly non-decreasing order
- of chunk address in the file.
-
- When the chunk index used was a version 1 or 2 B-tree, these
- non-participating ranks would issue a collective MPI_Bcast() call
- that the participating ranks would not issue, causing the hang. Since
- the non-participating ranks are not actually reading/writing anything,
- the H5D__chunk_addrmap() call can be safely removed and the address used
- for the read/write can be set to an arbitrary number (0 was chosen).
-
- (JTH - 2018/08/25, HDFFV-10501)
-
- Java Library:
- ----------------
- - JNI native library dependencies
-
- The build for the hdf5_java native library used the wrong
- hdf5 target library for CMake builds. Correcting the hdf5_java
- library to build with the shared hdf5 library required testing
- paths to change also.
-
- (ADB - 2018/08/31, HDFFV-10568)
-
- - Java iterator callbacks
-
- Change global callback object to a small stack structure in order
- to fix a runtime crash. This crash was discovered when iterating
- through a file with nested group members. The global variable
- visit_callback is overwritten when recursion starts. When recursion
- completes, visit_callback will be pointing to the wrong callback method.
-
- (ADB - 2018/08/15, HDFFV-10536)
-
- - Java HDFLibraryException class
-
- Change parent class from Exception to RuntimeException.
-
- (ADB - 2018/07/30, HDFFV-10534)
-
- - JNI Read and Write
-
- Refactored variable-length functions, H5DreadVL and H5AreadVL,
- to correct dataset and attribute reads. New write functions,
- H5DwriteVL and H5AwriteVL, are under construction.
-
- (ADB - 2018/06/02, HDFFV-10519)
-
-
-Supported Platforms
-===================
-
- Linux 2.6.32-696.16.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-327.10.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Version 4.9.3, Version 5.2.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.0.098 Build 20160721
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Visual Studio 2015 w/ Intel C, Fortran 2017 (cmake)
- Visual Studio 2015 w/ MSMPI 8 (cmake)
-
- Windows 10 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
-
- Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
- Visual Studio 2017 w/ Intel Fortran 18 (cmake)
-
- Mac OS X Yosemite 10.10.5 Apple clang/clang++ version 6.1 from Xcode 7.0
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X El Capitan 10.11.6 Apple clang/clang++ version 7.3.0 from Xcode 7.3
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1011dev/osx1011test) Intel icc/icpc/ifort version 16.0.2
-
- Mac OS Sierra 10.12.6 Apple LLVM version 8.1.0 (clang/clang++-802.0.42)
- 64-bit gfortran GNU Fortran (GCC) 7.1.0
- (kite) Intel icc/icpc/ifort version 17.0.2
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-Solaris2.11 32-bit n y/y n y y y
-Solaris2.11 64-bit n y/n n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y y y y y
-Windows 7 Cygwin n y/n n y y y
-Windows 7 x64 Cygwin n y/n n y y y
-Windows 10 y y/y n y y y
-Windows 10 x64 y y/y n y y y
-Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
-Mac OS X Yosemite 10.10.5 64-bit n y/y n y y y
-Mac OS X El Capitan 10.11.6 64-bit n y/y n y y y
-Mac OS Sierra 10.12.6 64-bit n y/y n y y y
-CentOS 7.2 Linux 3.10.0 x86_64 PGI n y/y n y y y
-CentOS 7.2 Linux 3.10.0 x86_64 GNU y y/y y y y y
-CentOS 7.2 Linux 3.10.0 x86_64 Intel n y/y n y y y
-Linux 2.6.32-573.18.1.el6.ppc64 n y/y n y y y
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.11 32-bit y y y y
-Solaris2.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 7 x64 Cygwin n n n y
-Windows 10 y y y y
-Windows 10 x64 y y y y
-Mac OS X Mavericks 10.9.5 64-bit y n y y
-Mac OS X Yosemite 10.10.5 64-bit y n y y
-Mac OS X El Capitan 10.11.6 64-bit y n y y
-Mac OS Sierra 10.12.6 64-bit y n y y
-CentOS 7.2 Linux 3.10.0 x86_64 PGI y y y n
-CentOS 7.2 Linux 3.10.0 x86_64 GNU y y y y
-CentOS 7.2 Linux 3.10.0 x86_64 Intel y y y n
-Linux 2.6.32-573.18.1.el6.ppc64 y y y n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (mayll/platypus) Version 4.4.7 20120313
- Version 4.9.3, 5.3.0, 6.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 17.10-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.4.196 Build 20170411
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- Linux 3.10.0-327.18.2.el7 GNU C (gcc) and C++ (g++) compilers
- #1 SMP x86_64 GNU/Linux Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- (jelly) with NAG Fortran Compiler Release 6.1(Tozai)
- GCC Version 7.1.0
- OpenMPI 3.0.0-GCC-7.2.0-2.29,
- 3.1.0-GCC-7.2.0-2.29
- Intel(R) C (icc) and C++ (icpc) compilers
- Version 17.0.0.098 Build 20160721
- with NAG Fortran Compiler Release 6.1(Tozai)
-
- Linux 3.10.0-327.10.1.el7 MPICH 3.2 compiled with GCC 5.3.0
- #1 SMP x86_64 GNU/Linux
- (moohan)
-
- Linux 2.6.32-573.18.1.el6.ppc64 MPICH mpich 3.1.4 compiled with
- #1 SMP ppc64 GNU/Linux IBM XL C/C++ for Linux, V13.1
- (ostrich) and IBM XL Fortran for Linux, V15.1
-
- Debian 8.4 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1 x86_64 GNU/Linux
- gcc, g++ (Debian 4.9.2-10) 4.9.2
- GNU Fortran (Debian 4.9.2-10) 4.9.2
- (cmake and autotools)
-
- Fedora 24 4.7.2-201.fc24.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc, g++ (GCC) 6.1.1 20160621
- (Red Hat 6.1.1-3)
- GNU Fortran (GCC) 6.1.1 20160621
- (Red Hat 6.1.1-3)
- (cmake and autotools)
-
- Ubuntu 16.04.1 4.4.0-38-generic #57-Ubuntu SMP x86_64 GNU/Linux
- gcc, g++ (Ubuntu 5.4.0-6ubuntu1~16.04.2)
- 5.4.0 20160609
- GNU Fortran (Ubuntu 5.4.0-6ubuntu1~16.04.2)
- 5.4.0 20160609
- (cmake and autotools)
-
-
-Known Problems
-==============
-
- At present, metadata cache images may not be generated by parallel
- applications. Parallel applications can read files with metadata cache
- images, but since this is a collective operation, a deadlock is possible
- if one or more processes do not participate.
-
- Three tests fail with OpenMPI 3.0.0/GCC-7.2.0-2.29:
- testphdf5 (ecdsetw, selnone, cchunk1, cchunk3, cchunk4, and actualio)
- t_shapesame (sscontig2)
- t_pflush1/fails on exit
- The first two tests fail attempting collective writes.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-CMake vs. Autotools installations
-=================================
-While both build systems produce similar results, there are differences.
-Each system produces the same set of folders on linux (only CMake works
-on standard Windows); bin, include, lib and share. Autotools places the
-COPYING and RELEASE.txt file in the root folder, CMake places them in
-the share folder.
-
-The bin folder contains the tools and the build scripts. Additionally, CMake
-creates dynamic versions of the tools with the suffix "-shared". Autotools
-installs one set of tools depending on the "--enable-shared" configuration
-option.
- build scripts
- -------------
- Autotools: h5c++, h5cc, h5fc
- CMake: h5c++, h5cc, h5hlc++, h5hlcc
-
-The include folder holds the header files and the fortran mod files. CMake
-places the fortran mod files into separate shared and static subfolders,
-while Autotools places one set of mod files into the include folder. Because
-CMake produces a tools library, the header files for tools will appear in
-the include folder.
-
-The lib folder contains the library files, and CMake adds the pkgconfig
-subfolder with the hdf5*.pc files used by the bin/build scripts created by
-the CMake build. CMake separates the C interface code from the fortran code by
-creating C-stub libraries for each Fortran library. In addition, only CMake
-installs the tools library. The names of the szip libraries are different
-between the build systems.
-
-The share folder will have the most differences because CMake builds include
-a number of CMake specific files for support of CMake's find_package and support
-for the HDF5 Examples CMake project.
-
-%%%%1.10.3%%%%
-
-HDF5 version 1.10.3 released on 2018-08-21
-================================================================================
-
-
-INTRODUCTION
-
-This document describes the differences between this release and the previous
-HDF5 release. It contains information on the platforms tested and known
-problems in this release. For more details check the HISTORY*.txt files in the
-HDF5 source.
-
-Note that documentation in the links below will be updated at the time of each
-final release.
-
-Links to HDF5 documentation can be found on The HDF5 web page:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5
-
-The official HDF5 releases can be obtained from:
-
- https://www.hdfgroup.org/downloads/hdf5/
-
-Changes from Release to Release and New Features in the HDF5-1.10.x release series
-can be found at:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5+Application+Developer%27s+Guide
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-
-- New Features
-- Bug Fixes since HDF5-1.10.2
-- Supported Platforms
-- Tested Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-- CMake vs. Autotools installations
-
-
-New Features
-============
-
- Library
- -------
- - Moved the H5DOread/write_chunk() API calls to H5Dread/write_chunk()
-
- The functionality of the direct chunk I/O calls in the high-level
- library has been moved to the H5D package in the main library. This
- will allow using those functions without building the high-level
- library. The parameters and functionality of the H5D calls are
- identical to the H5DO calls.
-
- The original H5DO high-level API calls have been retained, though
- they are now just wrappers for the H5D calls. They are marked as
- deprecated and are only available when the library is built with
- deprecated functions. New code should use the H5D calls for this
- reason.
-
- As a part of this work, the following symbols from H5Dpublic.h are no
- longer used:
-
- H5D_XFER_DIRECT_CHUNK_WRITE_FLAG_NAME
- H5D_XFER_DIRECT_CHUNK_WRITE_FILTERS_NAME
- H5D_XFER_DIRECT_CHUNK_WRITE_OFFSET_NAME
- H5D_XFER_DIRECT_CHUNK_WRITE_DATASIZE_NAME
- H5D_XFER_DIRECT_CHUNK_READ_FLAG_NAME
- H5D_XFER_DIRECT_CHUNK_READ_OFFSET_NAME
- H5D_XFER_DIRECT_CHUNK_READ_FILTERS_NAME
-
- And properties with these names are no longer stored in the dataset
- transfer property lists. The symbols are still defined in H5Dpublic.h,
- but only when the library is built with deprecated symbols.
-
- (DER - 2018/05/04)
-
- Configuration:
- -------------
- - Add missing USE_110_API_DEFAULT option.
-
- Option USE_110_API_DEFAULT sets the default version of
- versioned APIs. The bin/makevers perl script did not set
- the maxidx variable correctly when the 1.10 branch was
- created. This caused the versioning process to always use
- the latest version of any API.
-
- (ADB - 2018/08/17, HDFFV-10552)
-
- - Added configuration checks for the following MPI functions:
-
- MPI_Mprobe - Used for the Parallel Compression feature
- MPI_Imrecv - Used for the Parallel Compression feature
-
- MPI_Get_elements_x - Used for the "big Parallel I/O" feature
- MPI_Type_size_x - Used for the "big Parallel I/O" feature
-
- (JTH - 2018/08/02, HDFFV-10512)
-
- - Added section to the libhdf5.settings file to indicate
- the status of the Parallel Compression and "big Parallel I/O"
- features.
-
- (JTH - 2018/08/02, HDFFV-10512)
-
- - Add option to execute swmr shell scripts from CMake.
-
- Option TEST_SHELL_SCRIPTS redirects processing into a
- separate ShellTests.cmake file for UNIX types. The tests
- execute the shell scripts if a SH program is found.
-
- (ADB - 2018/07/16)
-
-
- C++ Library:
- ------------
- - New wrappers
-
- Added the following items:
-
- + Class DSetAccPropList for the dataset access property list.
-
- + Wrapper for H5Dget_access_plist to class DataSet
- // Gets the access property list of this dataset.
- DSetAccPropList getAccessPlist() const;
-
- + Wrappers for H5Pset_chunk_cache and H5Pget_chunk_cache to class DSetAccPropList
- // Sets the raw data chunk cache parameters.
- void setChunkCache(size_t rdcc_nslots, size_t rdcc_nbytes, double rdcc_w0)
-
- // Retrieves the raw data chunk cache parameters.
- void getChunkCache(size_t &rdcc_nslots, size_t &rdcc_nbytes, double &rdcc_w0)
-
- + New operator!= to class DataType (HDFFV-10472)
- // Determines whether two datatypes are not the same.
- bool operator!=(const DataType& compared_type)
-
- + Wrappers for H5Oget_info2, H5Oget_info_by_name2, and H5Oget_info_by_idx2
- (HDFFV-10458)
-
- // Retrieves information about an HDF5 object.
- void getObjinfo(H5O_info_t& objinfo, unsigned fields = H5O_INFO_BASIC) const;
-
- // Retrieves information about an HDF5 object, given its name.
- void getObjinfo(const char* name, H5O_info_t& objinfo,
- unsigned fields = H5O_INFO_BASIC,
- const LinkAccPropList& lapl = LinkAccPropList::DEFAULT) const;
- void getObjinfo(const H5std_string& name, H5O_info_t& objinfo,
- unsigned fields = H5O_INFO_BASIC,
- const LinkAccPropList& lapl = LinkAccPropList::DEFAULT) const;
-
- // Retrieves information about an HDF5 object, given its index.
- void getObjinfo(const char* grp_name, H5_index_t idx_type,
- H5_iter_order_t order, hsize_t idx, H5O_info_t& objinfo,
- unsigned fields = H5O_INFO_BASIC,
- const LinkAccPropList& lapl = LinkAccPropList::DEFAULT) const;
- void getObjinfo(const H5std_string& grp_name, H5_index_t idx_type,
- H5_iter_order_t order, hsize_t idx, H5O_info_t& objinfo,
- unsigned fields = H5O_INFO_BASIC,
- const LinkAccPropList& lapl = LinkAccPropList::DEFAULT) const;
-
- (BMR - 2018/07/22, HDFFV-10150, HDFFV-10458, HDFFV-1047)
-
-
- Java Library:
- ----------------
- - Java HDFLibraryException class
-
- Change parent class from Exception to RuntimeException.
-
- (ADB - 2018/07/30, HDFFV-10534)
-
- - JNI Read and Write
-
- Refactored variable-length functions, H5DreadVL and H5AreadVL,
- to correct dataset and attribute reads. New write functions,
- H5DwriteVL and H5AwriteVL, are under construction.
-
- (ADB - 2018/06/02, HDFFV-10519)
-
-
-Bug Fixes since HDF5-1.10.2 release
-==================================
-
- Library
- -------
- - Performance issue with H5Oget_info
-
- H5Oget_info family of routines retrieves information for an object such
- as object type, access time, number of attributes, and storage space etc.
- Retrieving all such information regardless is an overkill and causes
- performance issue when doing so for many objects.
-
- Add an additional parameter "fields" to the the H5Oget_info family of routines
- indicating the type of information to be retrieved. The same is done to
- the H5Ovisit family of routines which recursively visits an object
- returning object information in a callback function. Both sets of routines
- are versioned and the corresponding compatibility macros are added.
-
- The version 2 names of the two sets of routines are:
- (1) H5Oget_info2, H5Oget_info_by_idx2, H5Oget_info_by_name2
- (2) H5Ovisit2, H5Ovisit_by_name2
-
- (VC - 2018/08/15, HDFFV-10180)
-
- - Test failure due to metadata size in test/vds.c
-
- The size of metadata from test_api_get_ex_dcpl() in test/vds.c is not as expected
- because the latest format should be used when encoding the layout for VDS.
-
- Set the latest format in a temporary fapl and pass the setting to the routines that
- encode the dataset selection for VDS.
-
- (VC - 2018/08/14 HDFFV-10469)
-
- - Java HDF5LibraryException class
-
- The error minor and major values would be lost after the
- constructor executed.
-
- Created two local class variables to hold the values obtained during
- execution of the constructor. Refactored the class functions to retrieve
- the class values rather then calling the native functions.
- The native functions were renamed and called only during execution
- of the constructor.
- Added error checking to calling class constructors in JNI classes.
-
- (ADB - 2018/08/06, HDFFV-10544)
-
- - Added checks of the defined MPI_VERSION to guard against usage of
- MPI-3 functions in the Parallel Compression and "big Parallel I/O"
- features when HDF5 is built with MPI-2. Previously, the configure
- step would pass but the build itself would fail when it could not
- locate the MPI-3 functions used.
-
- As a result of these new checks, HDF5 can again be built with MPI-2,
- but the Parallel Compression feature will be disabled as it relies
- on the MPI-3 functions used.
-
- (JTH - 2018/08/02, HDFFV-10512)
-
- - User's patches: CVEs
-
- The following patches have been applied:
-
- CVE-2018-11202 - NULL pointer dereference was discovered in
- H5S_hyper_make_spans in H5Shyper.c (HDFFV-10476)
- https://security-tracker.debian.org/tracker/CVE-2018-11202
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=3DCVE-2018-11202
-
- CVE-2018-11203 - A division by zero was discovered in
- H5D__btree_decode_key in H5Dbtree.c (HDFFV-10477)
- https://security-tracker.debian.org/tracker/CVE-2018-11203
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=3DCVE-2018-11203
-
- CVE-2018-11204 - A NULL pointer dereference was discovered in
- H5O__chunk_deserialize in H5Ocache.c (HDFFV-10478)
- https://security-tracker.debian.org/tracker/CVE-2018-11204
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=3DCVE-2018-11204
-
- CVE-2018-11206 - An out of bound read was discovered in
- H5O_fill_new_decode and H5O_fill_old_decode in H5Ofill.c
- (HDFFV-10480)
- https://security-tracker.debian.org/tracker/CVE-2018-11206
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=3DCVE-2018-11206
-
- CVE-2018-11207 - A division by zero was discovered in
- H5D__chunk_init in H5Dchunk.c (HDFFV-10481)
- https://security-tracker.debian.org/tracker/CVE-2018-11207
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=3DCVE-2018-11207
-
- (BMR - 2018/7/22, PR#s: 1134 and 1139,
- HDFFV-10476, HDFFV-10477, HDFFV-10478, HDFFV-10480, HDFFV-10481)
-
- - H5Adelete
-
- H5Adelete failed when deleting the last "large" attribute that
- is stored densely via fractal heap/v2 b-tree.
-
- After removing the attribute, update the ainfo message. If the
- number of attributes goes to zero, remove the message.
-
- (VC - 2018/07/20, HDFFV-9277)
-
- - A bug was discovered in the parallel library which caused partial
- parallel reads of filtered datasets to return incorrect data. The
- library used the incorrect dataspace for each chunk read, causing
- the selection used in each chunk to be wrong.
-
- The bug was not caught during testing because all of the current
- tests which do parallel reads of filtered data read all of the data
- using an H5S_ALL selection. Several tests were added which exercise
- partial parallel reads.
-
- (JTH - 2018/07/16, HDFFV-10467)
-
- - A bug was discovered in the parallel library which caused parallel
- writes of filtered datasets to trigger an assertion failure in the
- file free space manager.
-
- This occurred when the filter used caused chunks to repeatedly shrink
- and grow over the course of several dataset writes. The previous chunk
- information, such as the size of the chunk and the offset in the file,
- was being cached and not updated after each write, causing the next write
- to the chunk to retrieve the incorrect cached information and run into
- issues when reallocating space in the file for the chunk.
-
- (JTH - 2018/07/16, HDFFV-10509)
-
- - A bug was discovered in the parallel library which caused the
- H5D__mpio_array_gatherv() function to allocate too much memory.
-
- When the function is called with the 'allgather' parameter set
- to a non-true value, the function will receive data from all MPI
- ranks and gather it to the single rank specified by the 'root'
- parameter. However, the bug in the function caused memory for
- the received data to be allocated on all MPI ranks, not just the
- singular rank specified as the receiver. In some circumstances,
- this would cause an application to fail due to the large amounts
- of memory being allocated.
-
- (JTH - 2018/07/16, HDFFV-10467)
-
- - Error checks in h5stat and when decoding messages
-
- h5stat exited with seg fault/core dumped when
- errors are encountered in the internal library.
-
- Add error checks and --enable-error-stack option to h5stat.
- Add range checks when decoding messages: old fill value, old
- layout and refcount.
-
- (VC - 2018/07/11, HDFFV-10333)
-
- - If an HDF5 file contains a malformed compound datatype with a
- suitably large offset, the type conversion code can run off
- the end of the type conversion buffer, causing a segmentation
- fault.
-
- This issue was reported to The HDF Group as issue #CVE-2017-17507.
-
- NOTE: The HDF5 C library cannot produce such a file. This condition
- should only occur in a corrupt (or deliberately altered) file
- or a file created by third-party software.
-
- THE HDF GROUP WILL NOT FIX THIS BUG AT THIS TIME
-
- Fixing this problem would involve updating the publicly visible
- H5T_conv_t function pointer typedef and versioning the API calls
- which use it. We normally only modify the public API during
- major releases, so this bug will not be fixed at this time.
-
- (DER - 2018/02/26, HDFFV-10356)
-
-
- Configuration
- -------------
- - Applied patches to address Cywin build issues
-
- There were three issues for Cygwin builds:
- - Shared libs were not built.
- - The -std=c99 flag caused a SIG_SETMASK undeclared error.
- - Undefined errors when buildbing test shared libraries.
-
- Patches to address these issues were received and incorporated in this version.
-
- (LRK - 2018/07/18, HDFFV-10475)
-
- - The --enable-debug/production configure flags are listed as 'deprecated'
- when they should really be listed as 'removed'.
-
- In the autotools overhaul several years ago, we removed these flags and
- implemented a new --enable-build-mode= flag. This was done because we
- changed the semantics of the modes and didn't want users to silently
- be exposed to them. The newer system is also more flexible and us to
- add other modes (like 'clean').
-
- The --enable-debug/production flags are now listed as removed.
-
- (DER - 2018/05/31, HDFFV-10505)
-
- - Moved the location of gcc attribute.
-
- The gcc attribute(no_sanitize), named as the macro HDF_NO_UBSAN,
- was located after the function name. Builds with GCC 7 did not
- indicate any problem, but GCC 8 issued errors. Moved the
- attribute before the function name, as required.
-
- (ADB - 2018/05/22, HDFFV-10473)
-
- - Reworked java test suite into individual JUnit tests.
-
- Testing the whole suite of java unit tests in a single JUnit run
- made it difficult to determine actual failures when tests would fail.
- Running each file set of tests individually, allows individual failures
- to be diagnosed easier. A side benefit is that tests for optional components
- of the library can be disabled if not configured.
-
- (ADB - 2018/05/16, HDFFV-9739)
-
- - Converted CMake global commands ADD_DEFINITIONS and INCLUDE_DIRECTORIES
- to use target_* type commands. This change modernizes the CMake usage
- in the HDF5 library.
-
- In addition, there is the intention to convert to generator expressions,
- where possible. The exception is Fortran FLAGS on Windows Visual Studio.
- The HDF macros TARGET_C_PROPERTIES and TARGET_FORTRAN_PROPERTIES have
- been removed with this change in usage.
-
- The additional language (C++ and Fortran) checks have also been localized
- to only be checked when that language is enabled.
-
- (ADB - 2018/05/08)
-
-
- Performance
- -------------
- - Revamped internal use of DXPLs, improving performance
-
- (QAK - 2018/05/20)
-
-
- Fortran
- --------
- - Fixed issue with h5fget_obj_count_f and using a file id of H5F_OBJ_ALL_F not
- returning the correct count.
-
- (MSB - 2018/5/15, HDFFV-10405)
-
-
- C++ APIs
- --------
- - Adding default arguments to existing functions
-
- Added the following items:
- + Two more property list arguments are added to H5Location::createDataSet:
- const DSetAccPropList& dapl = DSetAccPropList::DEFAULT
- const LinkCreatPropList& lcpl = LinkCreatPropList::DEFAULT
-
- + One more property list argument is added to H5Location::openDataSet:
- const DSetAccPropList& dapl = DSetAccPropList::DEFAULT
-
- (BMR - 2018/07/21, PR# 1146)
-
- - Improvement C++ documentation
-
- Replaced the table in main page of the C++ documentation from mht to htm format
- for portability.
-
- (BMR - 2018/07/17, PR# 1141)
-
-
-Supported Platforms
-===================
-
- Linux 2.6.32-696.16.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-327.10.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Version 4.9.3, Version 5.2.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.0.098 Build 20160721
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Visual Studio 2015 w/ Intel C, Fortran 2017 (cmake)
- Visual Studio 2015 w/ MSMPI 8 (cmake)
-
- Windows 10 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
-
- Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
- Visual Studio 2017 w/ Intel Fortran 18 (cmake)
-
- Mac OS X Yosemite 10.10.5 Apple clang/clang++ version 6.1 from Xcode 7.0
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X El Capitan 10.11.6 Apple clang/clang++ version 7.3.0 from Xcode 7.3
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1011dev/osx1011test) Intel icc/icpc/ifort version 16.0.2
-
- Mac OS Sierra 10.12.6 Apple LLVM version 8.1.0 (clang/clang++-802.0.42)
- 64-bit gfortran GNU Fortran (GCC) 7.1.0
- (swallow/kite) Intel icc/icpc/ifort version 17.0.2
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-Solaris2.11 32-bit n y/y n y y y
-Solaris2.11 64-bit n y/n n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y y y y y
-Windows 7 Cygwin n y/n n y y y
-Windows 7 x64 Cygwin n y/n n y y y
-Windows 10 y y/y n y y y
-Windows 10 x64 y y/y n y y y
-Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
-Mac OS X Yosemite 10.10.5 64-bit n y/y n y y y
-Mac OS X El Capitan 10.11.6 64-bit n y/y n y y y
-Mac OS Sierra 10.12.6 64-bit n y/y n y y y
-CentOS 7.2 Linux 2.6.32 x86_64 PGI n y/y n y y y
-CentOS 7.2 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 7.2 Linux 2.6.32 x86_64 Intel n y/y n y y y
-Linux 2.6.32-573.18.1.el6.ppc64 n y/y n y y y
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.11 32-bit y y y y
-Solaris2.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 7 x64 Cygwin n n n y
-Windows 10 y y y y
-Windows 10 x64 y y y y
-Mac OS X Mavericks 10.9.5 64-bit y n y y
-Mac OS X Yosemite 10.10.5 64-bit y n y y
-Mac OS X El Capitan 10.11.6 64-bit y n y y
-Mac OS Sierra 10.12.6 64-bit y n y y
-CentOS 7.2 Linux 2.6.32 x86_64 PGI y y y n
-CentOS 7.2 Linux 2.6.32 x86_64 GNU y y y y
-CentOS 7.2 Linux 2.6.32 x86_64 Intel y y y n
-Linux 2.6.32-573.18.1.el6.ppc64 y y y n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (mayll/platypus) Version 4.4.7 20120313
- Version 4.9.3, 5.3.0, 6.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 17.10-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.4.196 Build 20170411
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- Linux 3.10.0-327.18.2.el7 GNU C (gcc) and C++ (g++) compilers
- #1 SMP x86_64 GNU/Linux Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- (jelly) with NAG Fortran Compiler Release 6.1(Tozai)
- GCC Version 7.1.0
- OpenMPI 3.0.0-GCC-7.2.0-2.29,
- 3.1.0-GCC-7.2.0-2.29
- Intel(R) C (icc) and C++ (icpc) compilers
- Version 17.0.0.098 Build 20160721
- with NAG Fortran Compiler Release 6.1(Tozai)
-
- Linux 3.10.0-327.10.1.el7 MPICH 3.2 compiled with GCC 5.3.0
- #1 SMP x86_64 GNU/Linux
- (moohan)
-
- Linux 2.6.32-573.18.1.el6.ppc64 MPICH mpich 3.1.4 compiled with
- #1 SMP ppc64 GNU/Linux IBM XL C/C++ for Linux, V13.1
- (ostrich) and IBM XL Fortran for Linux, V15.1
-
- Debian 8.4 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1 x86_64 GNU/Linux
- gcc, g++ (Debian 4.9.2-10) 4.9.2
- GNU Fortran (Debian 4.9.2-10) 4.9.2
- (cmake and autotools)
-
- Fedora 24 4.7.2-201.fc24.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc, g++ (GCC) 6.1.1 20160621
- (Red Hat 6.1.1-3)
- GNU Fortran (GCC) 6.1.1 20160621
- (Red Hat 6.1.1-3)
- (cmake and autotools)
-
- Ubuntu 16.04.1 4.4.0-38-generic #57-Ubuntu SMP x86_64 GNU/Linux
- gcc, g++ (Ubuntu 5.4.0-6ubuntu1~16.04.2)
- 5.4.0 20160609
- GNU Fortran (Ubuntu 5.4.0-6ubuntu1~16.04.2)
- 5.4.0 20160609
- (cmake and autotools)
-
-
-Known Problems
-==============
-
- At present, metadata cache images may not be generated by parallel
- applications. Parallel applications can read files with metadata cache
- images, but since this is a collective operation, a deadlock is possible
- if one or more processes do not participate.
-
- Three tests fail with OpenMPI 3.0.0/GCC-7.2.0-2.29:
- testphdf5 (ecdsetw, selnone, cchunk1, cchunk3, cchunk4, and actualio)
- t_shapesame (sscontig2)
- t_pflush1/fails on exit
- The first two tests fail attempting collective writes.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-CMake vs. Autotools installations
-=================================
-While both build systems produce similar results, there are differences.
-Each system produces the same set of folders on linux (only CMake works
-on standard Windows); bin, include, lib and share. Autotools places the
-COPYING and RELEASE.txt file in the root folder, CMake places them in
-the share folder.
-
-The bin folder contains the tools and the build scripts. Additionally, CMake
-creates dynamic versions of the tools with the suffix "-shared". Autotools
-installs one set of tools depending on the "--enable-shared" configuration
-option.
- build scripts
- -------------
- Autotools: h5c++, h5cc, h5fc
- CMake: h5c++, h5cc, h5hlc++, h5hlcc
-
-The include folder holds the header files and the fortran mod files. CMake
-places the fortran mod files into separate shared and static subfolders,
-while Autotools places one set of mod files into the include folder. Because
-CMake produces a tools library, the header files for tools will appear in
-the include folder.
-
-The lib folder contains the library files, and CMake adds the pkgconfig
-subfolder with the hdf5*.pc files used by the bin/build scripts created by
-the CMake build. CMake separates the C interface code from the fortran code by
-creating C-stub libraries for each Fortran library. In addition, only CMake
-installs the tools library. The names of the szip libraries are different
-between the build systems.
-
-The share folder will have the most differences because CMake builds include
-a number of CMake specific files for support of CMake's find_package and support
-for the HDF5 Examples CMake project.
-
-
-%%%%1.10.2%%%%
-
-HDF5 version 1.10.2 released on 2018-03-29
-================================================================================
-
-
-INTRODUCTION
-
-This document describes the differences between this release and the previous
-HDF5 release. It contains information on the platforms tested and known
-problems in this release. For more details check the HISTORY*.txt files in the
-HDF5 source.
-
-Note that documentation in the links below will be updated at the time of each
-final release.
-
-Links to HDF5 documentation can be found on The HDF5 web page:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5
-
-The official HDF5 releases can be obtained from:
-
- https://www.hdfgroup.org/downloads/hdf5/
-
-Changes from Release to Release and New Features in the HDF5-1.10.x release series
-can be found at:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5+Application+Developer%27s+Guide
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.10.1
-- Supported Platforms
-- Tested Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-New Features
-============
-
- Configuration and Build Systems:
- --------------------------------
- - CMake builds
- --------------
-
- - Changed minimum CMake required version to 3.10.
-
- This change removed the need to support a copy of the FindMPI.cmake module,
- which has been removed, along with its subfolder in the config/cmake_ext_mod
- location.
-
- (ADB - 2018/03/09)
-
- - Added pkg-config file generation
-
- Added pkg-config file generation for the C, C++, HL, and HL C++ libraries.
- In addition, builds on Linux will create h5cc, h5c++, h5hlcc, and h5hlc++ scripts in the bin
- directory that use the pkg-config files. The scripts can be used to build HDF5 C and C++
- applications (i.e, similar to the compiler scripts produced by the Autotools builds).
-
- (ADB - 2018/03/08, HDFFV-4359)
-
- - Refactored use of CMAKE_BUILD_TYPE for new variable, which understands
- the type of generator in use.
-
- Added new configuration macros to use new HDF_BUILD_TYPE variable. This
- variable is set correctly for the type of generator being used for the build.
-
- (ADB - 2018/01/08, HDFFV-10385, HDFFV-10296)
-
- - Autotools builds
- ------------------
-
- - Removed version-specific gcc/gfortran flags for version 4.0 (inclusive)
- and earlier.
-
- The config/gnu-flags file, which is sourced as a part of the configure
- process, adds version-specific flags for use when building HDF5. Most of
- these flags control warnings and do not affect the final product.
-
- Flags for older versions of the compiler were consolidated into the
- common flags section. Moving these flags simplifies maintenance of
- the file.
-
- The upshot of this is that building with ancient versions of gcc
- (<= 4.0) will possibly no longer work without hand-hacking the file
- to remove the flags not understood by that version of the compiler.
- Nothing should change when building with gcc >= 4.1.
-
- (DER - 2017/05/31, HDFFV-9937)
-
- - -fno-omit-frame-pointer was added when building with debugging symbols
- enabled.
-
- Debugging symbols can be enabled independently of the overall build
- mode in both the autotools and CMake. This allows (limited) debugging
- of optimized code. Since many debuggers rely on the frame pointer,
- we've disabled this optimization when debugging symbols are requested
- (e.g.: via building with --enable-symbols).
-
- (DER - 2017/05/31, HDFFV-10226)
-
-
- Library:
- --------
- - Added an enumerated value to H5F_libver_t for H5Pset_libver_bounds().
-
- Currently, the library defines two values for H5F_libver_t and supports
- only two pairs of (low, high) combinations as derived from these values.
- Thus the bounds setting via H5Pset_libver_bounds() is rather restricted.
-
- Added an enumerated value (H5F_LIBVER_V18) to H5F_libver_t and
- H5Pset_libver_bounds() now supports five pairs of (low, high) combinations
- as derived from these values. This addition provides the user more
- flexibility in setting bounds for object creation.
-
- (VC - 2018/03/14)
-
- - Added prefix option to VDS files.
-
- Currently, VDS source files must be in the active directory to be
- found by the virtual file. Adding the option of a prefix to be set
- on the virtual file, using a data access property list (DAPL),
- allows the source files to locate at an absolute or relative path
- to the virtual file.
- Private utility functions in H5D and H5L packages merged into single
- function in H5F package.
-
- New public APIs:
- herr_t H5Pset_virtual_prefix(hid_t dapl_id, const char* prefix);
- ssize_t H5Pget_virtual_prefix(hid_t dapl_id, char* prefix /*out*/, size_t size);
- The prefix can also be set with an environment variable, HDF5_VDS_PREFIX.
-
- (ADB - 2017/12/12, HDFFV-9724, HDFFV-10361)
-
- - H5FDdriver_query() API call added to the C library.
-
- This new library call allows the user to query a virtual file driver
- (VFD) for the feature flags it supports (listed in H5FDpublic.h).
- This can be useful to determine if a VFD supports SWMR, for example.
-
- Note that some VFDs have feature flags that may only be present
- after a file has been created or opened (e.g.: the core VFD will
- have the H5FD_FEAT_POSIX_COMPAT_HANDLE flag set if the backing
- store is switched on). Since the new API call queries a generic VFD
- unassociated with a file, these flags will never be returned.
-
- (DER - 2017/05/31, HDFFV-10215)
-
- - H5FD_FEAT_DEFAULT_VFD_COMPATIBLE VFD feature flag added to the C library.
-
- This new feature flag indicates that the VFD is compatible with the
- default VFD. VFDs that set this flag create single files that follow
- the canonical HDF5 file format.
-
- (DER - 2017/05/31, HDFFV-10214)
-
- - The H5I_REFERENCE value in the H5I_type_t enum (defined in H5Ipublic.h)
- has been marked as deprecated.
-
- This ID type value is not used in the C library. i.e.: There are no
- hid_t values that are of ID type H5I_REFERENCE.
-
- This enum value will be removed in a future major version of the library.
- The code will remain unchanged in the HDF5 1.10.x releases and branches.
-
- (DER - 2017/04/05, HDFFV-10252)
-
-
- Parallel Library:
- -----------------
- - Enabled compression for parallel applications.
-
- With this release parallel applications can create and write compressed
- datasets (or the datasets with the filters such as Fletcher32 applied).
-
- (EIP - 2018/03/29)
-
- - Addressed slow file close on some Lustre file systems.
-
- Slow file close has been reported on some Lustre file systems.
- While the ultimate cause is not understood fully, the proximate
- cause appears to be long delays in MPI_File_set_size() calls at
- file close and flush.
-
- To minimize this problem pending a definitive diagnosis and fix,
- PHDF5 has been modified to avoid MPI_File_set_size() calls when
- possible. This is done by comparing the library's EOA (End of
- Allocation) with the file systems EOF, and skipping the
- MPI_File_set_size() call if the two match.
-
- (JRM - 2018/03/29)
-
- - Optimized parallel open/location of the HDF5 super-block.
-
- Previous releases of PHDF5 required all parallel ranks to
- search for the HDF5 superblock signature when opening the
- file. As this is accomplished more or less as a synchronous
- operation, a large number of processes can experience a
- slowdown in the file open due to filesystem contention.
-
- As a first step in improving the startup/file-open performance,
- we allow MPI rank 0 of the associated MPI communicator to locate
- the base offset of the super-block and then broadcast that result
- to the remaining ranks in the parallel group. Note that this
- approach is utilized ONLY during file opens which employ the MPIO
- file driver in HDF5 by previously having called H5Pset_fapl_mpio().
-
- HDF5 parallel file operations which do not employ multiple ranks
- e.g. specifying MPI_COMM_SELF (whose MPI_Comm_size == 1)
- as opposed to MPI_COMM_WORLD, will not be affected by this
- optimization. Conversely, parallel file operations on subgroups
- of MPI_COMM_WORLD are allowed to be run in parallel with each
- subgroup operating as an independent collection of processes.
-
- (RAW - 2017/10/10, HDFFV-10294)
-
- - Added large (>2GB) MPI-IO transfers.
-
- Previous releases of PHDF5 would fail when attempting to
- read or write greater than 2GB of data in a single IO operation.
- This issue stems principally from an MPI API whose definitions
- utilize 32 bit integers to describe the number of data elements
- and datatype that MPI should use to effect a data transfer.
- Historically, HDF5 has invoked MPI-IO with the number of
- elements in a contiguous buffer represented as the length
- of that buffer in bytes.
-
- Resolving the issue and thus enabling larger MPI-IO transfers
- is accomplished first, by detecting when a user IO request would
- exceed the 2GB limit as described above. Once a transfer request
- is identified as requiring special handling, PHDF5 now creates a
- derived datatype consisting of a vector of fixed sized blocks
- which is in turn wrapped within a single MPI_Type_struct to
- contain the vector and any remaining data. The newly created
- datatype is then used in place of MPI_BYTE and can be used to
- fulfill the original user request without encountering API
- errors.
-
- (RAW - 2017/09/10, HDFFV-8839)
-
-
- C++ Library:
- ------------
- - The following C++ API wrappers have been added to the C++ Library:
- + H5Lcreate_soft:
- // Creates a soft link from link_name to target_name.
- void link(const char *target_name, const char *link_name,...)
- void link(const H5std_string& target_name,...)
-
- + H5Lcreate_hard:
- // Creates a hard link from new_name to curr_name.
- void link(const char *curr_name, const Group& new_loc,...)
- void link(const H5std_string& curr_name, const Group& new_loc,...)
-
- // Creates a hard link from new_name to curr_name in same location.
- void link(const char *curr_name, const hid_t same_loc,...)
- void link(const H5std_string& curr_name, const hid_t same_loc,...)
-
- Note: previous version of H5Location::link will be deprecated.
-
- + H5Lcopy:
- // Copy an object from a group of file to another.
- void copyLink(const char *src_name, const Group& dst,...)
- void copyLink(const H5std_string& src_name, const Group& dst,...)
-
- // Copy an object from a group of file to the same location.
- void copyLink(const char *src_name, const char *dst_name,...)
- void copyLink(const H5std_string& src_name,...)
-
- + H5Lmove:
- // Rename an object in a group or file to a new location.
- void moveLink(const char* src_name, const Group& dst,...)
- void moveLink(const H5std_string& src_name, const Group& dst,...)
-
- // Rename an object in a group or file to the same location.
- void moveLink(const char* src_name, const char* dst_name,...)
- void moveLink(const H5std_string& src_name,...)
-
- Note: previous version H5Location::move will be deprecated.
-
- + H5Ldelete:
- // Removes the specified link from this location.
- void unlink(const char *link_name,
- const LinkAccPropList& lapl = LinkAccPropList::DEFAULT)
- void unlink(const H5std_string& link_name,
- const LinkAccPropList& lapl = LinkAccPropList::DEFAULT)
-
- Note: additional parameter is added to previous H5Location::unlink.
-
- + H5Tencode and H5Tdecode:
- // Creates a binary object description of this datatype.
- void DataType::encode() - C API H5Tencode()
-
- // Returns the decoded type from the binary object description.
- DataType::decode() - C API H5Tdecode()
- ArrayType::decode() - C API H5Tdecode()
- CompType::decode() - C API H5Tdecode()
- DataType::decode() - C API H5Tdecode()
- EnumType::decode() - C API H5Tdecode()
- FloatType::decode() - C API H5Tdecode()
- IntType::decode() - C API H5Tdecode()
- StrType::decode() - C API H5Tdecode()
- VarLenType::decode() - C API H5Tdecode()
-
- + H5Lget_info:
- // Returns the information of the named link.
- H5L_info_t getLinkInfo(const H5std_string& link_name,...)
-
- (BMR - 2018/03/11, HDFFV-10149)
-
- - Added class LinkCreatPropList for link create property list.
-
- (BMR - 2018/03/11, HDFFV-10149)
-
- - Added overloaded functions H5Location::createGroup to take a link
- creation property list.
- Group createGroup(const char* name, const LinkCreatPropList& lcpl)
- Group createGroup(const H5std_string& name, const LinkCreatPropList& lcpl)
-
- (BMR - 2018/03/11, HDFFV-10149)
-
- - A document is added to the HDF5 C++ API Reference Manual to show the
- mapping from a C API to C++ wrappers. It can be found from the main
- page of the C++ API Reference Manual.
-
- (BMR - 2017/10/17, HDFFV-10151)
-
-
- Java Library:
- ----------------
- - Wrapper added for enabling the error stack.
-
- H5error_off would disable the error stack reporting. In order
- to re-enable the reporting, the error stack info needs to be
- saved so that H5error_on can revert state.
-
- (ADB - 2018/03/13, HDFFV-10412)
-
- - Wrappers were added for the following C APIs:
- H5Pset_evict_on_close
- H5Pget_evict_on_close
- H5Pset_chunk_opts
- H5Pget_chunk_opts
- H5Pset_efile_prefix
- H5Pget_efile_prefix
- H5Pset_virtual_prefix
- H5Pget_virtual_prefix
-
- (ADB - 2017/12/20)
-
- - The H5I_REFERENCE value in the H5I_type_t enum (defined in H5Ipublic.h)
- has been marked as deprecated.
-
- JNI code which refers to this value will be removed in a future
- major version of the library. The code will remain unchanged in the
- 1.10.x releases and branches.
-
- See the C library section, above, for further information.
-
- (HDFFV-10252, DER, 2017/04/05)
-
-
- Tools:
- ------
- - h5diff has a new option to display error stack.
-
- Updated h5diff with the --enable-error-stack argument, which
- enables the display of the hdf5 error stack. This completes the
- improvement to the main tools: h5copy, h5diff, h5dump, h5ls and
- h5repack.
-
- (ADB - 2017/08/30, HDFFV-9774)
-
-
-Support for new platforms, languages and compilers.
-=======================================
- - None
-
-Bug Fixes since HDF5-1.10.1 release
-==================================
-
- Library
- -------
- - The data read after a direct chunk write to a chunked dataset with
- one chunk was incorrect.
-
- The problem was due to the passing of a null dataset pointer to
- the insert callback for the chunk index in the routine
- H5D__chunk_direct_write() in H5Dchunk.c
- The dataset was a single-chunked dataset which will use the
- single chunk index when latest format was enabled on file creation.
- The single chunk index was the only index that used this pointer
- in the insert callback.
-
- Passed the dataset pointer to the insert callback for the chunk
- index in H5D__chunk_direct_write().
-
- (VC - 2018/03/20, HDFFV-10425)
-
- - Added public routine H5DOread_chunk to the high-level C library.
-
- The patch for H5DOwrite_chunk() to write an entire chunk to the file
- directly was contributed by GE Healthcare and integrated by The HDF Group
- developers.
-
- (VC - 2017/05/19, HDFFV-9934)
-
- - Freeing of object header after failed checksum verification.
-
- It was discovered that the object header (in H5Ocache.c) was not released properly
- when the checksum verification failed and a re-load of the object
- header was needed.
-
- Freed the object header that failed the chksum verification only
- after the new object header is reloaded, deserialized and set up.
-
- (VC - 2018/03/14, HDFFV-10209)
-
- - Updated H5Pset_evict_on_close in H5Pfapl.c
-
- Changed the minor error number from H5E_CANTSET to H5E_UNSUPPORTED for
- parallel library.
-
- (ADB - 2018/03/06, HDFFV-10414)
-
- - Fixed the problems with the utility function that could not handle lowercase
- Windows drive letters.
-
- Added call to upper function for drive letter.
-
- (ADB - 2017/12/18, HDFFV-10307)
-
- - Fixed H5Sencode() bug when the number of elements selected was > 2^32.
-
- H5Sencode() incorrectly encodes dataspace selection with number of
- elements exceeding 2^32. When decoding such selection via H5Sdecode(),
- the number of elements in the decoded dataspace is not the same as
- what is encoded. This problem exists for H5S_SEL_HYPER and
- H5S_SEL_POINTS encoding.
-
- The cause of the problem is due to the fact that the library uses 32 bits to
- encode counts and block offsets for the selection.
- The solution is to use the original 32 bit encodings if possible,
- but use a different way to encode selection if more that 32 bits is needed.
- See details in the RFC: H5Sencode/H5Sdecode Format Change i
- https://bitbucket.hdfgroup.org/projects/HDFFV/repos/hdf5doc/browse/RFCs/HDF5_Library/H5SencodeFormatChange.
-
- (VC - 2017/11/28, HDFFV-9947)
-
- - Fixed filter plugin handling in H5PL.c and H5Z.c to not require i availability of
- dependent libraries (e.g., szip or zlib).
-
- It was discovered that the dynamic loading process used by
- filter plugins had issues with library dependencies.
-
- CMake build process changed to use LINK INTERFACE keywords, which
- allowed HDF5 C library to make dependent libraries private. The
- filter plugin libraries no longer require dependent libraries
- (such as szip or zlib) to be available.
-
- (ADB - 2017/11/16, HDFFV-10328)
-
- - Fixed rare object header corruption bug.
-
- In certain cases, such as when converting large attributes to dense
- storage, an error could occur which would either fail an assertion or
- cause file corruption. Fixed and added test.
-
- (NAF - 2017/11/14, HDFFV-10274)
-
- - Updated H5Zfilter_avail in H5Z.c.
-
- The public function checked for plugins, while the private
- function did not.
-
- Modified H5Zfilter_avail and private function, H5Z_filter_avail.
- Moved check for plugin from public to private function. Updated
- H5P__set_filter due to change in H5Z_filter_avail. Updated tests.
-
- (ADB - 2017/10/10, HDFFV-10297, HDFFV-10319)
-
- - h5dump produced SEGFAULT when dumping corrypted file.
-
- The behavior was due to the error in the internal function H5HL_offset_into().
-
- (1) Fixed H5HL_offset_into() to return error when offset exceeds heap data
- block size.
- (2) Fixed other places in the library that call this routine to detect
- error routine.
-
- (VC - 2017/08/30, HDFFV-10216)
-
- - Fixes for paged aggregation feature.
-
- Skip test in test/fheap.c when:
- (1) multi/split drivers and
- (2) persisting free-space or using paged aggregation strategy
-
- (VC, 2017/07/10)
-
- Changes made based on RFC review comments:
- (1) Added maximum value for file space page size
- (2) Dropped check for page end metadata threshold
- (3) Removed "can_shrink" and "shrink" callbacks for small section class
-
- (VC - 2017/06/09)
-
- - Fixed for infinite loop in H5VM_power2up().
-
- The function H5VM_power2up() returns the next power of 2
- for n. When n exceeds 2^63, it overflows and becomes 0 causing
- the infinite looping.
-
- The fix ensures that the function checks for n >= 2^63
- and returns 0.
-
- (VC - 2017/07/10, HDFFV-10217)
-
- - Fixed for H5Ocopy doesn't work with open identifiers.
-
- Changes made so that raw data for dataset objects are copied from
- cached info when possible instead of flushing objects to file and
- read them back in again.
-
- (VC - 2017/07/05, HDFFV-7853)
-
- - An uninitialized struct could cause a memory access error when using
- variable-length or reference types in a compressed, chunked dataset.
-
- A struct containing a callback function pointer and a pointer to some
- associated data was used before initialization. This could cause a
- memory access error and system crash. This could only occur under
- unusual conditions when using variable-lenth and reference types in
- a compressed, chunked dataset.
-
- On recent versions of Visual Studio, when built in debug mode, the
- debug heap will complain and cause a crash if the code in question
- is executed (this will cause the objcopy test to fail).
-
- (DER - 2017/11/21, HDFFV-10330)
-
- - Fixed collective metadata writes on file close.
-
- It was discovered that metadata was being written twice as part of
- the parallel file close behavior, once independently and once
- collectively.
-
- A fix for this error was included as part of the parallel compression
- feature but remained undocumented here.
-
- (RAW - 2017/12/01, HDFFV-10272)
-
- - If an HDF5 file contains a filter pipeline message with a 'number of
- filters' field that exceeds the maximum number of allowed filters,
- the error handling code will attempt to dereference a NULL pointer.
-
- This issue was reported to The HDF Group as issue #CVE-2017-17505.
- https://security-tracker.debian.org/tracker/CVE-2017-17505
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=3DCVE-2017-17505
-
- NOTE: The HDF5 C library cannot produce such a file. This condition
- should only occur in a corrupt (or deliberately altered) file
- or a file created by third-party software.
-
- This problem arose because the error handling code assumed that
- the 'number of filters' field implied that a dynamic array of that
- size had already been created and that the cleanup code should
- iterate over that array and clean up each element's resources. If
- an error occurred before the array has been allocated, this will
- not be true.
-
- This has been changed so that the number of filters is set to
- zero on errors. Additionally, the filter array traversal in the
- error handling code now requires that the filter array not be NULL.
-
- (DER - 2018/02/06, HDFFV-10354)
-
- - If an HDF5 file contains a filter pipeline message which contains
- a 'number of filters' field that exceeds the actual number of
- filters in the message, the HDF5 C library will read off the end of
- the read buffer.
-
- This issue was reported to The HDF Group as issue #CVE-2017-17506.
- https://security-tracker.debian.org/tracker/CVE-2017-17506
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=3DCVE-2017-17506
-
- NOTE: The HDF5 C library cannot produce such a file. This condition
- should only occur in a corrupt (or deliberately altered) file
- or a file created by third-party software.
-
- The problem was fixed by passing the buffer size with the buffer
- and ensuring that the pointer cannot be incremented off the end
- of the buffer. A mismatch between the number of filters declared
- and the actual number of filters will now invoke normal HDF5
- error handling.
-
- (DER - 2018/02/26, HDFFV-10355)
-
- - If an HDF5 file contains a malformed compound datatype with a
- suitably large offset, the type conversion code can run off
- the end of the type conversion buffer, causing a segmentation
- fault.
-
- This issue was reported to The HDF Group as issue #CVE-2017-17507.
- https://security-tracker.debian.org/tracker/CVE-2017-17506
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=3DCVE-2017-17506
-
- NOTE: The HDF5 C library cannot produce such a file. This condition
- should only occur in a corrupt (or deliberately altered) file
- or a file created by third-party software.
-
- THE HDF GROUP WILL NOT FIX THIS BUG AT THIS TIME
-
- Fixing this problem would involve updating the publicly visible
- H5T_conv_t function pointer typedef and versioning the API calls
- which use it. We normally only modify the public API during
- major releases, so this bug will not be fixed at this time.
-
- (DER - 2018/02/26, HDFFV-10356)
-
- - If an HDF5 file contains a malformed compound type which contains
- a member of size zero, a division by zero error will occur while
- processing the type.
-
- This issue was reported to The HDF Group as issue #CVE-2017-17508.
- https://security-tracker.debian.org/tracker/CVE-2017-17508
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=3DCVE-2017-17508
-
- NOTE: The HDF5 C library cannot produce such a file. This condition
- should only occur in a corrupt (or deliberately altered) file
- or a file created by third-party software.
-
- Checking for zero before dividing fixes the problem. Instead of the
- division by zero, the normal HDF5 error handling is invoked.
-
- (DER - 2018/02/26, HDFFV-10357)
-
- - If an HDF5 file contains a malformed symbol table node that declares
- it contains more symbols than it actually contains, the library
- can run off the end of the metadata cache buffer while processing
- the symbol table node.
-
- This issue was reported to The HDF Group as issue #CVE-2017-17509.
- https://security-tracker.debian.org/tracker/CVE-2017-17509
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=3DCVE-2017-17509
-
- NOTE: The HDF5 C library cannot produce such a file. This condition
- should only occur in a corrupt (or deliberately altered) file
- or a file created by third-party software.
-
- Performing bounds checks on the buffer while processing fixes the
- problem. Instead of the segmentation fault, the normal HDF5 error
- handling is invoked.
-
- (DER - 2018/03/12, HDFFV-10358)
-
- - Fixed permissions passed to open(2) on file create.
-
- On Windows, the POSIX permissions passed to open(2) when creating files
- were only incidentally correct. They are now set to the correct value of
- (_S_IREAD | _S_IWRITE).
-
- On other platforms, the permissions were set to a mix of 666, 644, and
- 000. They are now set uniformly to 666.
-
- (DER - 2017/04/28, HDFFV-9877)
-
- - The H5FD_FEAT_POSIX_COMPAT_HANDLE flag is no longer used to determine
- if a virtual file driver (VFD) is compatible with SWMR.
-
- Use of this VFD feature flag was not in line with the documentation in
- the public H5FDpublic.h file. In particular, it was being used as a
- proxy for determining if SWMR I/O is allowed. This is unnecessary as we
- already have a feature flag for this (H5FD_SUPPORTS_SWMR_IO).
-
- (DER - 2017/05/31, HDFFV-10214)
-
-
- Configuration
- -------------
- - CMake changes
-
- - Updated CMake commands configuration.
-
- A number of improvements were made to the CMake commands. Most
- changes simplify usage or eliminate unused constructs. Also,
- some changes support better cross-platform support.
-
- (ADB - 2018/02/01, HDFFV-10398)
-
- - Corrected usage of CMAKE_BUILD_TYPE variable.
-
- The use of the CMAKE_BUILD_TYPE is incorrect for multi-config
- generators (Visual Studio and XCode) and is optional for single
- config generators. Created a new macro to check
- GLOBAL PROPERTY -> GENERATOR_IS_MULTI_CONFIG
- Created two new HDF variable, HDF_BUILD_TYPE and HDF_CFG_BUILD_TYPE.
- Defaults for these variables is "Release".
-
- (ADB - 2018/01/10, HDFFV-10385)
-
- - Added replacement of fortran flags if using static CRT.
-
- Added TARGET_STATIC_CRT_FLAGS call to HDFUseFortran.cmake file in
- config/cmake_ext_mod folder.
-
- (ADB - 2018/01/08, HDFFV-10334)
-
-
- - The hdf5 library used shared szip and zlib, which needlessly required
- applications to link with the same szip and zlib libraries.
-
- Changed the target_link_libraries commands to use the static libs.
- Removed improper link duplication of szip and zlib.
- Adjusted the link dependencies and the link interface values of
- the target_link_libraries commands.
-
- (ADB - 2017/11/14, HDFFV-10329)
-
- - CMake MPI
-
- CMake implementation for MPI was problematic and would create incorrect
- MPI library references in the hdf5 libraries.
-
- Reworked the CMake MPI code to properly create CMake targets. Also merged
- the latest CMake FindMPI.cmake changes to the local copy. This is necessary
- until HDF changes the CMake minimum to 3.9 or greater.
-
- (ADB - 2017/11/02, HDFFV-10321)
-
- - Corrected FORTRAN_HAVE_C_LONG_DOUBLE processing in the autotools.
-
- A bug in the autotools Fortran processing code always set the
- FORTRAN_HAVE_C_LONG_DOUBLE variable to be true regardless of
- whether or not a C long double type was present.
-
- This would cause compilation failures on platforms where a C
- long double type was not available and the Fortran wrappers
- were being built.
-
- (DER - 2017/07/05, HDFFV-10247)
-
- - The deprecated --enable-production and --enable-debug configure options
- failed to emit errors when passed an empty string
- (e.g.: --enable-debug="").
-
- Due to the way we checked for these options being set, it was possible
- to avoid the error message and continue configuration if an empty string
- was passed to the option.
-
- Any use of --enable-production or --enable-debug will now halt the
- configuration step and emit a helpful error message
- (use --enable-build-mode=debug|production instead).
-
- (DER - 2017/07/05, HDFFV-10248)
-
- - CMake
-
- Too many commands for POST_BUILD step caused command line to be
- too big on windows.
-
- Changed foreach of copy command to use a custom command with the
- use of the HDFTEST_COPY_FILE macro.
-
- (ADB - 2017/07/12, HDFFV-10254)
-
- - CMake test execution environment
-
- The parallel HDF5 test: 't_pread' assumed the use of autotools
- and the directory structure associated with that testing approach.
- Modified the test code to check whether the 'h5jam' utility can be
- found in the same directory as the test executable (which is
- preferred directory structure utilized by cmake) and if found
- will invoke the tool directly rather than utilizing a relative path.
-
- (RAW - 2017/11/03, HDFFV-10318)
-
- - Fortran compilation fails for xlf and CMake builds.
-
- Fixed CMake shared library build for H5match_types and modules
-
- (MSB - 2017/12/19, HDFFV-10363)
-
- - Shared libraries fail test on OSX with Fortran enabled with CMake.
-
- Fixed by removing the F77 use of EQUIVALENCE and COMMON, replaced
- using MODULES. Updated CMake.
-
- (MSB - 2017/12/07, HDFFV-10223)
-
- - The bin/trace script now emits an error code on problems and autogen.sh
- will fail if bin/trace fails.
-
- The bin/trace script adds tracing functionality to public HDF5 API calls.
- It is only of interest to developers who modify the HDF5 source code.
- Previously, bin/trace just wrote an error message to stdout when it
- encountered problems, so autogen.sh processing did not halt and a broken
- version of the library could be built. The script will now return an
- error code when it encounters problems, and autogen.sh will fail.
-
- This only affects users who run autogen.sh to rebuild the Autotools files,
- which is not necessary to build HDF5 from source in official releases of the
- library. CMake users are unaffected as bin/trace is not run via CMake
- at this time.
-
- (DER - 2017/04/25, HDFFV-10178)
-
- - FC_BASENAME was changed from gfortran40 to gfortran in a few places.
-
- In the autotools, FC_BASENAME was set to gfortran40 in a few locations
- (config/gnu-fflags and config/freebsd). This was probably a historical
- artifact and did not seem to affect many users.
-
- The value is now correctly set to gfortran.
-
- (DER - 2017/05/26, HDFFV-10249)
-
- - The ar flags were changed to -cr (was: -cru)
-
- The autotools set the flags for ar to -cru by default. The -u flag,
- which allows selective replacement of only the members which have
- changed, raises warnings on some platforms, so the flags are now set to
- -cr via AR_FLAGS in configure.ac. This causes the static library to
- always be completely recreated from the object files on each build.
-
- (DER - 2017/11/15, HDFFV-10428)
-
-
- Fortran
- --------
- - Fixed compilation errors when using Intel 18 Fortran compilers
- (MSB - 2017/11/3, HDFFV-10322)
-
- Tools
- -----
- - h5clear
-
- An enhancement to the tool in setting a file's stored EOA.
-
- It was discovered that a crashed file's stored EOA in the superblock
- was smaller than the actual file's EOF. When the file was reopened
- and closed, the library truncated the file to the stored EOA.
-
- Added an option to the tool in setting the file's stored EOA in the
- superblock to the maximum of (EOA, EOF) + increment.
- An option was also added to print the file's EOA and EOF.
-
- (VC - 2018/03/14, HDFFV-10360)
-
- - h5repack
-
- h5repack changes the chunk parameters when a change of layout is not
- specified and a filter is applied.
-
- HDFFV-10297, HDFFV-10319 reworked code for h5repack and h5diff code
- in the tools library. The check for an existing layout was incorrectly
- placed into an if block and not executed. The check was moved into
- the normal path of the function.
-
- (ADB - 2018/02/21, HDFFV-10412)
-
- - h5dump
-
- The tools library will hide the error stack during file open.
-
- While this is preferable almost always, there are reasons to enable
- display of the error stack when a tool will not open a file. Adding an
- optional argument to the --enable-error-stack will provide this use case.
- As an optional argument it will not affect the operation of the
- --enable-error-stack. h5dump is the only tool to implement this change.
-
- (ADB - 2018/02/15, HDFFV-10384)
-
- - h5dump
-
- h5dump would output an indented blank line in the filters section.
-
- h5dump overused the h5tools_simple_prefix function, which is a
- function intended to account for the data index (x,y,z) option.
- Removed the function call for header information.
-
- (ADB - 2018/01/25, HDFFV-10396)
-
- - h5repack
-
- h5repack incorrectly searched internal object table for name.
-
- h5repack would search the table of objects for a name, if the
- name did not match it tried to determine if the name without a
- leading slash would match. The logic was flawed! The table
- stored names(paths) without a leading slash and did a strstr
- of the table path to the name.
- The assumption was that if there was a difference of one then
- it was a match, however "pressure" would match "/pressure" as
- well as "/pressure1", "/pressure2", etc. Changed logic to remove
- any leading slash and then do a full compare of the name.
-
- (ADB - 2018/01/18, HDFFV-10393)
-
- - h5repack
-
- h5repack failed to handle command line parameters for customer filters.
-
- User defined filter parameter conversions would fail when integers were
- represented on the command line with character string
- larger then 9 characters. Increased local variable array for storing
- the current command line parameter to prevent buffer overflows.
-
- (ADB - 2018/01/17, HDFFV-10392)
-
- - h5diff
-
- h5diff seg faulted if comparing VL strings against fixed strings.
-
- Reworked solution for HDFFV-8625 and HDFFV-8639. Implemented the check
- for string objects of same type in the diff_can_type function by
- adding an if(tclass1 == H5T_STRING) block. This "if block" moves the
- same check that was added for attributes to this function, which is
- used by all object types. This function handles complex type structures.
- Also added a new test file in h5diffgenttest for testing this issue
- and removed the temporary files used in the test scripts.
-
- (ADB - 2018/01/04, HDFFV-8745)
-
- - h5repack
-
- h5repack failed to copy a dataset with existing filter.
-
- Reworked code for h5repack and h5diff code in the tools library. Added
- improved error handling, cleanup of resources and checks of calls.
- Modified H5Zfilter_avail and private function, H5Z_filter_avail.
- Moved check for plugin from public to private function. Updated
- H5P__set_filter due to change in H5Z_filter_avail. Updated tests.
- Note, h5repack output display has changed to clarify the individual
- steps of the repack process. The output indicates if an operation
- applies to all objects. Lines with notation and no information
- have been removed.
-
- (ADB - 2017/10/10, HDFFV-10297, HDFFV-10319)
-
- - h5repack
-
- h5repack always set the User Defined filter flag to H5Z_FLAG_MANDATORY.
-
- Added another parameter to the 'UD=' option to set the flag by default
- to '0' or H5Z_FLAG_MANDATORY, the other choice is '1' or H5Z_FLAG_OPTIONAL.
-
- (ADB - 2017/08/31, HDFFV-10269)
-
- - h5ls
-
- h5ls generated error on stack when it encountered a H5S_NULL
- dataspace.
-
- Adding checks for H5S_NULL before calling H5Sis_simple (located
- in the h5tools_dump_mem function) fixed the issue.
-
- (ADB - 2017/08/17, HDFFV-10188)
-
- - h5repack
-
- Added tests to h5repack.sh.in to verify options added for paged
- aggregation work as expected.
-
- (VC - 2017/08/03)
-
- - h5dump
-
- h5dump segfaulted on output of XML file.
-
- Function that escape'd strings used the full buffer length
- instead of just the length of the replacement string in a
- strncpy call. Using the correct length fixed the issue.
-
- (ADB - 2017/08/01, HDFFV-10256)
-
- - h5diff
-
- h5diff segfaulted on compare of a NULL variable length string.
-
- Improved h5diff compare of strings by adding a check for
- NULL strings and setting the lengths to zero.
-
- (ADB - 2017/07/25, HDFFV-10246)
-
- - h5import
-
- h5import crashed trying to import data from a subset of a dataset.
-
- Improved h5import by adding the SUBSET keyword. h5import understands
- to use the Count times the Block as the size of the dimensions.
- Added INPUT_B_ORDER keyword to old-style configuration files.
- The import from h5dump function expects the binary files to use native
- types (FILE '-b' option) in the binary file.
-
- (ADB - 2017/06/15, HDFFV-10219)
-
- - h5repack
-
- h5repack did not maintain the creation order flag of the root
- group.
-
- Improved h5repack by reading the creation order and applying the
- flag to the new root group. Also added arguments to set the
- order and index direction, which applies to the traversing of the
- original file, on the command line.
-
- (ADB - 2017/05/26, HDFFV-8611)
-
- - h5diff
-
- h5diff failed to account for strpad type and null terminators
- of char strings. Also, h5diff failed to account for string length
- differences and would give a different result depending on file
- order in the command line.
-
- Improved h5diff compare of strings and arrays by adding a check for
- string lengths and if the strpad was null filled.
-
- (ADB - 2017/05/18, HDFFV-9055, HDFFV-10128)
-
- High-Level APIs:
- ------
- - H5DOwrite_chunk() problems when overwriting an existing chunk with
- no filters enabled.
-
- When overwriting chunks and no filters were being used, the library would
- fail (when asserts are enabled, e.g. debug builds) or incorrectly
- insert additional chunks instead of overwriting (when asserts are not
- enabled, e.g. production builds).
-
- This has been fixed and a test was added to the hl/test_dset_opt test.
-
- (DER - 2017/05/11, HDFFV-10187)
-
- C++ APIs
- --------
- - Removal of memory leaks.
-
- A private function was inadvertently called, causing memory leaks. This
- is now fixed.
-
- (BMR - 2018/03/12 - User's reported in email)
-
- Testing
- -------
- - Memory for three variables in testphdf5's coll_write_test was malloced
- but not freed, leaking memory when running the test.
-
- The variables' memory is now freed.
-
- (LRK - 2018/03/12, HDFFV-10397)
-
- - Refactored the testpar/t_bigio.c test to include ALARM macros
-
- Changed the test to include the ALARM_ON and ALARM_OFF macros which
- are intended to prevent nightly test hangs that have been observed
- with this particular parallel test example. The code was also modified to
- simplify status reporting (only from MPI rank 0) and additional
- status checking added.
-
- (RAW - 2017/11/08, HDFFV-10301)
-
-
-Supported Platforms
-===================
-
- Linux 2.6.32-696.16.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-327.10.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Version 4.9.3, Version 5.2.0,
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.0.098 Build 20160721
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Visual Studio 2015 w/ Intel C, Fortran 2017 (cmake)
- Visual Studio 2015 w/ MSMPI 8 (cmake)
- Cygwin(CYGWIN_NT-6.1 2.8.0(0.309/5/3)
- gcc and gfortran compilers (GCC 5.4.0)
- (cmake and autotools)
-
- Windows 10 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Cygwin(CYGWIN_NT-6.1 2.8.0(0.309/5/3)
- gcc and gfortran compilers (GCC 5.4.0)
- (cmake and autotools)
-
- Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Mac OS X Yosemite 10.10.5 Apple clang/clang++ version 6.1 from Xcode 7.0
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X El Capitan 10.11.6 Apple clang/clang++ version 7.3.0 from Xcode 7.3
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1011dev/osx1011test) Intel icc/icpc/ifort version 16.0.2
-
- Mac OS Sierra 10.12.6 Apple LLVM version 8.1.0 (clang/clang++-802.0.42)
- 64-bit gfortran GNU Fortran (GCC) 7.1.0
- (swallow/kite) Intel icc/icpc/ifort version 17.0.2
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-Solaris2.11 32-bit n y/y n y y y
-Solaris2.11 64-bit n y/n n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y y y y y
-Windows 7 Cygwin n y/n n y y y
-Windows 7 x64 Cygwin n y/n n y y y
-Windows 10 y y/y n y y y
-Windows 10 x64 y y/y n y y y
-Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
-Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
-Mac OS X Yosemite 10.10.5 64-bit n y/y n y y y
-Mac OS X El Capitan 10.11.6 64-bit n y/y n y y y
-CentOS 7.2 Linux 2.6.32 x86_64 PGI n y/y n y y y
-CentOS 7.2 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 7.2 Linux 2.6.32 x86_64 Intel n y/y n y y y
-Linux 2.6.32-573.18.1.el6.ppc64 n y/y n y y y
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.11 32-bit y y y y
-Solaris2.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 7 x64 Cygwin n n n y
-Windows 10 y y y y
-Windows 10 x64 y y y y
-Mac OS X Mountain Lion 10.8.5 64-bit y n y y
-Mac OS X Mavericks 10.9.5 64-bit y n y y
-Mac OS X Yosemite 10.10.5 64-bit y n y y
-Mac OS X El Capitan 10.11.6 64-bit y n y y
-CentOS 7.2 Linux 2.6.32 x86_64 PGI y y y n
-CentOS 7.2 Linux 2.6.32 x86_64 GNU y y y y
-CentOS 7.2 Linux 2.6.32 x86_64 Intel y y y n
-Linux 2.6.32-573.18.1.el6.ppc64 y y y n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (mayll/platypus) Version 4.4.7 20120313
- Version 4.9.3, 5.3.0, 6.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 17.10-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.4.196 Build 20170411
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- Linux 3.10.0-327.18.2.el7 GNU C (gcc) and C++ (g++) compilers
- #1 SMP x86_64 GNU/Linux Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- (jelly) with NAG Fortran Compiler Release 6.1(Tozai)
- GCC Version 7.1.0
- OpenMPI 3.0.0-GCC-7.2.0-2.29
- Intel(R) C (icc) and C++ (icpc) compilers
- Version 17.0.0.098 Build 20160721
- with NAG Fortran Compiler Release 6.1(Tozai)
-
- Linux 3.10.0-327.10.1.el7 MPICH 3.2 compiled with GCC 5.3.0
- #1 SMP x86_64 GNU/Linux
- (moohan)
-
- Linux 2.6.32-573.18.1.el6.ppc64 MPICH mpich 3.1.4 compiled with
- #1 SMP ppc64 GNU/Linux IBM XL C/C++ for Linux, V13.1
- (ostrich) and IBM XL Fortran for Linux, V15.1
-
- Debian 8.4 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1 x86_64 GNU/Linux
- gcc, g++ (Debian 4.9.2-10) 4.9.2
- GNU Fortran (Debian 4.9.2-10) 4.9.2
- (cmake and autotools)
-
- Fedora 24 4.7.2-201.fc24.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc, g++ (GCC) 6.1.1 20160621
- (Red Hat 6.1.1-3)
- GNU Fortran (GCC) 6.1.1 20160621
- (Red Hat 6.1.1-3)
- (cmake and autotools)
-
- Ubuntu 16.04.1 4.4.0-38-generic #57-Ubuntu SMP x86_64 GNU/Linux
- gcc, g++ (Ubuntu 5.4.0-6ubuntu1~16.04.2)
- 5.4.0 20160609
- GNU Fortran (Ubuntu 5.4.0-6ubuntu1~16.04.2)
- 5.4.0 20160609
- (cmake and autotools)
-
-
-Known Problems
-==============
-
- At present, metadata cache images may not be generated by parallel
- applications. Parallel applications can read files with metadata cache
- images, but since this is a collective operation, a deadlock is possible
- if one or more processes do not participate.
-
- Three tests fail with OpenMPI 3.0.0/GCC-7.2.0-2.29:
- testphdf5 (ecdsetw, selnone, cchunk1, cchunk3, cchunk4, and actualio)
- t_shapesame (sscontig2)
- t_pflush1/fails on exit
- The first two tests fail attempting collective writes.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-%%%%1.10.1%%%%
-
-HDF5 version 1.10.1 released on 2017-04-27
-================================================================================
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.10.0-patch1 and
-HDF5 1.10.1, and contains information on the platforms tested and known
-problems in HDF5-1.10.1. For more details check the HISTORY*.txt files
-in the HDF5 source.
-
-Links to HDF5 1.10.1 source code, documentation, and additional materials can
-be found on The HDF5 web page at:
-
- https://support.hdfgroup.org/HDF5/
-
-The HDF5 1.10.1 release can be obtained from:
-
- https://support.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for the snapshot can be accessed directly at this location:
-
- https://support.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.10.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "New Features
-in HDF5 Release 1.10" document:
-
- https://support.hdfgroup.org/HDF5/docNewFeatures/index.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 10.1 (current
-release) versus Release 1.10.0
-
- https://support.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-
-- Major New Features Introduced in HDF5 1.10.1
-- Other New Features and Enhancements
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.10.0-patch1
-- Supported Platforms
-- Tested Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-Major New Features Introduced in HDF5 1.10.1
-============================================
-
-For links to the RFCs and documentation in this section please view
-https://support.hdfgroup.org/HDF5/docNewFeatures in a web browser.
-
-________________________________________
-Metadata Cache Image
-________________________________________
-
- HDF5 metadata is typically small, and scattered throughout the HDF5 file.
- This can affect performance, particularly on large HPC systems. The
- Metadata Cache Image feature can improve performance by writing the
- metadata cache in a single block on file close, and then populating the
- cache with the contents of this block on file open, thus avoiding the many
- small I/O operations that would otherwise be required on file open and
- close. See the RFC for complete details regarding this feature. Also,
- see the Fine Tuning the Metadata Cache documentation.
-
- At present, metadata cache images may not be generated by parallel
- applications. Parallel applications can read files with metadata cache
- images, but since this is a collective operation, a deadlock is possible
- if one or more processes do not participate.
-
-________________________________________
-Metadata Cache Evict on Close
-________________________________________
-
- The HDF5 library's metadata cache is fairly conservative about holding on
- to HDF5 object metadata (object headers, chunk index structures, etc.),
- which can cause the cache size to grow, resulting in memory pressure on
- an application or system. The "evict on close" property will cause all
- metadata for an object to be evicted from the cache as long as metadata
- is not referenced from any other open object. See the Fine Tuning the
- Metadata Cache documentation for information on the APIs.
-
- At present, evict on close is disabled in parallel builds.
-
-________________________________________
-Paged Aggregation
-________________________________________
-
- The current HDF5 file space allocation accumulates small pieces of metadata
- and raw data in aggregator blocks which are not page aligned and vary
- widely in sizes. The paged aggregation feature was implemented to provide
- efficient paged access of these small pieces of metadata and raw data.
- See the RFC for details. Also, see the File Space Management documentation.
-
-________________________________________
-Page Buffering
-________________________________________
-
- Small and random I/O accesses on parallel file systems result in poor
- performance for applications. Page buffering in conjunction with paged
- aggregation can improve performance by giving an application control of
- minimizing HDF5 I/O requests to a specific granularity and alignment.
- See the RFC for details. Also, see the Page Buffering documentation.
-
- At present, page buffering is disabled in parallel builds.
-
-
-
-Other New Features and Enhancements
-===================================
-
- Library
- -------
- - Added a mechanism for disabling the SWMR file locking scheme.
-
- The file locking calls used in HDF5 1.10.0 (including patch1)
- will fail when the underlying file system does not support file
- locking or where locks have been disabled. To disable all file
- locking operations, an environment variable named
- HDF5_USE_FILE_LOCKING can be set to the five-character string
- 'FALSE'. This does not fundamentally change HDF5 library
- operation (aside from initial file open/create, SWMR is lock-free),
- but users will have to be more careful about opening files
- to avoid problematic access patterns (i.e.: multiple writers)
- that the file locking was designed to prevent.
-
- Additionally, the error message that is emitted when file lock
- operations set errno to ENOSYS (typical when file locking has been
- disabled) has been updated to describe the problem and potential
- resolution better.
-
- (DER, 2016/10/26, HDFFV-9918)
-
- - The return type of H5Pget_driver_info() has been changed from void *
- to const void *.
-
- The pointer returned by this function points to internal library
- memory and should not be freed by the user.
-
- (DER, 2016/11/04, HDFFV-10017)
-
- - The direct I/O VFD has been removed from the list of VFDs that
- support SWMR.
-
- This configuration was never officially tested and several SWMR
- tests fail when this VFD is set.
-
- (DER, 2016/11/03, HDFFV-10169)
-
- Configuration:
- --------------
- - The minimum version of CMake required to build HDF5 is now 3.2.2.
-
- (ADB, 2017/01/10)
-
- - An --enable/disable-developer-warnings option has been added to
- configure.
-
- This disables warnings that do not indicate poor code quality such
- as -Winline and gcc's -Wsuggest-attribute. Developer warnings are
- disabled by default.
-
- (DER, 2017/01/10)
-
- - A bin/restore.sh script was added that reverts autogen.sh processing.
-
- (DER, 2016/11/08)
-
- - CMake: Added NAMESPACE hdf5:: to package configuration files to allow
- projects using installed HDF5 binaries built with CMake to link with
- them without specifying the HDF5 library location via IMPORTED_LOCATION.
-
- (ABD, 2016/10/17, HDFFV-10003)
-
- - CMake: Changed the CTEST_BUILD_CONFIGURATION option to
- CTEST_CONFIGURATION_TYPE as recommended by the CMake documentation.
-
- (ABD, 2016/10/17, HDFFV-9971)
-
-
- Fortran Library:
- ----------------
-
- - The HDF5 Fortran library can now be compiled with the NAG compiler.
-
- (MSB, 2017/2/10, HDFFV-9973)
-
-
- C++ Library:
- ------------
-
- - The following C++ API wrappers have been added to the C++ Library:
-
- // Sets/Gets the strategy and the threshold value that the library
- // will employ in managing file space.
- FileCreatPropList::setFileSpaceStrategy - H5Pset_file_space_strategy
- FileCreatPropList::getFileSpaceStrategy - H5Pget_file_space_strategy
-
- // Sets/Gets the file space page size for paged aggregation.
- FileCreatPropList::setFileSpacePagesize - H5Pset_file_space_page_size
- FileCreatPropList::getFileSpacePagesize - H5Pget_file_space_page_size
-
- // Checks if the given ID is valid.
- IdComponent::isValid - H5Iis_valid
-
- // Sets/Gets the number of soft or user-defined links that can be
- // traversed before a failure occurs.
- LinkAccPropList::setNumLinks - H5Pset_nlinks
- LinkAccPropList::getNumLinks - H5Pget_nlinks
-
- // Returns a copy of the creation property list of a datatype.
- DataType::getCreatePlist - H5Tget_create_plist
-
- // Opens/Closes an object within a group or a file, regardless of object
- // type
- Group::getObjId - H5Oopen
- Group::closeObjId - H5Oclose
-
- // Maps elements of a virtual dataset to elements of the source dataset.
- DSetCreatPropList::setVirtual - H5Pset_virtual
-
- // Gets general information about this file.
- H5File::getFileInfo - H5Fget_info2
-
- // Returns the number of members in a type.
- IdComponent::getNumMembers - H5Inmembers
-
- // Determines if an element type exists.
- IdComponent::typeExists - H5Itype_exists
-
- // Determines if an object exists.
- H5Location::exists - H5Lexists.
-
- // Returns the header version of an HDF5 object.
- H5Object::objVersion - H5Oget_info for version
-
- (BMR, 2017/03/20, HDFFV-10004, HDFFV-10139, HDFFV-10145)
-
- - New exception: ObjHeaderIException for H5O interface.
-
- (BMR, 2017/03/15, HDFFV-10145)
-
- - New class LinkAccPropList for link access property list, to be used by
- wrappers of H5Lexists.
-
- (BMR, 2017/01/04, HDFFV-10145)
-
- - New constructors to open datatypes in ArrayType, CompType, DataType,
- EnumType, FloatType, IntType, StrType, and VarLenType.
-
- (BMR, 2016/12/26, HDFFV-10056)
-
- - New member functions:
-
- DSetCreatPropList::setNbit() to setup N-bit compression for a dataset.
-
- ArrayType::getArrayNDims() const
- ArrayType::getArrayDims() const
- both to replace the non-const versions.
-
- (BMR, 2016/04/25, HDFFV-8623, HDFFV-9725)
-
-
- Tools:
- ------
- - The following options have been added to h5clear:
- -s: clear the status_flags field in the file's superblock
- -m: Remove the metadata cache image from the file
-
- (QAK, 2017/03/22, PR#361)
-
-
- High-Level APIs:
- ---------------
- - Added New Fortran 2003 API for h5tbmake_table_f.
-
- (MSB, 2017/02/10, HDFFV-8486)
-
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
-
- - Added NAG compiler
-
-
-
-Bug Fixes since HDF5-1.10.0-patch1 release
-==================================
-
- Library
- -------
- - Outdated data structure was used in H5D_CHUNK_DEBUG blocks, causing
- compilation errors when H5D_CHUNK_DEBUG was defined. This is fixed.
-
- (BMR, 2017/04/04, HDFFV-8089)
-
- - SWMR implementation in the HDF5 1.10.0 and 1.10.0-patch1 releases has a
- broken metadata flush dependency that manifested itself with the following
- error at the end of the HDF5 error stack:
-
- H5Dint.c line 846 in H5D__swmr_setup(): dataspace chunk index must be 0
- for SWMR access, chunkno = 1
- major: Dataset
- minor: Bad value
-
- It was also reported at https://github.com/areaDetector/ADCore/issues/203
-
- The flush dependency is fixed in this release.
-
- - Changed the plugins dlopen option from RTLD_NOW to RTLD_LAZY
-
- (ABD, 2016/12/12, PR#201)
-
- - A number of issues were fixed when reading/writing from/to corrupted
- files to ensure that the library fails gracefully in these cases:
-
- * Writing to a corrupted file that has an object message which is
- incorrectly marked as shareable on disk results in a buffer overflow /
- invalid write instead of a clean error message.
-
- * Decoding data from a corrupted file with a dataset encoded with the
- H5Z_NBIT decoding can result in a code execution vulnerability under
- the context of the application using the HDF5 library.
-
- * When decoding an array datatype from a corrupted file, the HDF5 library
- fails to return an error in production if the number of dimensions
- decoded is greater than the maximum rank.
-
- * When decoding an "old style" array datatype from a corrupted file, the
- HDF5 library fails to return an error in production if the number of
- dimensions decoded is greater than the maximum rank.
-
- (NAF, 2016/10/06, HDFFV-9950, HDFFV-9951, HDFFV-9992, HDFFV-9993)
-
- - Fixed an error that would occur when copying an object with an attribute
- which is a compound datatype consisting of a variable length string.
-
- (VC, 2016/08/24, HDFFV-7991)
-
- - H5DOappend will no longer fail if a dataset has no append callback
- registered.
-
- (VC, 2016/08/14, HDFFV-9960)
-
- - Fixed an issue where H5Pset_alignment could result in misaligned blocks
- with some input combinations, causing an assertion failure in debug mode.
-
- (NAF, 2016/08/11, HDFFV-9948)
-
- - Fixed a problem where a plugin compiled into a DLL in the default plugin
- directory could not be found by the HDF5 library at runtime on Windows
- when the HDF5_PLUGIN_PATH environment variable was not set.
-
- (ABD, 2016/08/01, HDFFV-9706)
-
- - Fixed an error that would occur when calling H5Adelete on an attribute
- which is attached to an externally linked object in the target file and
- whose datatype is a committed datatype in the main file.
-
- (VC, 2016/07/06, HDFFV-9940)
-
- - (a) Throw an error instead of assertion when v1 btree level hits the 1
- byte limit.
- (b) Modifications to better handle error recovery when conversion by
- h5format_convert fails.
-
- (VC, 2016/05/29, HDFFV-9434)
-
- - Fixed a memory leak where an array used by the library to track SWMR
- read retries was unfreed.
-
- The leaked memory was small (on the order of a few tens of ints) and
- allocated per-file. The memory was allocated (and lost) only when a
- file was opened for SWMR access.
-
- (DER, 2016/04/27, HDFFV-9786)
-
- - Fixed a memory leak that could occur when opening a file for the first
- time (including creating) and the call fails.
-
- This occurred when the file-driver-specific info was not cleaned up.
- The amount of memory leaked varied with the file driver, but would
- normally be less than 1 kB.
-
- (DER, 2016/12/06, HDFFV-10168)
-
- - Fixed a failure in collective metadata writes.
-
- This failure only appeared when collective metadata writes
- were enabled (via H5Pset_coll_metadata_write()).
-
- (JRM, 2017/04/10, HDFFV-10055)
-
-
- Parallel Library
- ----------------
- - Fixed a bug that could occur when allocating a chunked dataset in parallel
- with an alignment set and an alignment threshold greater than the chunk
- size but less than or equal to the raw data aggregator size.
-
- (NAF, 2016/08/11, HDFFV-9969)
-
-
- Configuration
- -------------
- - Configuration will check for the strtoll and strtoull functions
- before using alternatives
-
- (ABD, 2017/03/17, PR#340)
-
- - CMake uses a Windows pdb directory variable if available and
- will generate both static and shared pdb files.
-
- (ABD, 2017/02/06, HDFFV-9875)
-
- - CMake now builds shared versions of tools.
-
- (ABD, 2017/02/01, HDFFV-10123)
-
- - Makefiles and test scripts have been updated to correctly remove files
- created when running "make check" and to avoid removing any files under
- source control. In-source builds followed by "make clean" and "make
- distclean" should result in the original source files.
- (LRK, 2017/01/17, HDFFV-10099)
-
- - The tools directory has been divided into two separate source and test
- directories. This resolves a build dependency and, as a result,
- 'make check' will no longer fail in the tools directory if 'make' was
- not executed first.
-
- (ABD, 2016/10/27, HDFFV-9719)
-
- - CMake: Fixed a timeout error that would occasionally occur when running
- the virtual file driver tests simultaneously due to test directory
- and file name collisions.
-
- (ABD, 2016/09/19, HDFFV-9431)
-
- - CMake: Fixed a command length overflow error by converting custom
- commands inside CMakeTest.cmake files into regular dependencies and
- targets.
-
- (ABD, 2016/07/12, HDFFV-9939)
-
- - Fixed a problem preventing HDF5 to be built on 32-bit CYGWIN by
- condensing cygwin configuration files into a single file and
- removing outdated compiler settings.
-
- (ABD, 2016/07/12, HDFFV-9946)
-
-
- Fortran
- --------
- - Changed H5S_ALL_F from INTEGER to INTEGER(HID_T)
-
- (MSB, 2016/10/14, HDFFV-9987)
-
-
- Tools
- -----
- - h5diff now correctly ignores strpad in comparing strings.
-
- (ABD, 2017/03/03, HDFFV-10128)
-
- - h5repack now correctly parses the command line filter options.
-
- (ABD, 2017/01/24, HDFFV-10046)
-
- - h5diff now correctly returns an error when it cannot read data due
- to an unavailable filter plugin.
-
- (ADB 2017/01/18, HDFFV-9994 )
-
- - Fixed an error in the compiler wrapper scripts (h5cc, h5fc, et al.)
- in which they would erroneously drop the file argument specified via
- the -o flag when the -o flag was specified before the -c flag on the
- command line, resulting in a failure to compile.
-
- (LRK, 2016/11/04, HDFFV-9938, HDFFV-9530)
-
- - h5repack User Defined (UD) filter parameters were not parsed correctly.
-
- The UD filter parameters were not being parsed correctly. Reworked coding
- section to parse the correct values and verify number of parameters.
-
- (ABD, 2016/10/19, HDFFV-9996, HDFFV-9974, HDFFV-9515, HDFFV-9039)
-
- - h5repack allows the --enable-error-stack option on the command line.
-
- (ADB, 2016/08/08, HDFFV-9775)
-
-
- C++ APIs
- --------
- - The member function H5Location::getNumObjs() is moved to
- class Group because the objects are in a group or a file only,
- and H5Object::getNumAttrs to H5Location to get the number of
- attributes at a given location.
-
- (BMR, 2017/03/17, PR#466)
-
- - Due to the change in the C API, the overloaded functions of
- PropList::setProperty now need const for some arguments. They are
- planned for deprecation and are replaced by new versions with proper
- consts.
-
- (BMR, 2017/03/17, PR#344)
-
- - The high-level API Packet Table (PT) did not write data correctly when
- the datatype is a compound type that has string type as one of the
- members. This problem started in 1.8.15, after the fix of HDFFV-9042
- was applied, which caused the Packet Table to use native type to access
- the data. It should be up to the application to specify whether the
- buffer to be read into memory is in the machine's native architecture.
- Thus, the PT is fixed to not use native type but to make a copy of the
- user's provided datatype during creation or the packet table's datatype
- during opening. If an application wishes to use native type to read the
- data, then the application will request that. However, the Packet Table
- doesn't provide a way to specify memory datatype in this release. This
- feature will be available in future releases.
-
- (BMR, 2016/10/27, HDFFV-9758)
-
- - The obsolete macros H5_NO_NAMESPACE and H5_NO_STD have been removed from
- the HDF5 C++ API library.
-
- (BMR, 2016/10/23, HDFFV-9532)
-
- - The problem where a user-defined function cannot access both, attribute
- and dataset, using only one argument is now fixed.
-
- (BMR, 2016/10/11, HDFFV-9920)
-
- - In-memory array information, ArrayType::rank and
- ArrayType::dimensions, were removed. This is an implementation
- detail and should not affect applications.
-
- (BMR, 2016/04/25, HDFFV-9725)
-
-
- Testing
- -------
- - Fixed a problem that caused tests using SWMR to occasionally fail when
- running "make check" using parallel make.
-
- (LRK, 2016/03/22, PR#338, PR#346, PR#358)
-
-
-Supported Platforms
-===================
-
- Linux 2.6.32-573.18.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313
- (Red Hat 4.4.7-4)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-327.10.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Version 4.9.3, Version 5.2.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 15.0.3.187 Build 20150407
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Visual Studio 2015 w/ MSMPI 8 (cmake)
- Cygwin(CYGWIN_NT-6.1 2.8.0(0.309/5/3)
- gcc and gfortran compilers (GCC 5.4.0)
- (cmake and autotools)
-
- Windows 10 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Cygwin(CYGWIN_NT-6.1 2.8.0(0.309/5/3)
- gcc and gfortran compilers (GCC 5.4.0)
- (cmake and autotools)
-
- Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Mac OS X Mt. Lion 10.8.5 Apple clang/clang++ version 5.1 from Xcode 5.1
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (swallow/kite) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Mavericks 10.9.5 Apple clang/clang++ version 6.0 from Xcode 6.2
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (wren/quail) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Yosemite 10.10.5 Apple clang/clang++ version 6.1 from Xcode 7.0
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X El Capitan 10.11.6 Apple clang/clang++ version 7.3 from Xcode 7.3
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 16.0.2
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-Solaris2.11 32-bit n y/y n y y y
-Solaris2.11 64-bit n y/n n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y y y y y
-Windows 7 Cygwin n y/n n y y y
-Windows 7 x64 Cygwin n y/n n y y y
-Windows 10 y y/y n y y y
-Windows 10 x64 y y/y n y y y
-Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
-Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
-Mac OS X Yosemite 10.10.5 64-bit n y/y n y y y
-Mac OS X El Capitan 10.11.6 64-bit n y/y n y y y
-CentOS 7.2 Linux 2.6.32 x86_64 PGI n y/y n y y y
-CentOS 7.2 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 7.2 Linux 2.6.32 x86_64 Intel n y/y n y y y
-Linux 2.6.32-573.18.1.el6.ppc64 n y/y n y y y
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.11 32-bit y y y y
-Solaris2.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 7 x64 Cygwin n n n y
-Windows 10 y y y y
-Windows 10 x64 y y y y
-Mac OS X Mountain Lion 10.8.5 64-bit y n y y
-Mac OS X Mavericks 10.9.5 64-bit y n y y
-Mac OS X Yosemite 10.10.5 64-bit y n y y
-Mac OS X El Capitan 10.11.6 64-bit y n y y
-CentOS 7.2 Linux 2.6.32 x86_64 PGI y y y n
-CentOS 7.2 Linux 2.6.32 x86_64 GNU y y y y
-CentOS 7.2 Linux 2.6.32 x86_64 Intel y y y n
-Linux 2.6.32-573.18.1.el6.ppc64 y y y n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (mayll/platypus) Version 4.4.7 20120313
- Version 4.8.4
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 16.10-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 15.0.3.187 (Build 20150407)
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- Linux 3.10.0-327.18.2.el7 GNU C (gcc) and C++ (g++) compilers
- #1 SMP x86_64 GNU/Linux Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- (jelly) with NAG Fortran Compiler Release 6.1(Tozai)
- Intel(R) C (icc) and C++ (icpc) compilers
- Version 15.0.3.187 (Build 20150407)
- with NAG Fortran Compiler Release 6.1(Tozai)
-
- Linux 2.6.32-573.18.1.el6.ppc64 MPICH mpich 3.1.4 compiled with
- #1 SMP ppc64 GNU/Linux IBM XL C/C++ for Linux, V13.1
- (ostrich) and IBM XL Fortran for Linux, V15.1
-
- Debian 8.4 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1 x86_64 GNU/Linux
- gcc, g++ (Debian 4.9.2-10) 4.9.2
- GNU Fortran (Debian 4.9.2-10) 4.9.2
- (cmake and autotools)
-
- Fedora 24 4.7.2-201.fc24.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc, g++ (GCC) 6.1.1 20160621
- (Red Hat 6.1.1-3)
- GNU Fortran (GCC) 6.1.1 20160621
- (Red Hat 6.1.1-3)
- (cmake and autotools)
-
- Ubuntu 16.04.1 4.4.0-38-generic #57-Ubuntu SMP x86_64 GNU/Linux
- gcc, g++ (Ubuntu 5.4.0-6ubuntu1~16.04.2)
- 5.4.0 20160609
- GNU Fortran (Ubuntu 5.4.0-6ubuntu1~16.04.2)
- 5.4.0 20160609
- (cmake and autotools)
-
-
-Known Problems
-==============
-
- At present, metadata cache images may not be generated by parallel
- applications. Parallel applications can read files with metadata cache
- images, but since this is a collective operation, a deadlock is possible
- if one or more processes do not participate.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-%%%%1.10.0-patch1%%%%
-
-
-HDF5 version 1.10.0-patch1 released on 2016-05-23
-================================================================================
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.8 series and
-HDF5 1.10.0 releases, and contains information on the platforms
-tested.
-
-Links to HDF5 1.10.0 source code can be found on The HDF Group's
-development FTP server at the following location:
-
- https://www.hdfgroup.org/HDF5/release/obtain5110.html
-
-User documentation can be accessed directly at this location:
-
- https://www.hdfgroup.org/HDF5/docNewFeatures/
-
-For more information, see the HDF5 home page:
-
- https://www.hdfgroup.org/HDF5/
-
-If you have any questions or comments, please send them to the HDF
-Help Desk:
-
- help@hdfgroup.org
-
-
-
-CONTENTS
-
-- New Features
-- Issues Addressed in this Release
-- Supported Platforms
-- Tested Configuration Features Summary
-- More Tested Platforms
-- Known Problems and Limitations
-
-
-
-New Features
-============
-This release supports the following features:
-
- Configuration
- -------------
- - API Compatibility with HDF5 1.8 Flag Was Added
-
- The 1.10 version of the HDF5 Library can be configured to operate
- identically to the 1.8 library with the --with-default-api-version=v18
- configure flag. This allows existing code to be compiled with the 1.10
- library without requiring immediate changes to the application source
- code. For additional configuration options and other details, see
- "API Compatibility Macros in HDF5" at
- https://www.hdfgroup.org/HDF5/doc/RM/APICompatMacros.html.
-
- - Autotools Configuration Has Been Extensively Reworked
-
- The autotools configuration options have been updated to allow more
- fine-grained control of the build options and to correct some bugs.
- See configure --help for comprehensive information on each option.
-
- Specific changes:
-
- * --enable-debug and --enable-production are no longer accepted.
- Use --enable-build-mode=(debug | production) instead. These set
- appropriate defaults for symbols, optimizations, and other
- configuration options. These defaults can be overridden by the
- user.
-
- * Extra debug output messages are no longer enabled with
- --enable-debug=. Use --enable-internal-debug=
- instead.
-
- * A new --enable-symbols option allows symbols to be generated
- independently of the build mode. --disable-symbols can be used
- to strip symbols from the binary.
-
- * A new --enable-asserts option sets/unsets NDEBUG. This is
- independent of the build mode. This also enables some extra
- low-overhead debug checks in the library.
-
- * A new --enable-profiling option sets profiling flags. This is
- independent of the build mode.
-
- * A new --enable-optimization option sets the optimization level.
- This is independent of the build mode.
-
- * Many of these options can take a flags string that will be used
- to build the library. This can be useful for specifying custom
- optimization flags such as -Os and -Ofast.
-
- * gnu C++ and Fortran use configure sub-files that update the
- build flags and turn on warnings. The increase in warnings when
- building these wrapper libraries is due to these flag changes
- and not to a decrease in code quality.
-
- * The option to clear file buffers has been removed. Any buffer that
- will eventually be written to disk will now always be memset
- to zero. This prevents the previous contents of the buffer from
- being written to the disk if the buffer contents are not
- completely overwritten, which has security implications.
-
- - LFS Changes
-
- The way the autotools handle large file support (LFS) has been
- overhauled in this release.
-
- * We assume ftello and fseeko exist
-
- * We no longer explicitly use the *64 I/O functions. Instead, we
- rely on a mapping provided by _FILE_OFFSET_BITS or its equivalent.
-
- * _LARGEFILE(64)_SOURCE is no longer exported via AM_CPPFLAGS.
-
-
-
- Parallel Library
- -----------------
- - Collective Metadata I/O
-
- Calls for HDF5 metadata can result in many small reads and writes.
- On metadata reads, collective metadata I/O can improve performance
- by allowing the library to perform optimizations when reading the
- metadata by having one rank read the data and broadcasting it to
- all other ranks.
-
- Collective metadata I/O improves metadata write performance through
- the construction of an MPI derived datatype that is then written
- collectively in a single call. For more information, see
- https://www.hdfgroup.org/HDF5/docNewFeatures/NewFeaturesCollectiveMetadataIoDocs.html.
-
-
-
- Library
- --------
- - Concurrent Access to HDF5 Files - Single Writer/ Multiple Reader (SWMR)
-
- The Single Writer/ Multiple Reader or SWMR feature enables users to
- read data concurrently while writing it. Communications between the
- processes and file locking are not required. The processes can run
- on the same or on different platforms as long as they share a common
- file system that is POSIX compliant. For more information, see the
- Single-Writer/Multiple-Reader (SWMR) documentation at
- https://www.hdfgroup.org/HDF5/docNewFeatures/NewFeaturesSwmrDocs.html.
-
- - Virtual Dataset (VDS)
-
- The VDS feature enables data to be accessed across HDF5 files
- using standard HDF5 objects such as groups and datasets without
- rewriting or rearranging the data. An HDF5 virtual dataset (VDS)
- is an HDF5 dataset that is composed of source HDF5 datasets in
- a predefined mapping. VDS can be used with the SWMR feature. For
- documentation, check
- https://www.hdfgroup.org/HDF5/docNewFeatures/NewFeaturesVirtualDatasetDocs.html.
-
- - Persistent Free File Space Tracking
-
- Usage patterns when working with an HDF5 file sometimes result in
- wasted space within the file. This can also impair access times
- when working with the resulting files. The new file space management
- feature provides strategies for managing space in a file to improve
- performance in both of these areas. For more information, see
- https://www.hdfgroup.org/HDF5/docNewFeatures/NewFeaturesFileSpaceMgmtDocs.html.
-
- - Version 3 Metadata Cache
-
- The version 3 metadata cache moves management of metadata I/O from
- the clients to the metadata cache proper. This change is essential for
- SWMR and other features that have yet to be released.
-
-
-
- C++ Library
- ------------
- - New Member Function Added to H5::ArrayType
-
- The assignment operator ArrayType::operator= was added because
- ArrayType has pointer data members.
-
- (BMR - 2016/03/07, HDFFV-9562)
-
-
-
- Tools
- ------
- - h5watch
-
- The h5watch tool allows users to output new records appended to
- a dataset under SWMR access as it grows. The functionality is
- similar to the Unix user command "tail" with the follow option,
- which outputs appended data as the file grows. For more
- information, see
- https://www.hdfgroup.org/HDF5/docNewFeatures/NewFeaturesSwmrDocs.html#Tools.
-
- - h5format_convert
-
- The h5format_convert tool allows users to convert the indexing
- type of a chunked dataset made with a 1.10.x version of the HDF5
- Library when the latest file format is used to the 1.8.x version 1 B-tree indexing
- type. For example, datasets created using SWMR access, can be
- converted to be accessed by the HDF5 1.18 library and tools. The
- tool does not rewrite raw data, but it does rewrite HDF5 metadata.
-
-
-
- High-Level APIs
- ----------------
- - H5DOappend
-
- The function appends data to a dataset along a specified dimension.
-
-
- C Packet Table API
- ------------------
- - Replacement of a Public Function with H5PTcreate
-
- The existing function H5PTcreate_fl limits applications so they
- can use the deflate compression only. The public function
- H5PTcreate has been added to replace H5PTcreate_fl. H5PTcreate
- takes a property list identifier to provide flexibility on
- creation properties.
-
- (BMR - 2016/03/04, HDFFV-8623)
-
- - New Public Functions: H5PTget_dataset and H5PTget_type
-
- Two accessor functions have been added. H5PTget_dataset returns
- the identifier of the dataset associated with the packet table,
- and H5PTget_type returns the identifier of the datatype used by
- the packet table.
-
- (BMR, 2016/03/04, HDFFV-8623)
-
- - Regarding #ifdef VLPT_REMOVED
-
- The #ifdef VLPT_REMOVED blocks have been removed from the packet
- table (PT) library source except for the following functions:
- + H5PTis_varlen() has been made available again
- + H5PTfree_vlen_readbuff() is now H5PTfree_vlen_buff()
-
- (BMR - 2016/03/04, HDFFV-442)
-
- C++ Packet Table API
- --------------------
- - New Constructor Added to FL_PacketTable
-
- An overloaded constructor has been added to FL_PacketTable and
- takes a property list identifier to provide flexibility on
- creation properties.
-
- (BMR - 2016/03/08, HDFFV-8623)
-
- - New Public Functions
-
- Two accessor wrappers are added to class PacketTable.
- PacketTable::GetDataset() returns the identifier of the dataset
- associated with the packet table, and PacketTable::GetDatatype()
- returns the identifier of the datatype that the packet table uses.
-
- (BMR - 2016/03/04, HDFFV-8623)
-
- - Member Functions with "char*" as an Argument
-
- Overloaded functions were added to provide the "const char*"
- argument; the existing version will be deprecated in future
- releases.
-
- (BMR - 2016/03/04, HDFFV-8623)
-
- - Regarding #ifdef VLPT_REMOVED
-
- The #ifdef VLPT_REMOVED blocks have been removed from the packet
- table library source code except for the following functions:
- + VL_PacketTable::IsVariableLength() was moved to PacketTable
- + VL_PacketTable::FreeReadBuff() is now PacketTable::FreeBuff()
-
- (BMR - 2016/03/04, HDFFV-442)
-
-
-
- Java Wrapper Library
- --------------------
-
- The Java HDF5 JNI library has been integrated into the HDF5 repository.
- The configure option is "--enable-java", and the CMake option is
- HDF5_BUILD_JAVA:BOOL=ON. The package hierarchy has changed from the
- HDF5 1.8 JNI, which was "ncsa.hdf.hdflib.hdf5", to HDF5 1.10,
- "hdf.hdflib.hdf5".
-
- A number of new APIs were added including some for VDS and SWMR.
-
-
-
- Other Important Changes
- -----------------------
-
- The hid_t type was changed from 32-bit to a 64-bit value.
-
-
-
-Issues Addressed in this Release Since 1.10.0
-=============================================
-
- - h5diff would return from a compare attributes abnormally if one of the datatypes
- was a vlen. This resulted in a memory leak as well as an incorrect report of
- attribute comparison.
-
- Fixed.
- (ADB - 2016/04/26, HDFFV-9784)
-
- - The JUnit-interface test may fail on Solaris platforms. The result of
- a test for verifying the content of the error stack to stdout is
- in a different order on Solaris then other platforms.
-
- This test is skipped on Solaris
- (ADB - 2016/04/21, HDFFV-9734)
-
- - When building HDF5 with Java using CMake and specifying Debug for CMAKE_BUILD_TYPE,
- there was a missing command argument for the tests of the examples.
-
- Fixed.
- (ADB - 2016/04/21, HDFFV-9743)
-
- - Changed h5diff to print a warning when a dataset is virtual, enabling
- the data to be compared. In addition h5repack failed to copy the data
- of a virtual dataset to the new file. Function H5D__get_space_status changed
- to correctly determine the H5D_space_status_t allocation value.
-
- CMake added the Fixed Array indexing tests that were only in the autotools
- test scripts.
-
- Fixed and tests added for vds issues.
- (ADB,NAF - 2016/04/21, HDFFV-9756)
-
- - CMake added the h5format_convert tool and tests that were only in the autotools
- build and test scripts. The autotools test script was reworked to allow CMake
- to execute the test suite in parallel.
-
- Also, h5clear tool and tests were added to the misc folder.
-
- Fixed.
- (ADB - 2016/04/21, HDFFV-9766)
-
- - CMake added the h5watch tool and argument tests that were only in the autotools
- build and test scripts. The POSIX only tests were not added to CMake.
-
- CMake HL tools files were refactored to move the CMake test scripts into each tool folder.
-
- Fixed.
- (ADB - 2016/04/21, HDFFV-9770)
-
- - Configure fails to detect valid real KINDs on FreeBSD 9.3 (i386) with Fortran enabled.
-
- Fixed. Added the exponential option to SELECTED_REAL_KIND to distinguish
- KINDs of same precision
- (MSB - 2016/05/14,HDFFV-9912)
-
-
- - Corrected the f90 H5AWRITE_F integer interface's buf to be INTENT(IN).
- (MSB - 2016/05/14)
-
- - Configure fails in sed command on FreeBSD 9.3 (i386) with Fortran enabled.
-
- Fixed.
- (MSB - 2016/05/14,HDFFV-9912)
-
- - Compile time error in H5f90global.F90 with IBM XL Fortran 14.1.0.13 on BG/Q with Fortran
- enabled.
-
- Fixed.
- (MSB - 2016/05/16,HDFFV-9917)
-
- - A cmake build with Fortran enabled does not install module h5fortkit
-
- Fixed.
- (MSB - 2016/05/23,HDFFV-9923)
-
-
-Issues Addressed in this Release Since alpha1
-=============================================
-
- - H5Pget_virtual_printf_gap, H5Pget_virtual_view, H5Pget_efile_prefix
-
- The correct access property list settings from the
- H5Pget_virtual_printf_gap, H5Pget_virtual_view, and
- H5Pget_efile_prefix function calls could not be retrieved
- using H5Dget_access_plist().
-
- Fixed.
-
- (DER and NAF - 2016/03/14, HDFFV-9716)
-
- - h5dump
-
- When h5dump was provided with the name of a non-existing file or
- when optional arguments were the last option on the command line,
- h5dump would segfault.
-
- Fixed.
-
- (ADB 2016/02/28 HDFFV-9639, HDFFV-9684)
-
- - No Error Message for Corrupt Metadata
-
- The HDF5 Library did not propagate an error when it encountered
- corrupt metadata in an HDF5 file. The issue was fixed for a
- specific file provided by a user. If you still see the problem,
- please contact help@hdfgroup.org
-
- Fixed.
-
- (MC - 2016/02/18, HDFFV-9670)
-
- - Problem Reading Chunked Datasets with a String Datatype Larger
- Than the Chunk Size in Bytes
-
- When the latest file format was used and when a chunked dataset
- was created with a datatype with the size bigger than a chunk
- size, the data could not be read back. The issue was reported
- for chunked datasets with a string datatype and was confirmed
- for other datatypes with the sizes bigger than the chunk size in
- bytes.
-
- Fixed.
-
- (JM - 2016/02/13, HDFFV-9672)
-
- - Control over the Location of External Files
-
- Users were unable to specify the locations of external files.
-
- Two APIs - H5Pget_efile_prefix and H5Pset_efile_prefix - were
- added so that users could specify the locations of external files.
-
- (DER - 2016/02/04, HDFFV-8740)
-
-
-
-Issues Addressed in this Release Since alpha0
-=============================================
- - h5format_convert
-
- The h5format_convert tool did not downgrade the version of the
- superblock.
-
- Fixed. The tool now will downgrade the version of the superblock.
-
- (EIP 2016/01/11)
-
- - Crashes with multiple threads: invalid pointers
-
- It was reported that alpha0 crashed when used with multiple
- threads. The issue exists in the HDF5 Library versions 1.8 and
- 1.9. The problem is related to a shared file pointer used in some
- miscellaneous data structures. The thread-safe library exposed
- paths in the library where a file pointer became invalid.
-
- The alpha1 release contains the fixes for the specific use case
- as described in HDFFV-9643. We will keep working on identifying
- and fixing other paths in the library with similar problems.
-
- (EIP - 2016/01/15, HDFFV-9643)
-
-
-
-Supported Platforms
-===================
-The following platforms are supported and have been tested for this release.
-They are built with the configure process unless specified otherwise.
-
- AIX 6.1 xlc/xlc_r 10.1.0.5
- (NASA G-ADA) xlC/xlC_r 10.1.0.5
- xlf90/xlf90_r 12.1.0.6
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (mayll/platypus) Version 4.4.7 20120313 (Red Hat 4.4.7-16)
- Version 4.9.3, Version 5.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 15.7-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 15.0.3.187 Build 20150407
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- Linux 2.6.32-573.18.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-327.10.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Version 4.9.3, Version 5.2.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 15.0.3.187 Build 20150407
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Cygwin(CYGWIN_NT-6.1 2.2.1(0.289/5/3) gcc(4.9.3) compiler and gfortran)
- (cmake and autotools)
-
- Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 8.1 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Mac OS X Mt. Lion 10.8.5 Apple clang/clang++ version 5.1 from Xcode 5.1
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (swallow/kite) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Mavericks 10.9.5 Apple clang/clang++ version 6.0 from Xcode 6.2
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (wren/quail) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Yosemite 10.10.5 Apple clang/clang++ version 6.0 from Xcode 7.0
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X El Capitan 10.11.4 Apple clang/clang++ version 7.3.0 from Xcode 7.3
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-SunOS 5.11 32-bit n y/y n y y y
-SunOS 5.11 64-bit n y/y n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y n y y y
-Windows 7 Cygwin n y/y n y y n
-Windows 8.1 n y/y n y y y
-Windows 8.1 x64 n y/y n y y y
-Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
-Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
-Mac OS X Yosemeti 10.10.5 64-bit n y/y n y y y
-AIX 6.1 32- and 64-bit n y/n n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel n y/y n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI n y/y n y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y/y y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel n y/y n y y y
-Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-SunOS 5.11 32-bit y y y y
-SunOS 5.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 8.1 y y y y
-Windows 8.1 x64 y y y y
-Mac OS X Mountain Lion 10.8.5 64-bit y n y y
-Mac OS X Mavericks 10.9.5 64-bit y n y y
-Mac OS X Yosemeti 10.10.5 64-bit y n y y
-AIX 6.1 32- and 64-bit y n n y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel y y y y
-Linux 2.6.32-431.11.2.el6.ppc64 y y y y
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.18-431.11.2.el6 g95 (GCC 4.0.3 (g95 0.94!)
- #1 SMP x86_64 GNU/Linux
- (platypus)
-
- Windows 7 Visual Studio 2008 (cmake)
-
- Windows 7 x64 Visual Studio 2008 (cmake)
-
- Windows 7 x64 Visual Studio 2010 (cmake) with SWMR using GPFS
-
- Windows 10 Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Windows 10 x64 Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Debian7.5.0 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
- gcc (Debian 4.7.2-5) 4.7.2
- GNU Fortran (Debian 4.7.2-5) 4.7.2
- (cmake and autotools)
-
- Fedora20 3.15.3-200.fc20.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
- GNU Fortran (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
- (cmake and autotools)
-
- SUSE 13.1 3.11.10-17-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.8.1
- GNU Fortran (SUSE Linux) 4.8.1
- (cmake and autotools)
-
- Ubuntu 14.04 3.13.0-35-generic #62-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
- GNU Fortran (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
- (cmake and autotools)
-
- hopper.nersc.gov PrgEnv-gnu/5.2.40
- gcc (GCC) 4.9.2 20141030 (Cray Inc.)
- GNU Fortran (GCC) 4.9.2 20141030 (Cray Inc.)
- g++ (GCC) 4.9.2 20141030 (Cray Inc.)
-
-
-
-Known Problems and Limitations
-==============================
-This section contains the list of known problems and limitations introduced
-in this release of HDF5.
-
-Note: this list is not exhaustive of all known issues discovered in HDF5
-software to date. For a list of significant problems and known workarounds
-identified in past releases, please refer to:
-
-https://www.hdfgroup.org/HDF5/release/known_problems/
-
-The HDF Group also maintains a JIRA issue-tracking database which is used to
-capture all known issues which are too numerous to reasonably list in this
-document. The HDF Group is taking steps to make our JIRA issue database
-open to the public, and this section will refer to that database in a future
-release. In the meantime, please contact help@hdfgroup.org if you come across
-an issue not listed here or at the link above, and we will provide any
-information about known workarounds that we have or add it to our list of
-known issues if it is a new issue.
-
- - The flush/refresh test occasionally fails on OS X platforms. This is
- being investigated but no fix or workaround is available at this time.
- (DER - 2016/03/22, HDFFV-9731)
-
- - The VDS/SWMR test will fail with a segmentation fault if the library
- is built with --enable-using-memchecker. The is due to a VDS shutdown
- procedure freeing a shared resource too early when the memory
- checker changes are built. This problem does not arise when the
- memory checker changes are not used since the internal library free
- lists behave differently. The memory checker configure option should
- normally only be used under special circumstances so this should not
- affect most users. Users should be aware that the --enable-using-memchecker
- + VDS combination may cause a segfault, however, so Valgrind et al. may
- have to be used with an HDF5 library built without the feature if this
- proves to be a problem.
- (DER - 2016/03/21, HDFFV-9732)
-
- - SWMR feature limitations
- The SWMR feature will only work if an HDF5 file under SWMR access resides
- on a file system that obeys POSIX write() ordering semantics. Because of
- this, SWMR will not work on network file systems such as NFS or SMB/Windows
- file shares since those systems do not guarantee write odering. SWMR
- regression tests are likely to fail if run on a network file system. SWMR
- is currently not tested on Windows though it can be tested manually
- (some of the SWMR test programs are built by CMake), and there are no
- obvious reasons for it to not work on NTFS or GPFS.
- (EIP - 2016/03/20, HDFFV-9733)
-
- - VDS feature limitation
- Currently, the path to a VDS source file is interpreted as relative to the
- directory where the executable program runs and not to the HDF5 file with
- the VDS dataset unless a full path to the source file is specified during
- the mapping.
- (EIP - 2016/03/20, HDFFV-9724)
-
- - The H5Lexists API changed behavior in HDF5-1.10 when used with a file handle
- and root group name ("/"):
-
- H5Lexists(fileid, "/")
-
- In HDF5-1.8 it returns false (0) and in HDF5-1.10 it returns true (1).
- The documentation will be updated with information regarding this change.
- (LRK - 2016/03/30, HDFFV-8746)
-
-
-%%%%1.10.0%%%%
-
-HDF5 version 1.10.0 released on 2016-03-30
-================================================================================
-
-
-
-INTRODUCTION
-
-This document describes the differences between HDF5-1.8 series and
-HDF5 1.10.0 releases, and contains information on the platforms
-tested.
-
-Links to HDF5 1.10.0 source code can be found on The HDF Group's
-development FTP server at the following location:
-
- https://www.hdfgroup.org/HDF5/release/obtain5110.html
-
-User documentation can be accessed directly at this location:
-
- https://www.hdfgroup.org/HDF5/docNewFeatures/
-
-For more information, see the HDF5 home page:
-
- https://www.hdfgroup.org/HDF5/
-
-If you have any questions or comments, please send them to the HDF
-Help Desk:
-
- help@hdfgroup.org
-
-
-
-CONTENTS
-
-- New Features
-- Issues Addressed in this Release
-- Supported Platforms
-- Tested Configuration Features Summary
-- More Tested Platforms
-- Known Problems and Limitations
-
-
-
-New Features
-============
-This release supports the following features:
-
- Configuration
- -------------
- - API Compatibility with HDF5 1.8 Flag Was Added
-
- The 1.10 version of the HDF5 Library can be configured to operate
- identically to the 1.8 library with the --with-default-api-version=v18
- configure flag. This allows existing code to be compiled with the 1.10
- library without requiring immediate changes to the application source
- code. For additional configuration options and other details, see
- "API Compatibility Macros in HDF5" at
- https://www.hdfgroup.org/HDF5/doc/RM/APICompatMacros.html.
-
- - Autotools Configuration Has Been Extensively Reworked
-
- The autotools configuration options have been updated to allow more
- fine-grained control of the build options and to correct some bugs.
- See configure --help for comprehensive information on each option.
-
- Specific changes:
-
- * --enable-debug and --enable-production are no longer accepted.
- Use --enable-build-mode=(debug | production) instead. These set
- appropriate defaults for symbols, optimizations, and other
- configuration options. These defaults can be overridden by the
- user.
-
- * Extra debug output messages are no longer enabled with
- --enable-debug=. Use --enable-internal-debug=
- instead.
-
- * A new --enable-symbols option allows symbols to be generated
- independently of the build mode. --disable-symbols can be used
- to strip symbols from the binary.
-
- * A new --enable-asserts option sets/unsets NDEBUG. This is
- independent of the build mode. This also enables some extra
- low-overhead debug checks in the library.
-
- * A new --enable-profiling option sets profiling flags. This is
- independent of the build mode.
-
- * A new --enable-optimization option sets the optimization level.
- This is independent of the build mode.
-
- * Many of these options can take a flags string that will be used
- to build the library. This can be useful for specifying custom
- optimization flags such as -Os and -Ofast.
-
- * gnu C++ and Fortran use configure sub-files that update the
- build flags and turn on warnings. The increase in warnings when
- building these wrapper libraries is due to these flag changes
- and not to a decrease in code quality.
-
- * The option to clear file buffers has been removed. Any buffer that
- will eventually be written to disk will now always be memset
- to zero. This prevents the previous contents of the buffer from
- being written to the disk if the buffer contents are not
- completely overwritten, which has security implications.
-
- - LFS Changes
-
- The way the autotools handle large file support (LFS) has been
- overhauled in this release.
-
- * We assume ftello and fseeko exist
-
- * We no longer explicitly use the *64 I/O functions. Instead, we
- rely on a mapping provided by _FILE_OFFSET_BITS or its equivalent.
-
- * _LARGEFILE(64)_SOURCE is no longer exported via AM_CPPFLAGS.
-
-
-
- Parallel Library
- -----------------
- - Collective Metadata I/O
-
- Calls for HDF5 metadata can result in many small reads and writes.
- On metadata reads, collective metadata I/O can improve performance
- by allowing the library to perform optimizations when reading the
- metadata by having one rank read the data and broadcasting it to
- all other ranks.
-
- Collective metadata I/O improves metadata write performance through
- the construction of an MPI derived datatype that is then written
- collectively in a single call. For more information, see
- https://www.hdfgroup.org/HDF5/docNewFeatures/NewFeaturesCollectiveMetadataIoDocs.html.
-
-
-
- Library
- --------
- - Concurrent Access to HDF5 Files - Single Writer/ Multiple Reader (SWMR)
-
- The Single Writer/ Multiple Reader or SWMR feature enables users to
- read data concurrently while writing it. Communications between the
- processes and file locking are not required. The processes can run
- on the same or on different platforms as long as they share a common
- file system that is POSIX compliant. For more information, see the
- Single-Writer/Multiple-Reader (SWMR) documentation at
- https://www.hdfgroup.org/HDF5/docNewFeatures/NewFeaturesSwmrDocs.html.
-
- - Virtual Dataset (VDS)
-
- The VDS feature enables data to be accessed across HDF5 files
- using standard HDF5 objects such as groups and datasets without
- rewriting or rearranging the data. An HDF5 virtual dataset (VDS)
- is an HDF5 dataset that is composed of source HDF5 datasets in
- a predefined mapping. VDS can be used with the SWMR feature. For
- documentation, check
- https://www.hdfgroup.org/HDF5/docNewFeatures/NewFeaturesVirtualDatasetDocs.html.
-
- - Persistent Free File Space Tracking
-
- Usage patterns when working with an HDF5 file sometimes result in
- wasted space within the file. This can also impair access times
- when working with the resulting files. The new file space management
- feature provides strategies for managing space in a file to improve
- performance in both of these areas. For more information, see
- https://www.hdfgroup.org/HDF5/docNewFeatures/NewFeaturesFileSpaceMgmtDocs.html.
-
- - Version 3 Metadata Cache
-
- The version 3 metadata cache moves management of metadata I/O from
- the clients to the metadata cache proper. This change is essential for
- SWMR and other features that have yet to be released.
-
-
-
- C++ Library
- ------------
- - New Member Function Added to H5::ArrayType
-
- The assignment operator ArrayType::operator= was added because
- ArrayType has pointer data members.
-
- (BMR - 2016/03/07, HDFFV-9562)
-
-
-
- Tools
- ------
- - h5watch
-
- The h5watch tool allows users to output new records appended to
- a dataset under SWMR access as it grows. The functionality is
- similar to the Unix user command "tail" with the follow option,
- which outputs appended data as the file grows. For more
- information, see
- https://www.hdfgroup.org/HDF5/docNewFeatures/NewFeaturesSwmrDocs.html#Tools.
-
- - h5format_convert
-
- The h5format_convert tool allows users to convert the indexing
- type of a chunked dataset made with a 1.10.x version of the HDF5
- Library when the latest file format is used to the 1.8.x version 1 B-tree indexing
- type. For example, datasets created using SWMR access, can be
- converted to be accessed by the HDF5 1.18 library and tools. The
- tool does not rewrite raw data, but it does rewrite HDF5 metadata.
-
-
-
- High-Level APIs
- ----------------
- - H5DOappend
-
- The function appends data to a dataset along a specified dimension.
-
-
- C Packet Table API
- ------------------
- - Replacement of a Public Function with H5PTcreate
-
- The existing function H5PTcreate_fl limits applications so they
- can use the deflate compression only. The public function
- H5PTcreate has been added to replace H5PTcreate_fl. H5PTcreate
- takes a property list identifier to provide flexibility on
- creation properties.
-
- (BMR - 2016/03/04, HDFFV-8623)
-
- - New Public Functions: H5PTget_dataset and H5PTget_type
-
- Two accessor functions have been added. H5PTget_dataset returns
- the identifier of the dataset associated with the packet table,
- and H5PTget_type returns the identifier of the datatype used by
- the packet table.
-
- (BMR, 2016/03/04, HDFFV-8623)
-
- - Regarding #ifdef VLPT_REMOVED
-
- The #ifdef VLPT_REMOVED blocks have been removed from the packet
- table (PT) library source except for the following functions:
- + H5PTis_varlen() has been made available again
- + H5PTfree_vlen_readbuff() is now H5PTfree_vlen_buff()
-
- (BMR - 2016/03/04, HDFFV-442)
-
- C++ Packet Table API
- --------------------
- - New Constructor Added to FL_PacketTable
-
- An overloaded constructor has been added to FL_PacketTable and
- takes a property list identifier to provide flexibility on
- creation properties.
-
- (BMR - 2016/03/08, HDFFV-8623)
-
- - New Public Functions
-
- Two accessor wrappers are added to class PacketTable.
- PacketTable::GetDataset() returns the identifier of the dataset
- associated with the packet table, and PacketTable::GetDatatype()
- returns the identifier of the datatype that the packet table uses.
-
- (BMR - 2016/03/04, HDFFV-8623)
-
- - Member Functions with "char*" as an Argument
-
- Overloaded functions were added to provide the "const char*"
- argument; the existing version will be deprecated in future
- releases.
-
- (BMR - 2016/03/04, HDFFV-8623)
-
- - Regarding #ifdef VLPT_REMOVED
-
- The #ifdef VLPT_REMOVED blocks have been removed from the packet
- table library source code except for the following functions:
- + VL_PacketTable::IsVariableLength() was moved to PacketTable
- + VL_PacketTable::FreeReadBuff() is now PacketTable::FreeBuff()
-
- (BMR - 2016/03/04, HDFFV-442)
-
-
-
- Java Wrapper Library
- --------------------
-
- The Java HDF5 JNI library has been integrated into the HDF5 repository.
- The configure option is "--enable-java", and the CMake option is
- HDF5_BUILD_JAVA:BOOL=ON. The package hierarchy has changed from the
- HDF5 1.8 JNI, which was "ncsa.hdf.hdflib.hdf5", to HDF5 1.10,
- "hdf.hdflib.hdf5".
-
- A number of new APIs were added including some for VDS and SWMR.
-
-
-
- Other Important Changes
- -----------------------
-
- The hid_t type was changed from 32-bit to a 64-bit value.
-
-
-
-Issues Addressed in this Release Since alpha1
-=============================================
-
- - H5Pget_virtual_printf_gap, H5Pget_virtual_view, H5Pget_efile_prefix
-
- The correct access property list settings from the
- H5Pget_virtual_printf_gap, H5Pget_virtual_view, and
- H5Pget_efile_prefix function calls could not be retrieved
- using H5Dget_access_plist().
-
- Fixed.
-
- (DER and NAF - 2016/03/14, HDFFV-9716)
-
- - h5dump
-
- When h5dump was provided with the name of a non-existing file or
- when optional arguments were the last option on the command line,
- h5dump would segfault.
-
- Fixed.
-
- (ADB 2016/02/28 HDFFV-9639, HDFFV-9684)
-
- - No Error Message for Corrupt Metadata
-
- The HDF5 Library did not propagate an error when it encountered
- corrupt metadata in an HDF5 file. The issue was fixed for a
- specific file provided by a user. If you still see the problem,
- please contact help@hdfgroup.org
-
- Fixed.
-
- (MC - 2016/02/18, HDFFV-9670)
-
- - Problem Reading Chunked Datasets with a String Datatype Larger
- Than the Chunk Size in Bytes
-
- When the latest file format was used and when a chunked dataset
- was created with a datatype with the size bigger than a chunk
- size, the data could not be read back. The issue was reported
- for chunked datasets with a string datatype and was confirmed
- for other datatypes with the sizes bigger than the chunk size in
- bytes.
-
- Fixed.
-
- (JM - 2016/02/13, HDFFV-9672)
-
- - Control over the Location of External Files
-
- Users were unable to specify the locations of external files.
-
- Two APIs - H5Pget_efile_prefix and H5Pset_efile_prefix - were
- added so that users could specify the locations of external files.
-
- (DER - 2016/02/04, HDFFV-8740)
-
-
-
-Issues Addressed in this Release Since alpha0
-=============================================
- - h5format_convert
-
- The h5format_convert tool did not downgrade the version of the
- superblock.
-
- Fixed. The tool now will downgrade the version of the superblock.
-
- (EIP 2016/01/11)
-
- - Crashes with multiple threads: invalid pointers
-
- It was reported that alpha0 crashed when used with multiple
- threads. The issue exists in the HDF5 Library versions 1.8 and
- 1.9. The problem is related to a shared file pointer used in some
- miscellaneous data structures. The thread-safe library exposed
- paths in the library where a file pointer became invalid.
-
- The alpha1 release contains the fixes for the specific use case
- as described in HDFFV-9643. We will keep working on identifying
- and fixing other paths in the library with similar problems.
-
- (EIP - 2016/01/15, HDFFV-9643)
-
-
-
-Supported Platforms
-===================
-The following platforms are supported and have been tested for this release.
-They are built with the configure process unless specified otherwise.
-
- AIX 6.1 xlc/xlc_r 10.1.0.5
- (NASA G-ADA) xlC/xlC_r 10.1.0.5
- xlf90/xlf90_r 12.1.0.6
-
- Linux 2.6.32-573.18.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (mayll/platypus) Version 4.4.7 20120313 (Red Hat 4.4.7-16)
- Version 4.9.3, Version 5.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 15.7-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 15.0.3.187 Build 20150407
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- Linux 2.6.32-504.8.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-327.10.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Version 4.9.3, Version 5.2.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 15.0.3.187 Build 20150407
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Cygwin(CYGWIN_NT-6.1 2.2.1(0.289/5/3) gcc(4.9.3) compiler and gfortran)
- (cmake and autotools)
-
- Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 8.1 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Mac OS X Mt. Lion 10.8.5 Apple clang/clang++ version 5.1 from Xcode 5.1
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (swallow/kite) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Mavericks 10.9.5 Apple clang/clang++ version 6.0 from Xcode 6.2.0
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (wren/quail) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Yosemite 10.10.5 Apple clang/clang++ version 6.0 from Xcode 7.0.0
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X El Capitan 10.11.3 Apple clang/clang++ version 7.0.2 from Xcode 7.0.2
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-SunOS 5.11 32-bit n y/y n y y y
-SunOS 5.11 64-bit n y/y n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y n y y y
-Windows 7 Cygwin n y/y n y y n
-Windows 8.1 n y/y n y y y
-Windows 8.1 x64 n y/y n y y y
-Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
-Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
-Mac OS X Yosemeti 10.10.5 64-bit n y/y n y y y
-AIX 6.1 32- and 64-bit n y/n n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel n y/y n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI n y/y n y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y/y y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel n y/y n y y y
-Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-SunOS 5.11 32-bit y y y y
-SunOS 5.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 8.1 y y y y
-Windows 8.1 x64 y y y y
-Mac OS X Mountain Lion 10.8.5 64-bit y n y y
-Mac OS X Mavericks 10.9.5 64-bit y n y y
-Mac OS X Yosemeti 10.10.5 64-bit y n y y
-AIX 6.1 32- and 64-bit y n n y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel y y y y
-Linux 2.6.32-431.11.2.el6.ppc64 y y y y
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.18-431.11.2.el6 g95 (GCC 4.0.3 (g95 0.94!)
- #1 SMP x86_64 GNU/Linux
- (platypus)
-
- Windows 7 Visual Studio 2008 (cmake)
-
- Windows 7 x64 Visual Studio 2008 (cmake)
-
- Windows 7 x64 Visual Studio 2010 (cmake) with SWMR using GPFS
-
- Windows 10 Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Windows 10 x64 Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Debian7.5.0 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
- gcc (Debian 4.7.2-5) 4.7.2
- GNU Fortran (Debian 4.7.2-5) 4.7.2
- (cmake and autotools)
-
- Fedora20 3.15.3-200.fc20.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
- GNU Fortran (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
- (cmake and autotools)
-
- SUSE 13.1 3.11.10-17-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.8.1
- GNU Fortran (SUSE Linux) 4.8.1
- (cmake and autotools)
-
- Ubuntu 14.04 3.13.0-35-generic #62-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
- GNU Fortran (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
- (cmake and autotools)
-
- hopper.nersc.gov PrgEnv-gnu/5.2.40
- gcc (GCC) 4.9.2 20141030 (Cray Inc.)
- GNU Fortran (GCC) 4.9.2 20141030 (Cray Inc.)
- g++ (GCC) 4.9.2 20141030 (Cray Inc.)
-
-
-
-Known Problems and Limitations
-==============================
-This section contains the list of known problems and limitations introduced
-in this release of HDF5.
-
-Note: this list is not exhaustive of all known issues discovered in HDF5
-software to date. For a list of significant problems and known workarounds
-identified in past releases, please refer to:
-
-https://www.hdfgroup.org/HDF5/release/known_problems/
-
-The HDF Group also maintains a JIRA issue-tracking database which is used to
-capture all known issues which are too numerous to reasonably list in this
-document. The HDF Group is taking steps to make our JIRA issue database
-open to the public, and this section will refer to that database in a future
-release. In the meantime, please contact help@hdfgroup.org if you come across
-an issue not listed here or at the link above, and we will provide any
-information about known workarounds that we have or add it to our list of
-known issues if it is a new issue.
-
- - The JUnit-interface test may fail on Solaris platforms. The result of
- a test for verifying the content of the error stack to stdout is
- in a different order on Solaris then other platforms. Use make -i option
- to test beyond the java/test folder.
- (ADB - 2016/03/22, HDFFV-9734)
-
- - The flush/refresh test occasionally fails on OS X platforms. This is
- being investigated but no fix or workaround is available at this time.
- (DER - 2016/03/22, HDFFV-9731)
-
- - The VDS/SWMR test will fail with a segmentation fault if the library
- is built with --enable-using-memchecker. The is due to a VDS shutdown
- procedure freeing a shared resource too early when the memory
- checker changes are built. This problem does not arise when the
- memory checker changes are not used since the internal library free
- lists behave differently. The memory checker configure option should
- normally only be used under special circumstances so this should not
- affect most users. Users should be aware that the --enable-using-memchecker
- + VDS combination may cause a segfault, however, so Valgrind et al. may
- have to be used with an HDF5 library built without the feature if this
- proves to be a problem.
- (DER - 2016/03/21, HDFFV-9732)
-
- - SWMR feature limitations
- The SWMR feature will only work if an HDF5 file under SWMR access resides
- on a file system that obeys POSIX write() ordering semantics. Because of
- this, SWMR will not work on network file systems such as NFS or SMB/Windows
- file shares since those systems do not guarantee write odering. SWMR
- regression tests are likely to fail if run on a network file system. SWMR
- is currently not tested on Windows though it can be tested manually
- (some of the SWMR test programs are built by CMake), and there are no
- obvious reasons for it to not work on NTFS or GPFS.
- (EIP - 2016/03/20, HDFFV-9733)
-
- - VDS feature limitation
- Currently, the path to a VDS source file is interpreted as relative to the
- directory where the executable program runs and not to the HDF5 file with
- the VDS dataset unless a full path to the source file is specified during
- the mapping.
- (EIP - 2016/03/20, HDFFV-9724)
-
- - When building HDF5 with Java using CMake and specifying Debug for CMAKE_BUILD_TYPE,
- there is a missing command argument for the tests of the examples.
-
- This error can be avoided by not building Java with Debug, HDF5_BUILD_JAVA:BOOL=OFF,
- or not building Examples, HDF5_BUILD_EXAMPLES:BOOL=OFF.
- (LRK - 2016/03/30, HDFFV-9743)
-
- - The H5Lexists API changed behavior in HDF5-1.10 when used with a file handle
- and root group name ("/"):
-
- H5Lexists(fileid, "/")
-
- In HDF5-1.8 it returns false (0) and in HDF5-1.10 it returns true (1).
- The documentation will be updated with information regarding this change.
- (LRK - 2016/03/30, HDFFV-8746)
-
diff --git a/release_docs/HISTORY-1_12.txt b/release_docs/HISTORY-1_12.txt
deleted file mode 100644
index 6d0c1e2..0000000
--- a/release_docs/HISTORY-1_12.txt
+++ /dev/null
@@ -1,628 +0,0 @@
-HDF5 History
-============
-
-This file contains development history of the HDF5 1.12 branch
-
-01. Release Information for hdf5-1.12.0
-
-[Search on the string '%%%%' for section breaks of each release.]
-
-%%%%1.12.0%%%%
-
-HDF5 version 1.12.0 released on 2020-02-28
-================================================================================
-
-
-INTRODUCTION
-
-This document describes the new features introduced in the HDF5 1.12.0 release.
-It contains information on the platforms tested and known problems in this
-release. For more details check the HISTORY*.txt files in the HDF5 source.
-
-Note that documentation in the links below will be updated at the time of the
-release.
-
-Links to HDF5 documentation can be found on The HDF5 web page:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5
-
-The official HDF5 releases can be obtained from:
-
- https://www.hdfgroup.org/downloads/hdf5/
-
-More information about the new features can be found at:
-
- https://portal.hdfgroup.org/display/HDF5/New+Features+in+HDF5+Release+1.12
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.12.0-alpha1
-- Major Bug Fixes since HDF5-1.10.0
-- Supported Platforms
-- Tested Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-- CMake vs. Autotools installations
-
-
-New Features
-============
-
- Configuration:
- -------------
- - Added test script for file size compare
-
- If CMake minimum version is at least 3.14, the fileCompareTest.cmake
- script will compare file sizes.
-
- (ADB - 2020/02/24, HDFFV-11036)
-
- - Update CMake minimum version to 3.12
-
- Updated CMake minimum version to 3.12 and added version checks
- for Windows features.
-
- (ADB - 2020/02/05, TRILABS-142)
-
- - Fixed CMake include properties for Fortran libraries
-
- Corrected the library properties for Fortran to use the
- correct path for the Fortran module files.
-
- (ADB - 2020/02/04, HDFFV-11012)
-
- - Added common warnings files for gnu and intel
-
- Added warnings files to use one common set of flags
- during configure for both autotools and CMake build
- systems. The initial implementation only affects a
- general set of flags for gnu and intel compilers.
-
- (ADB - 2020/01/17)
-
- - Added new options to CMake for control of testing
-
- Added CMake options (default ON);
- HDF5_TEST_SERIAL AND/OR HDF5_TEST_PARALLEL
- combined with:
- HDF5_TEST_TOOLS
- HDF5_TEST_EXAMPLES
- HDF5_TEST_SWMR
- HDF5_TEST_FORTRAN
- HDF5_TEST_CPP
- HDF5_TEST_JAVA
-
- (ADB - 2020/01/15, HDFFV-11001)
-
- - Added Clang sanitizers to CMake for analyzer support if compiler is clang.
-
- Added CMake code and files to execute the Clang sanitizers if
- HDF5_ENABLE_SANITIZERS is enabled and the USE_SANITIZER option
- is set to one of the following:
- Address
- Memory
- MemoryWithOrigins
- Undefined
- Thread
- Leak
- 'Address;Undefined'
-
- (ADB - 2019/12/12, TRILAB-135)
-
- - Update CMake for VS2019 support
-
- CMake added support for VS2019 in version 3.15. Changes to the CMake
- generator setting required changes to scripts. Also updated version
- references in CMake files as necessary.
-
- (ADB - 2019/11/18, HDFFV-10962)
-
-
- Library:
- --------
- - Refactored public exposure of haddr_t type in favor of "object tokens"
-
- To better accommodate HDF5 VOL connectors where "object addresses in a file"
- may not make much sense, the following changes were made to the library:
-
- * Introduced new H5O_token_t "object token" type, which represents a
- unique and permanent identifier for referencing an HDF5 object within
- a container; these "object tokens" are meant to replace object addresses.
- Along with the new type, a new H5Oopen_by_token API call was introduced
- to open an object by a token, similar to how object addresses were
- previously used with H5Oopen_by_addr.
-
- * Introduced new H5Lget_info2, H5Lget_info_by_idx2, H5Literate2, H5Literate_by_name2,
- H5Lvisit2 and H5Lvisit_by_name2 API calls, along with their associated H5L_info2_t
- struct and H5L_iterate2_t callback function, which work with the newly-introduced
- object tokens, instead of object addresses. The original functions have been
- renamed to version 1 functions and are deprecated in favor of the new version 2
- functions. The H5L_info_t and H5L_iterate_t types have been renamed to version 1
- types and are now deprecated in favor of their version 2 counterparts. For each of
- the functions and types, compatibility macros take place of the original symbols.
-
- * Introduced new H5Oget_info3, H5Oget_info_by_name3, H5Oget_info_by_idx3,
- H5Ovisit3 and H5Ovisit_by_name3 API calls, along with their associated H5O_info2_t
- struct and H5O_iterate2_t callback function, which work with the newly-introduced
- object tokens, instead of object addresses. The version 2 functions are now
- deprecated in favor of the version 3 functions. The H5O_info_t and H5O_iterate_t
- types have been renamed to version 1 types and are now deprecated in favor of their
- version 2 counterparts. For each, compatibility macros take place of the original
- symbols.
-
- * Introduced new H5Oget_native_info, H5Oget_native_info_by_name and
- H5Oget_native_info_by_idx API calls, along with their associated H5O_native_info_t
- struct, which are used to retrieve the native HDF5 file format-specific information
- about an object. This information (such as object header info and B-tree/heap info)
- has been removed from the new H5O_info2_t struct so that the more generic
- H5Oget_info(_by_name/_by_idx)3 routines will not try to retrieve it for non-native
- VOL connectors.
-
- * Added new H5Otoken_cmp, H5Otoken_to_str and H5Otoken_from_str routines to compare
- two object tokens, convert an object token into a nicely-readable string format and
- to convert an object token string back into a real object token, respectively.
-
- (DER, QAK, JTH - 2020/01/16)
-
- - Virtual Object Layer (VOL)
-
- In this major HDF5 release we introduce HDF5 Virtual Object Layer (VOL).
- VOL is an abstraction layer within the HDF5 library that enables different
- methods for accessing data and objects that conform to the HDF5 data model.
- The VOL layer intercepts all HDF5 API calls that potentially modify data
- on disk and forwards those calls to a plugin "object driver". The data on
- disk can be a different format than the HDF5 format. For more information
- about VOL we refer the reader to the following documents (under review):
-
- VOL HDF5 APIs
- https://portal.hdfgroup.org/display/HDF5/Virtual+Object++Layer
-
- VOL Documentation
- https://bitbucket.hdfgroup.org/projects/HDFFV/repos/hdf5doc/browse/RFCs/HDF5/VOL
-
- Repository with VOL plugins
- https://bitbucket.hdfgroup.org/projects/HDF5VOL
-
- - Enhancements to HDF5 References
-
- HDF5 references were extended to support attributes, and object and dataset
- selections that reside in another HDF5 file. For more information including
- a list of new APIs, see
-
- https://portal.hdfgroup.org/display/HDF5/Update+to+References
-
- - Add new public function H5Sselect_adjust.
-
- This function shifts a dataspace selection by a specified logical offset
- within the dataspace extent. This can be useful for VOL developers to
- implement chunked datasets.
-
- (NAF - 2019/11/18)
-
- - Add new public function H5Sselect_project_intersection.
-
- This function computes the intersection between two dataspace selections
- and projects that intersection into a third selection. This can be useful
- for VOL developers to implement chunked or virtual datasets.
-
- (NAF - 2019/11/13, ID-148)
-
- - Add new public function H5VLget_file_type.
-
- This function returns a datatype equivalent to the supplied datatype but
- with the location set to be in the file. This datatype can then be used
- with H5Tconvert to convert data between file and in-memory representation.
- This funcition is intended for use only by VOL connector developers.
-
- (NAF - 2019/11/08, ID-127)
-
- - New S3 and HDFS Virtual File Drivers (VFDs)
-
- This release has two new VFDs. The S3 VFD allows accessing HDF5 files on
- AWS S3 buckets. HDFS VFD allows accessing HDF5 files stored on Apache HDFS.
- See https://portal.hdfgroup.org/display/HDF5/Virtual+File+Drivers+-+S3+and+HDFS
- for information on enabling those drivers and using those APIs.
-
- Below are specific instructions for enabling S3 VFD on Windows:
-
- Fix windows requirements and java tests. Windows requires CMake 3.13.
- - Install openssl library (with dev files);
- from "Shining Light Productions". msi package preferred.
- - PATH should have been updated with the installation dir.
- - set ENV variable OPENSSL_ROOT_DIR to the installation dir.
- - set ENV variable OPENSSL_CONF to the cfg file, likely %OPENSSL_ROOT_DIR%\bin\openssl.cfg
- - Install libcurl library (with dev files);
- - download the latest released version using git: https://github.com/curl/curl.git
- - Open a Visual Studio Command prompt
- - change to the libcurl root folder
- - run the "buildconf.bat" batch file
- - change to the winbuild directory
- - nmake /f Makefile.vc mode=dll MACHINE=x64
- - copy libcurl-vc-x64-release-dll-ipv6-sspi-winssl dir to C:\curl (installation dir)
- - set ENV variable CURL_ROOT to C:\curl (installation dir)
- - update PATH ENV variable to %CURL_ROOT%\bin (installation bin dir).
- - the aws credentials file should be in %USERPROFILE%\.aws folder
- - set the ENV variable HDF5_ROS3_TEST_BUCKET_URL to the s3 url for the
- s3 bucket containing the HDF5 files to be accessed.
-
- FORTRAN Library:
- ----------------
- - Added new Fortran parameters:
-
- H5F_LIBVER_ERROR_F
- H5F_LIBVER_NBOUNDS_F
- H5F_LIBVER_V18_F
- H5F_LIBVER_V110_F
- H5F_LIBVER_V112_F
-
- - Added new Fortran API: h5pget_libver_bounds_f
-
- (MSB - 2020/02/11, HDFFV-11018)
-
- Java Library:
- ----------------
- - Added ability to test java library with VOLs.
-
- Created new CMake script that combines the java and vol test scripts.
-
- (ADB - 2020/02/03, HDFFV-10996)
-
- - Tests fail for non-English locale.
-
- In the JUnit tests with a non-English locale, only the part before
- the decimal comma is replaced by XXXX and this leads to a comparison
- error. Changed the regex for the Time substitution.
-
- (ADB - 2020/01/09, HDFFV-10995)
-
-
- Tools:
- ------
- - h5diff was updated to use the new reference APIs.
-
- h5diff uses the new reference APIs to compare references.
- Attribute references can also be compared.
-
- (ADB - 2019/12/19, HDFFV-10980)
-
- - h5dump and h5ls were updated to use the new reference APIs.
-
- The tools library now use the new reference APIs to inspect a
- file. Also the DDL spec was updated to reflect the format
- changes produced with the new APIs. The export API and support
- functions in the JNI were updated to match.
-
-
- Other improvements and changes:
-
- - Hyperslab selection code was reworked to improve performance, getting more
- than 10x speedup in some cases.
-
- - The HDF5 Library was enhanced to open files with Unicode names on Windows.
-
- - Deprecated H5Dvlen_reclaim() and replaced it with H5Treclaim().
- This routine is meant to be used when resources are internally allocated
- when reading data, i.e. when using either vlen or new reference types.
- This is applicable to both attribute and dataset reads.
-
- - h5repack was fixed to repack datasets with external storage
- to other types of storage.
-
-
-Support for new platforms, languages and compilers.
-=======================================
- - Added spectrum-mpi with clang, gcc and xl compilers on Linux 3.10.0
- - Added OpenMPI 3.1 and 4.0 with clang, gcc and Intel compilers on Linux 3.10.0
- - Added cray-mpich/PrgEnv with gcc and Intel compilers on Linux 4.14.180
- - Added spectrum mpi with clang, gcc and xl compilers on Linux 4.14.0
-
-
-Bug Fixes since HDF5-1.12.0-alpha1 release
-==========================================
- Library
- -------
- - Improved performance when creating a large number of small datasets by
- retrieving default property values from the API context instead of doing
- skip list searches.
-
- (CJH - 2019/12/10, HDFFV-10658)
-
- - Fixed user-created data access properties not existing in the property list
- returned by H5Dget_access_plist. Thanks to Steven Varga for submitting a
- reproducer and a patch.
-
- (CJH - 2019/12/09, HDFFV-10934)
-
- - Fixed an assertion failure in the parallel library when collectively
- filling chunks. As it is required that chunks be written in
- monotonically non-decreasing order of offset in the file, this assertion
- was being triggered when the list of chunk file space allocations being
- passed to the collective chunk filling routine was not sorted according
- to this particular requirement.
-
- The addition of a sort of the out of order chunks trades a bit of
- performance for the elimination of this assertion and of any complaints
- from MPI implementations about the file offsets used being out of order.
-
- (JTH - 2019/10/07, HDFFV-10792)
-
- FORTRAN library:
- ----------------
-
- - Corrected INTERFACE INTENT(IN) to INTENT(OUT) for buf_size in h5fget_file_image_f.
-
- (MSB - 2020/2/18, HDFFV-11029)
-
- Java Library:
- ----------------
- - Added ability to test java library with VOLs.
-
- Created new CMake script that combines the java and vol test scripts.
-
- (ADB - 2020/02/03, HDFFV-10996)
-
- - Tests fail for non-English locale.
-
- In the JUnit tests with a non-English locale, only the part before
- the decimal comma is replaced by XXXX and this leads to a comparison
- error. Changed the regex for the Time substitution.
-
- (ADB - 2020/01/09, HDFFV-10995)
-
- Tools:
- ------
- - h5repack was fixed to repack the reference attributes properly.
- The code line that checks if the update of reference inside a compound
- datatype is misplaced outside the code block loop that carries out the
- check. In consequence, the next attribute that is not the reference
- type was repacked again as the reference type and caused the failure of
- repacking. The fix is to move the corresponding code line to the correct
- code block.
-
- (KY -2020/02/10, HDFFV-11014)
-
- - h5diff was updated to use the new reference APIs.
-
- h5diff uses the new reference APIs to compare references.
- Attribute references can also be compared.
-
- (ADB - 2019/12/19, HDFFV-10980)
-
- - h5dump and h5ls were updated to use the new reference APIs.
-
- The tools library now use the new reference APIs to inspect a
- file. Also the DDL spec was updated to reflect the format
- changes produced with the new APIs. The export API and support
- functions in the JNI were updated to match.
-
- (ADB - 2019/12/06, HDFFV-10876 and HDFFV-10877)
-
-
-Major Bug Fixes since HDF5-1.10.0 release
-=========================================
-
- - For major bug fixes please see HISTORY-1_10_0-1_12_0.txt file
-
-
-Supported Platforms
-===================
-
- Linux 2.6.32-696.16.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-327.10.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Version 4.9.3, 5.2.0, 7.1.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.0.098 Build 20160721
- MPICH 3.1.4
-
- Linux-3.10.0- spectrum-mpi/rolling-release with cmake>3.10 and
- 862.14.4.1chaos.ch6.ppc64le clang/3.9,8.0
- #1 SMP ppc64le GNU/Linux gcc/7.3
- (ray) xl/2016,2019
-
- Linux 3.10.0- openmpi/3.1,4.0 with cmake>3.10 and
- 957.12.2.1chaos.ch6.x86_64 clang 5.0
- #1 SMP x86_64 GNU/Linux gcc/7.3,8.2
- (serrano) intel/17.0,18.0/19.0
-
- Linux 3.10.0- openmpi/3.1/4.0 with cmake>3.10 and
- 1062.1.1.1chaos.ch6.x86_64 clang/3.9,5.0,8.0
- #1 SMP x86_64 GNU/Linux gcc/7.3,8.1,8.2
- (chama,quartz) intel/16.0,18.0,19.0
-
- Linux 4.4.180-94.100-default cray-mpich/7.7.6 with PrgEnv-*/6.0.5, cmake>3.10 and
- #1 SMP x86_64 GNU/Linux gcc/7.2.0,8.2.0
- (mutrino) intel/17.0,18.0
-
- Linux 4.14.0- spectrum-mpi/rolling-release with cmake>3.10 and
- 49.18.1.bl6.ppc64le clang/6.0,8.0
- #1 SMP ppc64le GNU/Linux gcc/7.3
- (lassen) xl/2019
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 x64 Visual Studio 2015 w/ Intel C, Fortran 2018 (cmake)
- Visual Studio 2015 w/ MSMPI 10 (cmake)
-
- Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 18 (cmake)
- Visual Studio 2017 w/ Intel Fortran 19 (cmake)
- Visual Studio 2019 w/ Intel Fortran 19 (cmake)
-
- macOS 10.13.6 High Sierra Apple LLVM version 10.0.0 (clang/clang++-1000.10.44.4)
- 64-bit gfortran GNU Fortran (GCC) 6.3.0
- (bear) Intel icc/icpc/ifort version 19.0.4
-
- macOS 10.14.6 Mohave Apple LLVM version 10.0.1 (clang/clang++-1001.0.46.4)
- 64-bit gfortran GNU Fortran (GCC) 6.3.0
- (bobcat) Intel icc/icpc/ifort version 19.0.4
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-SunOS 5.11 32-bit n y/y n y y y
-SunOS 5.11 64-bit n y/n n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y y y y y
-Windows 7 Cygwin n y/n n y y y
-Windows 7 x64 Cygwin n y/n n y y y
-Windows 10 y y/y n y y y
-Windows 10 x64 y y/y n y y y
-macOS 10.13.6 64-bit n y/y n y y ?
-macOS 10.14.6 64-bit n y/y n y y ?
-CentOS 6.7 Linux 2.6.18 x86_64 GNU n y/y n y y y
-CentOS 6.7 Linux 2.6.18 x86_64 Intel n y/y n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI n y/y n y y y
-CentOS 7.2 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 7.2 Linux 2.6.32 x86_64 Intel n y/y n y y y
-Linux 2.6.32-573.18.1.el6.ppc64 n y/n n y y y
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-SunOS 5.11 32-bit y y y y
-SunOS 5.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 7 x64 Cygwin n n n y
-Windows 10 y y y y
-Windows 10 x64 y y y y
-macOS 10.13.6 64-bit y n y y
-macOS 10.14.6 64-bit y n y y
-CentOS 6.7 Linux 2.6.18 x86_64 GNU y y y y
-CentOS 6.7 Linux 2.6.18 x86_64 Intel y y y n
-CentOS 6.7 Linux 2.6.32 x86_64 PGI y y y n
-CentOS 7.2 Linux 2.6.32 x86_64 GNU y y y n
-CentOS 7.2 Linux 2.6.32 x86_64 Intel y y y n
-Linux 2.6.32-573.18.1.el6.ppc64 y y y n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (mayll/platypus) Version 4.4.7 20120313
- Version 4.9.3, 5.3.0, 6.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 17.10-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.4.196 Build 20170411
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- Linux 3.10.0-327.18.2.el7 GNU C (gcc) and C++ (g++) compilers
- #1 SMP x86_64 GNU/Linux Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- (jelly) with NAG Fortran Compiler Release 6.1(Tozai)
- GCC Version 7.1.0
- OpenMPI 3.0.0-GCC-7.2.0-2.29
- Intel(R) C (icc) and C++ (icpc) compilers
- Version 17.0.0.098 Build 20160721
- with NAG Fortran Compiler Release 6.1(Tozai)
- PGI C (pgcc), C++ (pgc++), Fortran (pgf90)
- compilers:
- Version 18.4, 19.4
- MPICH 3.3
- OpenMPI 2.1.5, 3.1.3, 4.0.0
-
- Fedora30 5.3.11-200.fc30.x86_64
- #1 SMP x86_64 GNU/Linux GNU gcc (GCC) 9.2.1 20190827 (Red Hat 9.2.1 20190827)
- GNU Fortran (GCC) 9.2.1 20190827 (Red Hat 9.2.1 20190827)
- (cmake and autotools)
-
- Mac OS X El Capitan 10.11.6 Apple LLVM version 7.3.0 (clang/clang++-703.0.29)
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1011dev/osx1011test) Intel icc/icpc/ifort version 16.0.2
-
- macOS 10.12.6 Sierra Apple LLVM version 9.0.0 (clang/clang++-900.0.39.2)
- 64-bit gfortran GNU Fortran (GCC) 7.4.0
- (kite) Intel icc/icpc/ifort version 17.0.8
-
-
-Known Problems
-==============
- CMake files do not behave correctly with paths containing spaces.
- Do not use spaces in paths because the required escaping for handling spaces
- results in very complex and fragile build files.
- ADB - 2019/05/07
-
- At present, metadata cache images may not be generated by parallel
- applications. Parallel applications can read files with metadata cache
- images, but since this is a collective operation, a deadlock is possible
- if one or more processes do not participate.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source, and in the HDF5 Jira database, available at
- https://jira.hdfgroup.org/. Please register at https://www.hdfgroup.org to
- create a free account for accessing the Jira database. Please report any
- new problems found to help@hdfgroup.org.
-
-
-CMake vs. Autotools installations
-=================================
-While both build systems produce similar results, there are differences.
-Each system produces the same set of folders on linux (only CMake works
-on standard Windows); bin, include, lib and share. Autotools places the
-COPYING and RELEASE.txt file in the root folder, CMake places them in
-the share folder.
-
-The bin folder contains the tools and the build scripts. Additionally, CMake
-creates dynamic versions of the tools with the suffix "-shared". Autotools
-installs one set of tools depending on the "--enable-shared" configuration
-option.
- build scripts
- -------------
- Autotools: h5c++, h5cc, h5fc
- CMake: h5c++, h5cc, h5hlc++, h5hlcc
-
-The include folder holds the header files and the fortran mod files. CMake
-places the fortran mod files into separate shared and static subfolders,
-while Autotools places one set of mod files into the include folder. Because
-CMake produces a tools library, the header files for tools will appear in
-the include folder.
-
-The lib folder contains the library files, and CMake adds the pkgconfig
-subfolder with the hdf5*.pc files used by the bin/build scripts created by
-the CMake build. CMake separates the C interface code from the fortran code by
-creating C-stub libraries for each Fortran library. In addition, only CMake
-installs the tools library. The names of the szip libraries are different
-between the build systems.
-
-The share folder will have the most differences because CMake builds include
-a number of CMake specific files for support of CMake's find_package and support
-for the HDF5 Examples CMake project.
-
diff --git a/release_docs/HISTORY-1_13.txt b/release_docs/HISTORY-1_13.txt
deleted file mode 100644
index 73b7feb..0000000
--- a/release_docs/HISTORY-1_13.txt
+++ /dev/null
@@ -1,3194 +0,0 @@
-HDF5 History
-============
-
-This file contains development history of the HDF5 1.13 releases from
-the develop branch
-
-04. Release Information for hdf5-1.13.3
-03. Release Information for hdf5-1.13.2
-02. Release Information for hdf5-1.13.1
-01. Release Information for hdf5-1.13.0
-
-[Search on the string '%%%%' for section breaks of each release.]
-
-
-%%%%1.13.3%%%%
-
-HDF5 version 1.13.3 released on 2022-10-28
-================================================================================
-
-
-INTRODUCTION
-============
-
-This document describes the differences between this release and the previous
-HDF5 release. It contains information on the platforms tested and known
-problems in this release. For more details check the HISTORY*.txt files in the
-HDF5 source.
-
-Note that documentation in the links below will be updated at the time of each
-final release.
-
-Links to HDF5 documentation can be found on The HDF5 web page:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5
-
-The official HDF5 releases can be obtained from:
-
- https://www.hdfgroup.org/downloads/hdf5/
-
-Changes from Release to Release and New Features in the HDF5-1.13.x release series
-can be found at:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5+Application+Developer%27s+Guide
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.13.2
-- Platforms Tested
-- Known Problems
-- CMake vs. Autotools installations
-
-New features and bug fixes previously added in 1.13.0 - 1.13.2 releases can be
-found in release_docs/HISTORY-1_13.txt in the HDF5 source code.
-
-
-New Features
-============
-
- Configuration:
- -------------
- - Add new CMake configuration variable HDF5_USE_GNU_DIRS
-
- HDF5_USE_GNU_DIRS (default OFF) selects the use of GNU Coding Standard install
- directory variables by including the CMake module, GNUInstallDirs(see CMake
- documentation for details). The HDF_DIR_PATHS macro in the HDFMacros.cmake file
- sets various PATH variables for use during the build, test and install processes.
- By default, the historical settings for these variables will be used.
-
- (ADB - 2022/10/21, GH-2175, GH-1716)
-
- - Update CMake minimum version to 3.18
-
- Updated CMake minimum version from 3.12 to 3.18 and removed version checks
- which were added for Windows features not yet available in version 3.12. Also
- removed configure macros and code checks for old style code compile checks.
-
- (ADB - 2022/08/29, HDFFV-11329)
-
-
- Library:
- --------
- - Added multi dataset I/O feature
-
- Added H5Dread_multi, H5Dread_multi_async, H5Dwrite_multi, and
- H5Dwrite_multi_async API routines to allow I/O on multiple datasets with a
- single API call. Added H5Dread_multi_f and H5Dwrite_multi_f Fortran
- wrappers. Updated VOL callbacks for dataset I/O to support multi dataset
- I/O.
-
- (NAF - 2022/10/19)
-
-
- Parallel Library:
- -----------------
- -
-
-
- Fortran Library:
- ----------------
- - Added pointer based H5Dfill_f API
-
- Added Fortran H5Dfill_f, which is fully equivalent to the C API. It accepts pointers,
- fill value datatype and datatype of dataspace elements.
-
- (MSB - 2022/10/10, HDFFV-10734.)
-
- C++ Library:
- ------------
- -
-
-
- Java Library:
- -------------
- -
-
-
- Tools:
- ------
- -
-
-
- High-Level APIs:
- ----------------
- -
-
-
- C Packet Table API:
- -------------------
- -
-
-
- Internal header file:
- ---------------------
- -
-
-
- Documentation:
- --------------
- - Doxygen User Guide documentation is available when configured and generated.
- The resulting documentation files will be in the share/html subdirectory
- of the HDF5 install directory.
-
- (ADB - 2022/08/09)
-
-
-Support for new platforms, languages and compilers
-==================================================
- -
-
-
-Bug Fixes since HDF5-1.13.2 release
-===================================
- Library
- -------
- - Fixed an issue with variable length attributes
-
- Previously, if a variable length attribute was held open while its file
- was opened through another handle, the same attribute was opened through
- the second file handle, and the second file and attribute handles were
- closed, attempting to write to the attribute through the first handle
- would cause an error.
-
- (NAF - 2022/10/24)
-
- - Memory leak
-
- A memory leak was observed with variable-length fill value in
- H5O_fill_convert() function in H5Ofill.c. The leak is
- manifested by running valgrind on test/set_extent.c.
-
- Previously, fill->buf is used for datatype conversion
- if it is large enough and the variable-length information
- is therefore lost. A buffer is now allocated regardless
- so that the element in fill->buf can later be reclaimed.
-
- (VC - 2022/10/10, HDFFV-10840)
-
- - Fixed an issue with hyperslab selections
-
- Previously, when combining hyperslab selections, it was possible for the
- library to produce an incorrect combined selection.
-
- (NAF - 2022/09/25)
-
- - Fixed an issue with attribute type conversion with compound datatypes
-
- Previously, when performing type conversion for attribute I/O with a
- compound datatype, the library would not fill the background buffer with
- the contents of the destination, potentially causing data to be lost when
- only writing to a subset of the compound fields.
-
- (NAF - 2022/08/22, GitHub #2016)
-
-
- Java Library
- ------------
- - Improve variable-length datatype handling in JNI.
-
- The existing JNI read-write functions could handle variable-length datatypes
- that were simple variable-length datatype with an atomic sub-datatype. More
- complex combinations could not be handled. Reworked the JNI read-write functions
- to recursively inspect datatypes for variable-length sub-datatypes.
-
- (ADB - 2022/10/12, HDFFV-8701,10375)
-
-
- Configuration
- -------------
- -
-
-
- Tools
- -----
- -
-
-
- Performance
- -------------
- -
-
-
- Fortran API
- -----------
- -
-
- High-Level Library
- ------------------
- -
-
-
- Fortran High-Level APIs
- -----------------------
- -
-
-
- Documentation
- -------------
- -
-
-
- F90 APIs
- --------
- -
-
-
- C++ APIs
- --------
- -
-
-
- Testing
- -------
- -
-
-
-Platforms Tested
-===================
-
- Linux 5.16.14-200.fc35 GNU gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9)
- #1 SMP x86_64 GNU/Linux GNU Fortran (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9)
- Fedora35 clang version 13.0.0 (Fedora 13.0.0-3.fc35)
- (cmake and autotools)
-
- Linux 5.11.0-34-generic GNU gcc (GCC) 9.3.0-17ubuntu1
- #36-Ubuntu SMP x86_64 GNU/Linux GNU Fortran (GCC) 9.3.0-17ubuntu1
- Ubuntu 20.04 Ubuntu clang version 10.0.0-4
- (cmake and autotools)
-
- Linux 5.3.18-150300-cray_shasta_c cray-mpich/8.1.16
- #1 SMP x86_64 GNU/Linux Cray clang 14.0.0
- (crusher) GCC 11.2.0
- (cmake)
-
- Linux 4.14.0-115.35.1.1chaos openmpi 4.0.5
- #1 SMP aarch64 GNU/Linux GCC 9.2.0 (ARM-build-5)
- (stria) GCC 7.2.0 (Spack GCC)
- (cmake)
-
- Linux 4.14.0-115.35.1.3chaos spectrum-mpi/rolling-release
- #1 SMP ppc64le GNU/Linux clang 12.0.1
- (vortex) GCC 8.3.1
- XL 16.1.1
- (cmake)
-
- Linux-4.14.0-115.21.2 spectrum-mpi/rolling-release
- #1 SMP ppc64le GNU/Linux clang 12.0.1, 14.0.5
- (lassen) GCC 8.3.1
- XL 16.1.1.2, 2021,09.22, 2022.08.05
- (cmake)
-
- Linux-4.12.14-197.99-default cray-mpich/7.7.14
- #1 SMP x86_64 GNU/Linux cce 12.0.3
- (theta) GCC 11.2.0
- llvm 9.0
- Intel 19.1.2
-
- Linux 3.10.0-1160.36.2.el7.ppc64 gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
- #1 SMP ppc64be GNU/Linux g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
- Power8 (echidna) GNU Fortran (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
-
- Linux 3.10.0-1160.24.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- Centos7 Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- (jelly/kituo/moohan) Version 4.9.3, Version 5.3.0, Version 6.3.0,
- Version 7.2.0, Version 8.3.0, Version 9.1.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.0.098 Build 20160721
- GNU C (gcc) and C++ (g++) 4.8.5 compilers
- with NAG Fortran Compiler Release 6.1(Tozai)
- Intel(R) C (icc) and C++ (icpc) 17.0.0.098 compilers
- with NAG Fortran Compiler Release 6.1(Tozai)
- MPICH 3.1.4 compiled with GCC 4.9.3
- MPICH 3.3 compiled with GCC 7.2.0
- OpenMPI 2.1.6 compiled with icc 18.0.1
- OpenMPI 3.1.3 and 4.0.0 compiled with GCC 7.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86_64;
- Version 19.10-0
- (autotools and cmake)
-
- Linux-3.10.0-1160.0.0.1chaos openmpi-4.1.2
- #1 SMP x86_64 GNU/Linux clang 6.0.0, 11.0.1
- (quartz) GCC 7.3.0, 8.1.0
- Intel 19.0.4, 2022.2, oneapi.2022.2
-
- Linux-3.10.0-1160.71.1.1chaos openmpi/4.1
- #1 SMP x86_64 GNU/Linux GCC 7.2.0
- (skybridge) Intel/19.1
- (cmake)
-
- Linux-3.10.0-1160.66.1.1chaos openmpi/4.1
- #1 SMP x86_64 GNU/Linux GCC 7.2.0
- (attaway) Intel/19.1
- (cmake)
-
- Linux-3.10.0-1160.59.1.1chaos openmpi/4.1
- #1 SMP x86_64 GNU/Linux Intel/19.1
- (chama) (cmake)
-
- macOS Apple M1 11.6 Apple clang version 12.0.5 (clang-1205.0.22.11)
- Darwin 20.6.0 arm64 gfortran GNU Fortran (Homebrew GCC 11.2.0) 11.1.0
- (macmini-m1) Intel icc/icpc/ifort version 2021.3.0 202106092021.3.0 20210609
-
- macOS Big Sur 11.3.1 Apple clang version 12.0.5 (clang-1205.0.22.9)
- Darwin 20.4.0 x86_64 gfortran GNU Fortran (Homebrew GCC 10.2.0_3) 10.2.0
- (bigsur-1) Intel icc/icpc/ifort version 2021.2.0 20210228
-
- macOS High Sierra 10.13.6 Apple LLVM version 10.0.0 (clang-1000.10.44.4)
- 64-bit gfortran GNU Fortran (GCC) 6.3.0
- (bear) Intel icc/icpc/ifort version 19.0.4.233 20190416
-
- macOS Sierra 10.12.6 Apple LLVM version 9.0.0 (clang-900.39.2)
- 64-bit gfortran GNU Fortran (GCC) 7.4.0
- (kite) Intel icc/icpc/ifort version 17.0.2
-
- Mac OS X El Capitan 10.11.6 Apple clang version 7.3.0 from Xcode 7.3
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1011test) Intel icc/icpc/ifort version 16.0.2
-
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- Centos6 Version 4.4.7 20120313
- (platypus) Version 4.9.3, 5.3.0, 6.2.0
- MPICH 3.1.4 compiled with GCC 4.9.3
- PGI C, Fortran, C++ for 64-bit target on
- x86_64;
- Version 19.10-0
-
- Windows 10 x64 Visual Studio 2015 w/ Intel C/C++/Fortran 18 (cmake)
- Visual Studio 2017 w/ Intel C/C++/Fortran 19 (cmake)
- Visual Studio 2019 w/ clang 12.0.0
- with MSVC-like command-line (C/C++ only - cmake)
- Visual Studio 2019 w/ Intel C/C++/Fortran oneAPI 2021 (cmake)
- Visual Studio 2019 w/ MSMPI 10.1 (C only - cmake)
-
-
-Known Problems
-==============
-
- ************************************************************
- * _ *
- * (_) *
- * __ ____ _ _ __ _ __ _ _ __ __ _ *
- * \ \ /\ / / _` | '__| '_ \| | '_ \ / _` | *
- * \ V V / (_| | | | | | | | | | | (_| | *
- * \_/\_/ \__,_|_| |_| |_|_|_| |_|\__, | *
- * __/ | *
- * |___/ *
- * *
- * Please refrain from running any program (including *
- * HDF5 tests) which uses the subfiling VFD on Perlmutter *
- * at the National Energy Research Scientific Computing *
- * Center, NERSC. *
- * Doing so may cause a system disruption due to subfiling *
- * crashing Lustre. The sytem's Lustre bug is expected *
- * to be resolved by 2023. *
- * *
- ************************************************************
-
- CMake files do not behave correctly with paths containing spaces.
- Do not use spaces in paths because the required escaping for handling spaces
- results in very complex and fragile build files.
- ADB - 2019/05/07
-
- At present, metadata cache images may not be generated by parallel
- applications. Parallel applications can read files with metadata cache
- images, but since this is a collective operation, a deadlock is possible
- if one or more processes do not participate.
-
- CPP ptable test fails on both VS2017 and VS2019 with Intel compiler, JIRA
- issue: HDFFV-10628. This test will pass with VS2015 with Intel compiler.
-
- The subsetting option in ph5diff currently will fail and should be avoided.
- The subsetting option works correctly in serial h5diff.
-
- Several tests currently fail on certain platforms:
- MPI_TEST-t_bigio fails with spectrum-mpi on ppc64le platforms.
-
- MPI_TEST-t_subfiling_vfd and MPI_TEST_EXAMPLES-ph5_subfiling fail with
- cray-mpich on theta and with XL compilers on ppc64le platforms.
-
- MPI_TEST_testphdf5_tldsc fails with cray-mpich 7.7 on cori and theta.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-CMake vs. Autotools installations
-=================================
-While both build systems produce similar results, there are differences.
-Each system produces the same set of folders on linux (only CMake works
-on standard Windows); bin, include, lib and share. Autotools places the
-COPYING and RELEASE.txt file in the root folder, CMake places them in
-the share folder.
-
-The bin folder contains the tools and the build scripts. Additionally, CMake
-creates dynamic versions of the tools with the suffix "-shared". Autotools
-installs one set of tools depending on the "--enable-shared" configuration
-option.
- build scripts
- -------------
- Autotools: h5c++, h5cc, h5fc
- CMake: h5c++, h5cc, h5hlc++, h5hlcc
-
-The include folder holds the header files and the fortran mod files. CMake
-places the fortran mod files into separate shared and static subfolders,
-while Autotools places one set of mod files into the include folder. Because
-CMake produces a tools library, the header files for tools will appear in
-the include folder.
-
-The lib folder contains the library files, and CMake adds the pkgconfig
-subfolder with the hdf5*.pc files used by the bin/build scripts created by
-the CMake build. CMake separates the C interface code from the fortran code by
-creating C-stub libraries for each Fortran library. In addition, only CMake
-installs the tools library. The names of the szip libraries are different
-between the build systems.
-
-The share folder will have the most differences because CMake builds include
-a number of CMake specific files for support of CMake's find_package and support
-for the HDF5 Examples CMake project.
-
-The issues with the gif tool are:
- HDFFV-10592 CVE-2018-17433
- HDFFV-10593 CVE-2018-17436
- HDFFV-11048 CVE-2020-10809
-These CVE issues have not yet been addressed and can be avoided by not building
-the gif tool. Disable building the High-Level tools with these options:
- autotools: --disable-hltools
- cmake: HDF5_BUILD_HL_TOOLS=OFF
-
-
-%%%%1.13.2%%%%
-
-HDF5 version 1.13.2 released on 2022-08-15
-================================================================================
-
-
-INTRODUCTION
-============
-
-This document describes the differences between this release and the previous
-HDF5 release. It contains information on the platforms tested and known
-problems in this release. For more details check the HISTORY*.txt files in the
-HDF5 source.
-
-Note that documentation in the links below will be updated at the time of each
-final release.
-
-Links to HDF5 documentation can be found on The HDF5 web page:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5
-
-The official HDF5 releases can be obtained from:
-
- https://www.hdfgroup.org/downloads/hdf5/
-
-Changes from Release to Release and New Features in the HDF5-1.13.x release series
-can be found at:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5+Application+Developer%27s+Guide
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.13.1
-- Platforms Tested
-- Known Problems
-- CMake vs. Autotools installations
-
-
-New Features
-============
-
- Configuration:
- -------------
- - Correct the usage of CMAKE_Fortran_MODULE_DIRECTORY and where to
- install Fortran mod files.
-
- The Fortran modules files, ending in .mod are files describing a
- Fortran 90 (and above) module API and ABI. These are not like C
- header files describing an API, they are compiler dependent and
- arch dependent, and not easily readable by a human being. They are
- nevertheless searched for in the includes directories by gfortran
- (in directories specified with -I).
-
- Autotools configure uses the -fmoddir option to specify the folder.
- CMake will use "mod" folder by default unless overridden by the CMake
- variable; HDF5_INSTALL_MODULE_DIR.
-
- (ADB - 2022/07/21)
-
- - HDF5 memory allocation sanity checking is now off by default for
- Autotools debug builds
-
- HDF5 can be configured to perform sanity checking on internal memory
- allocations by adding heap canaries to these allocations. However,
- enabling this option can cause issues with external filter plugins
- when working with (reallocating/freeing/allocating and passing back)
- buffers.
-
- Previously, this option was off by default for all CMake build types,
- but only off by default for non-debug Autotools builds. Since debug
- is the default build mode for HDF5 when built from source with
- Autotools, this can result in surprising segfaults that don't occur
- when an application is built against a release version of HDF5.
- Therefore, this option is now off by default for all build types
- across both CMake and Autotools.
-
- (JTH - 2022/03/01)
-
-
- Library:
- --------
- - Onion VFD
-
- The onion VFD allows creating "versioned" HDF5 files. File open/close
- operations after initial file creation will add changes to an external
- "onion" file (.onion extension by default) instead of the original file.
- Each written revision can be opened independently.
-
- To open a file with the onion VFD, use the H5Pset_fapl_onion() API call
- (does not need to be used for the initial creation of the file). The
- options for the H5FD_onion_fapl_info_t struct are described in H5FDonion.h.
-
- The H5FDonion_get_revision_count() API call can be used to query a file
- to find out how many revisions have been created.
-
- (DER - 2022/08/02)
-
- - Subfiling VFD
-
- The HDF5 Subfiling VFD is a new MPI-based file driver that allows an
- HDF5 application to distribute an HDF5 file across a collection of
- "sub-files" in equal-sized data segment "stripes". I/O to the logical
- HDF5 file is then directed to the appropriate "sub-file" according to
- the Subfiling configuration and a system of I/O concentrators, which
- are MPI ranks operating worker threads.
-
- By allowing a configurable stripe size, number of I/O concentrators and
- method for selecting MPI ranks as I/O concentrators, the Subfiling VFD
- aims to enable an HDF5 application to find a middle ground between the
- single shared file and file-per-process approaches to parallel file I/O
- for the particular machine the application is running on. In general, the
- goal is to avoid some of the complexity of the file-per-process approach
- while also minimizing the locking issues of the single shared file approach
- on a parallel file system.
-
- Also included with the Subfiling VFD is a new h5fuse.sh script which
- reads a Subfiling configuration file and then combines the various
- sub-files back into a single HDF5 file. By default, the h5fuse.sh script
- looks in the current directory for the Subfiling configuration file,
- but can also be pointed to the configuration file with a command-line
- option.
-
- The Subfiling VFD can be used by calling H5Pset_fapl_subfiling() on a
- File Access Property List and using that FAPL for file operations. Note
- that the Subfiling VFD currently has the following limitations:
-
- * Does not currently support HDF5 collective I/O, other than collective
- metadata writes and reads as set by H5Pset_coll_metadata_write() and
- H5Pset_all_coll_metadata_ops()
-
- * The Subfiling VFD should not currently be used with an HDF5 library
- that has been built with thread-safety enabled. This can cause deadlocks
- when failures occur due to interactions between the VFD's internal
- threads and HDF5's global lock.
-
- (JTH - 2022/07/22)
-
-
- Parallel Library:
- -----------------
- -
-
-
- Fortran Library:
- ----------------
- -
-
-
- C++ Library:
- ------------
- - Added two new constructors to H5::H5File class
-
- Two new constructors were added to allow opening a file with non-default
- access property list.
-
-
- Java Library:
- -------------
- - Added version of H5Rget_name to return the name as a Java string.
-
- Other functions that get_name process the get_size then get the name
- within the JNI implementation. Now H5Rget_name has a H5Rget_name_string.
-
- (ADB - 2022/07/12)
-
- - Added reference support to H5A and H5D read write vlen JNI functions.
-
- Added the implementation to handle VL references as an Array of Lists
- of byte arrays.
-
- The JNI wrappers translate the Array of Lists to/from the hvl_t vlen
- structures. The wrappers use the specified datatype arguments for the
- List type translation, it is expected that the Java type is correct.
-
- (ADB - 2022/07/11, HDFFV-11318)
-
- - H5A and H5D read write vlen JNI functions were incorrect.
-
- Corrected the vlen function implementations for the basic primitive types.
- The VLStrings functions now correctly use the implementation that had been
- the VL functions. (VLStrings functions did not have an implementation.)
- The new VL functions implementation now expect an Array of Lists between
- Java and the JNI wrapper.
-
- The JNI wrappers translate the Array of Lists to/from the hvl_t vlen
- structures. The wrappers use the specified datatype arguments for the
- List type translation, it is expected that the Java type is correct.
-
- (ADB - 2022/07/07, HDFFV-11310)
-
- - H5A and H5D read write JNI functions had flawed vlen datatype check.
-
- Adapted tools function for JNI utils file. This reduced multiple calls
- to a single check and variable. The variable can then be used to call
- the H5Treclaim function. Adjusted existing test and added new test.
-
- (ADB - 2022/06/22)
-
-
- Tools:
- ------
- - Building h5perf/h5perf_serial in "standalone mode" has been removed
-
- Building h5perf separately from the library was added circa 2008
- in HDF5 1.6.8. It's unclear what purpose this serves and the current
- implementation is currently broken. The existing files require
- H5private.h and the symbols we use to determine how the copied
- platform-independence scheme should be used come from H5pubconf.h,
- which may not match the compiler being used to build standalone h5perf.
-
- Due to the maintenance overhead and lack of a clear use case, support
- for building h5perf and h5perf_serial separately from the HDF5 library
- has been removed.
-
- (DER - 2022/07/15)
-
- - The perf tool has been removed
-
- The small `perf` tool didn't really do anything special and the name
- conflicts with gnu's perf tool.
-
- (DER - 2022/07/15, GitHub #1787)
-
- - 1.10 References in containers were not displayed properly by h5dump.
-
- Ported 1.10 tools display function to provide ability to inspect and
- display 1.10 reference data.
-
- (ADB - 2022/06/22)
-
-
- High-Level APIs:
- ----------------
- -
-
-
- C Packet Table API:
- -------------------
- -
-
-
- Internal header file:
- ---------------------
- - All the #defines named H5FD_CTL__* were renamed to H5FD_CTL_*, i.e. the double underscore was reduced to a single underscore.
-
-
- Documentation:
- --------------
- -
-
-
-Support for new platforms, languages and compilers
-==================================================
- -
-
-
-Bug Fixes since HDF5-1.13.1 release
-===================================
- Library
- -------
- - The offset parameter in H5Dchunk_iter() is now scaled properly
-
- In earlier HDF5 1.13.x versions, the chunk offset was not scaled by the
- chunk dimensions. This offset parameter in the callback now matches
- that of H5Dget_chunk_info().
-
- (@mkitti - 2022/08/06, GitHub #1419)
-
- - Converted an assertion on (possibly corrupt) file contents to a normal
- error check
-
- Previously, the library contained an assertion check that a read superblock
- doesn't contain a superblock extension message when the superblock
- version < 2. When a corrupt HDF5 file is read, this assertion can be triggered
- in debug builds of HDF5. In production builds, this situation could cause
- either a library error or a crash, depending on the platform.
-
- (JTH - 2022/07/08, HDFFV-11316/HDFFV-11317)
-
-
- Java Library
- ------------
- -
-
-
- Configuration
- -------------
- -
-
-
- Tools
- -----
- -
-
-
- Performance
- -------------
- -
-
-
- Fortran API
- -----------
- - h5open_f and h5close_f fixes
- * Fixed it so both h5open_f and h5close_f can be called multiple times.
- * Fixed an issue with open objects remaining after h5close_f was called.
- * Added additional tests.
- (MSB, 2022/04/19, HDFFV-11306)
-
-
- High-Level Library
- ------------------
- -
-
-
- Fortran High-Level APIs
- -----------------------
- -
-
-
- Documentation
- -------------
- -
-
-
- F90 APIs
- --------
- -
-
-
- C++ APIs
- --------
- -
-
-
- Testing
- -------
- -
-
-
-Platforms Tested
-===================
-
- Linux 5.16.14-200.fc35 GNU gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9)
- #1 SMP x86_64 GNU/Linux GNU Fortran (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9)
- Fedora35 clang version 13.0.0 (Fedora 13.0.0-3.fc35)
- (cmake and autotools)
-
- Linux 5.11.0-34-generic GNU gcc (GCC) 9.3.0-17ubuntu1
- #36-Ubuntu SMP x86_64 GNU/Linux GNU Fortran (GCC) 9.3.0-17ubuntu1
- Ubuntu 20.04 Ubuntu clang version 10.0.0-4
- (cmake and autotools)
-
- Linux 5.3.18-150300-cray_shasta_c cray-mpich/8.1.16
- #1 SMP x86_64 GNU/Linux Cray clang 14.0.0
- (crusher) GCC 11.2.0
- (cmake)
-
- Linux 5.3.18-24-cray_shasta_c cray-mpich/8.1.12
- #1 SMP x86_64 GNU/Linux Cray clang 13.0.0
- (spock) AMD clang 13.0.0
- GCC 8.2.0, 11.2.0
- (cmake)
-
- Linux 4.14.0-115.35.1.1chaos openmpi 4.0.5
- #1 SMP aarch64 GNU/Linux GCC 9.2.0 (ARM-build-5)
- (stria) GCC 7.2.0 (Spack GCC)
- (cmake)
-
- Linux 4.14.0-115.35.1.3chaos spectrum-mpi/rolling-release
- #1 SMP ppc64le GNU/Linux clang 12.0.1
- (vortex) GCC 8.3.1
- XL 16.1.1
- (cmake)
-
- Linux-4.14.0-115.21.2 spectrum-mpi/rolling-release
- #1 SMP ppc64le GNU/Linux clang 8.0.1, 11.0.1
- (lassen) GCC 7.3.1
- XL 16.1.1.2
- (cmake)
-
- Linux-4.12.14-150.75-default cray-mpich/7.7.10
- #1 SMP x86_64 GNU/Linux GCC 7.3.0, 8.2.0
- (cori) Intel (R) Version 19.0.3.199
- (cmake)
-
- Linux 3.10.0-1160.36.2.el7.ppc64 gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
- #1 SMP ppc64be GNU/Linux g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
- Power8 (echidna) GNU Fortran (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
-
- Linux 3.10.0-1160.24.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- Centos7 Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- (jelly/kituo/moohan) Version 4.9.3, Version 5.3.0, Version 6.3.0,
- Version 7.2.0, Version 8.3.0, Version 9.1.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.0.098 Build 20160721
- GNU C (gcc) and C++ (g++) 4.8.5 compilers
- with NAG Fortran Compiler Release 6.1(Tozai)
- Intel(R) C (icc) and C++ (icpc) 17.0.0.098 compilers
- with NAG Fortran Compiler Release 6.1(Tozai)
- MPICH 3.1.4 compiled with GCC 4.9.3
- MPICH 3.3 compiled with GCC 7.2.0
- OpenMPI 2.1.6 compiled with icc 18.0.1
- OpenMPI 3.1.3 and 4.0.0 compiled with GCC 7.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86_64;
- Version 19.10-0
- (autotools and cmake)
-
- Linux-3.10.0-1160.71.1.1chaos openmpi-4.0.0
- #1 SMP x86_64 GNU/Linux clang 6.0.0, 11.0.1
- (quartz) GCC 7.3.0, 8.1.0
- Intel 16.0.4, 18.0.2, 19.0.4
- (cmake)
-
- Linux-3.10.0-1160.71.1.1chaos openmpi/4.1
- #1 SMP x86_64 GNU/Linux GCC 7.2.0
- (skybridge) Intel/19.1
- (cmake)
-
- Linux-3.10.0-1160.66.1.1chaos openmpi/4.1
- #1 SMP x86_64 GNU/Linux GCC 7.2.0
- (attaway) Intel/19.1
- (cmake)
-
- Linux-3.10.0-1160.59.1.1chaos openmpi/4.1
- #1 SMP x86_64 GNU/Linux Intel/19.1
- (chama) (cmake)
-
- macOS Apple M1 11.6 Apple clang version 12.0.5 (clang-1205.0.22.11)
- Darwin 20.6.0 arm64 gfortran GNU Fortran (Homebrew GCC 11.2.0) 11.1.0
- (macmini-m1) Intel icc/icpc/ifort version 2021.3.0 202106092021.3.0 20210609
-
- macOS Big Sur 11.3.1 Apple clang version 12.0.5 (clang-1205.0.22.9)
- Darwin 20.4.0 x86_64 gfortran GNU Fortran (Homebrew GCC 10.2.0_3) 10.2.0
- (bigsur-1) Intel icc/icpc/ifort version 2021.2.0 20210228
-
- macOS High Sierra 10.13.6 Apple LLVM version 10.0.0 (clang-1000.10.44.4)
- 64-bit gfortran GNU Fortran (GCC) 6.3.0
- (bear) Intel icc/icpc/ifort version 19.0.4.233 20190416
-
- macOS Sierra 10.12.6 Apple LLVM version 9.0.0 (clang-900.39.2)
- 64-bit gfortran GNU Fortran (GCC) 7.4.0
- (kite) Intel icc/icpc/ifort version 17.0.2
-
- Mac OS X El Capitan 10.11.6 Apple clang version 7.3.0 from Xcode 7.3
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1011test) Intel icc/icpc/ifort version 16.0.2
-
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- Centos6 Version 4.4.7 20120313
- (platypus) Version 4.9.3, 5.3.0, 6.2.0
- MPICH 3.1.4 compiled with GCC 4.9.3
- PGI C, Fortran, C++ for 64-bit target on
- x86_64;
- Version 19.10-0
-
- Windows 10 x64 Visual Studio 2015 w/ Intel C/C++/Fortran 18 (cmake)
- Visual Studio 2017 w/ Intel C/C++/Fortran 19 (cmake)
- Visual Studio 2019 w/ clang 12.0.0
- with MSVC-like command-line (C/C++ only - cmake)
- Visual Studio 2019 w/ Intel C/C++/Fortran oneAPI 2021 (cmake)
- Visual Studio 2019 w/ MSMPI 10.1 (C only - cmake)
-
-
-Known Problems
-==============
- Setting a variable-length dataset fill value will leak the memory allocated
- for the p field of the hvl_t struct. A fix is in progress for this.
- HDFFV-10840
-
- CMake files do not behave correctly with paths containing spaces.
- Do not use spaces in paths because the required escaping for handling spaces
- results in very complex and fragile build files.
- ADB - 2019/05/07
-
- At present, metadata cache images may not be generated by parallel
- applications. Parallel applications can read files with metadata cache
- images, but since this is a collective operation, a deadlock is possible
- if one or more processes do not participate.
-
- CPP ptable test fails on both VS2017 and VS2019 with Intel compiler, JIRA
- issue: HDFFV-10628. This test will pass with VS2015 with Intel compiler.
-
- The subsetting option in ph5diff currently will fail and should be avoided.
- The subsetting option works correctly in serial h5diff.
-
- Several tests currently fail on certain platforms:
- MPI_TEST-t_bigio fails with spectrum-mpi on ppc64le platforms.
-
- MPI_TEST-t_subfiling_vfd and MPI_TEST_EXAMPLES-ph5_subfiling fail with
- cray-mpich on theta and with XL compilers on ppc64le platforms.
-
- MPI_TEST_testphdf5_tldsc fails with cray-mpich 7.7 on cori and theta.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-CMake vs. Autotools installations
-=================================
-While both build systems produce similar results, there are differences.
-Each system produces the same set of folders on linux (only CMake works
-on standard Windows); bin, include, lib and share. Autotools places the
-COPYING and RELEASE.txt file in the root folder, CMake places them in
-the share folder.
-
-The bin folder contains the tools and the build scripts. Additionally, CMake
-creates dynamic versions of the tools with the suffix "-shared". Autotools
-installs one set of tools depending on the "--enable-shared" configuration
-option.
- build scripts
- -------------
- Autotools: h5c++, h5cc, h5fc
- CMake: h5c++, h5cc, h5hlc++, h5hlcc
-
-The include folder holds the header files and the fortran mod files. CMake
-places the fortran mod files into separate shared and static subfolders,
-while Autotools places one set of mod files into the include folder. Because
-CMake produces a tools library, the header files for tools will appear in
-the include folder.
-
-The lib folder contains the library files, and CMake adds the pkgconfig
-subfolder with the hdf5*.pc files used by the bin/build scripts created by
-the CMake build. CMake separates the C interface code from the fortran code by
-creating C-stub libraries for each Fortran library. In addition, only CMake
-installs the tools library. The names of the szip libraries are different
-between the build systems.
-
-The share folder will have the most differences because CMake builds include
-a number of CMake specific files for support of CMake's find_package and support
-for the HDF5 Examples CMake project.
-
-The issues with the gif tool are:
- HDFFV-10592 CVE-2018-17433
- HDFFV-10593 CVE-2018-17436
- HDFFV-11048 CVE-2020-10809
-These CVE issues have not yet been addressed and can be avoided by not building
-the gif tool. Disable building the High-Level tools with these options:
- autotools: --disable-hltools
- cmake: HDF5_BUILD_HL_TOOLS=OFF
-
-
-%%%%1.13.1%%%%
-
-HDF5 version 1.13.1 released on 2022-03-02
-================================================================================
-
-
-INTRODUCTION
-============
-
-This document describes the differences between this release and the previous
-HDF5 release. It contains information on the platforms tested and known
-problems in this release. For more details check the HISTORY*.txt files in the
-HDF5 source.
-
-Note that documentation in the links below will be updated at the time of each
-final release.
-
-Links to HDF5 documentation can be found on The HDF5 web page:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5
-
-The official HDF5 releases can be obtained from:
-
- https://www.hdfgroup.org/downloads/hdf5/
-
-Changes from Release to Release and New Features in the HDF5-1.13.x release series
-can be found at:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5+Application+Developer%27s+Guide
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.13.0
-- Platforms Tested
-- Known Problems
-- CMake vs. Autotools installations
-
-
-New Features
-============
-
- Configuration:
- -------------
- - Reworked corrected path searched by CMake find_package command
-
- The install path for cmake find_package files had been changed to use
- "share/cmake"
- for all platforms. However setting the HDF5_ROOT variable failed to locate
- the configuration files. The build variable HDF5_INSTALL_CMAKE_DIR is now
- set to the /cmake folder. The location of the configuration
- files can still be specified by the "HDF5_DIR" variable.
-
- (ADB - 2022/02/02)
-
- - CPack will now generate RPM/DEB packages.
-
- Enabled the RPM and DEB CPack generators on linux. In addition to
- generating STGZ and TGZ packages, CPack will try to package the
- library for RPM and DEB packages. This is the initial attempt and
- may change as issues are resolved.
-
- (ADB - 2022/01/27)
-
- - Added new option to the h5cc scripts produced by CMake.
-
- Add -showconfig option to h5cc scripts to cat the
- libhdf5.settings file to the standard output.
-
- (ADB - 2022/01/25)
-
- - CMake will now run the PowerShell script tests in test/ by default
- on Windows.
-
- The test directory includes several shell script tests that previously
- were not run by CMake on Windows. These are now run by default.
- If TEST_SHELL_SCRIPTS is ON and PWSH is found, the PowerShell scripts
- will execute. Similar to the bash scripts on unix platforms.
-
- (ADB - 2021/11/23)
-
-
- Library:
- --------
- - Add a new public function, H5ESget_requests()
-
- This function allows the user to retrieve request pointers from an event
- set. It is intended for use primarily by VOL plugin developers.
-
- (NAF - 2022/01/11)
-
-
- Parallel Library:
- -----------------
- - Several improvements to parallel compression feature, including:
-
- * Improved support for collective I/O (for both writes and reads)
-
- * Significant reduction of memory usage for the feature as a whole
-
- * Reduction of copying of application data buffers passed to H5Dwrite
-
- * Addition of support for incremental file space allocation for filtered
- datasets created in parallel. Incremental file space allocation is the
- default for these types of datasets (early file space allocation is
- also still supported), while early file space allocation is still the
- default (and only supported at allocation time) for unfiltered datasets
- created in parallel. Incremental file space allocation should help with
- parallel HDF5 applications that wish to use fill values on filtered
- datasets, but would typically avoid doing so since dataset creation in
- parallel would often take an excessive amount of time. Since these
- datasets previously used early file space allocation, HDF5 would
- allocate space for and write fill values to every chunk in the dataset
- at creation time, leading to noticeable overhead. Instead, with
- incremental file space allocation, allocation of file space for chunks
- and writing of fill values to those chunks will be delayed until each
- individual chunk is initially written to.
-
- * Addition of support for HDF5's "don't filter partial edge chunks" flag
- (https://portal.hdfgroup.org/display/HDF5/H5P_SET_CHUNK_OPTS)
-
- * Addition of proper support for HDF5 fill values with the feature
-
- * Addition of 'H5_HAVE_PARALLEL_FILTERED_WRITES' macro to H5pubconf.h
- so HDF5 applications can determine at compile-time whether the feature
- is available
-
- * Addition of simple examples (ph5_filtered_writes.c and
- ph5_filtered_writes_no_sel.c) under examples directory to demonstrate
- usage of the feature
-
- * Improved coverage of regression testing for the feature
-
- (JTH - 2022/2/23)
-
-
-Support for new platforms, languages and compilers
-==================================================
- - None
-
-
-Bug Fixes since HDF5-1.13.0 release
-===================================
- Library
- -------
- - Fixed a metadata cache bug when resizing a pinned/protected cache entry
-
- When resizing a pinned/protected cache entry, the metadata
- cache code previously would wait until after resizing the
- entry to attempt to log the newly-dirtied entry. This
- caused H5C_resize_entry to mark the entry as dirty and made
- H5AC_resize_entry think that it didn't need to add the
- newly-dirtied entry to the dirty entries skiplist.
-
- Thus, a subsequent H5AC__log_moved_entry would think it
- needed to allocate a new entry for insertion into the dirty
- entry skip list, since the entry didGn't exist on that list.
- This caused an assertion failure, as the code to allocate a
- new entry assumes that the entry is not dirty.
-
- (JRM - 2022/02/28)
-
- - Issue #1436 identified a problem with the H5_VERS_RELEASE check in the
- H5check_version function.
-
- Investigating the original fix, #812, we discovered some inconsistencies
- with a new block added to check H5_VERS_RELEASE for incompatibilities.
- This new block was not using the new warning text dealing with the
- H5_VERS_RELEASE check and would cause the warning to be duplicated.
-
- By removing the H5_VERS_RELEASE argument in the first check for
- H5_VERS_MAJOR and H5_VERS_MINOR, the second check would only check
- the H5_VERS_RELEASE for incompatible release versions. This adheres
- to the statement that except for the develop branch, all release versions
- in a major.minor maintenance branch should be compatible. The prerequisite
- is that an application will not use any APIs not present in all release versions.
-
- (ADB - 2022/02/24, #1438)
-
- - Unified handling of collective metadata reads to correctly fix old bugs
-
- Due to MPI-related issues occurring in HDF5 from mismanagement of the
- status of collective metadata reads, they were forced to be disabled
- during chunked dataset raw data I/O in the HDF5 1.10.5 release. This
- wouldn't generally have affected application performance because HDF5
- already disables collective metadata reads during chunk lookup, since
- it is generally unlikely that the same chunks will be read by all MPI
- ranks in the I/O operation. However, this was only a partial solution
- that wasn't granular enough.
-
- This change now unifies the handling of the file-global flag and the
- API context-level flag for collective metadata reads in order to
- simplify querying of the true status of collective metadata reads. Thus,
- collective metadata reads are once again enabled for chunked dataset
- raw data I/O, but manually controlled at places where some processing
- occurs on MPI rank 0 only and would cause issues when collective
- metadata reads are enabled.
-
- (JTH - 2021/11/16, HDFFV-10501/HDFFV-10562)
-
- - Fixed several potential MPI deadlocks in library failure conditions
-
- In the parallel library, there were several places where MPI rank 0
- could end up skipping past collective MPI operations when some failure
- occurs in rank 0-specific processing. This would lead to deadlocks
- where rank 0 completes an operation while other ranks wait in the
- collective operation. These places have been rewritten to have rank 0
- push an error and try to cleanup after the failure, then continue to
- participate in the collective operation to the best of its ability.
-
- (JTH - 2021/11/09)
-
-
-Platforms Tested
-===================
-
- Linux 5.13.14-200.fc34 GNU gcc (GCC) 11.2.1 2021078 (Red Hat 11.2.1-1)
- #1 SMP x86_64 GNU/Linux GNU Fortran (GCC) 11.2.1 2021078 (Red Hat 11.2.1-1)
- Fedora34 clang version 12.0.1 (Fedora 12.0.1-1.fc34)
- (cmake and autotools)
-
- Linux 5.11.0-34-generic GNU gcc (GCC) 9.3.0-17ubuntu1
- #36-Ubuntu SMP x86_64 GNU/Linux GNU Fortran (GCC) 9.3.0-17ubuntu1
- Ubuntu 20.04 Ubuntu clang version 10.0.0-4
- (cmake and autotools)
-
- Linux 5.8.0-63-generic GNU gcc (GCC) 10.3.0-1ubuntu1
- #71-Ubuntu SMP x86_64 GNU/Linux GNU Fortran (GCC) 10.3.0-1ubuntu1
- Ubuntu20.10 Ubuntu clang version 11.0.0-2
- (cmake and autotools)
-
- Linux 5.3.18-22-default GNU gcc (SUSE Linux) 7.5.0
- #1 SMP x86_64 GNU/Linux GNU Fortran (SUSE Linux) 7.5.0
- SUSE15sp2 clang version 7.0.1 (tags/RELEASE_701/final 349238)
- (cmake and autotools)
-
- Linux-4.14.0-115.21.2 spectrum-mpi/rolling-release
- #1 SMP ppc64le GNU/Linux clang 8.0.1, 11.0.1
- (lassen) GCC 7.3.1
- XL 16.1.1.2
- (cmake)
-
- Linux-3.10.0-1160.49.1 openmpi-intel/4.1
- #1 SMP x86_64 GNU/Linux Intel(R) Version 18.0.5, 19.1.2
- (chama) (cmake)
-
- Linux-4.12.14-150.75-default cray-mpich/7.7.10
- #1 SMP x86_64 GNU/Linux GCC 7.3.0, 8.2.0
- (cori) Intel (R) Version 19.0.3.199
- (cmake)
-
- Linux-4.12.14-197.86-default cray-mpich/7.7.6
- # 1SMP x86_64 GNU/Linux GCC 7.3.0, 9.3.0, 10.2.0
- (mutrino) Intel (R) Version 17.0.4, 18.0.5, 19.1.3
- (cmake)
-
- Linux 3.10.0-1160.36.2.el7.ppc64 gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
- #1 SMP ppc64be GNU/Linux g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
- Power8 (echidna) GNU Fortran (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
-
- Linux 3.10.0-1160.24.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- Centos7 Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- (jelly/kituo/moohan) Version 4.9.3, Version 5.3.0, Version 6.3.0,
- Version 7.2.0, Version 8.3.0, Version 9.1.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.0.098 Build 20160721
- GNU C (gcc) and C++ (g++) 4.8.5 compilers
- with NAG Fortran Compiler Release 6.1(Tozai)
- Intel(R) C (icc) and C++ (icpc) 17.0.0.098 compilers
- with NAG Fortran Compiler Release 6.1(Tozai)
- MPICH 3.1.4 compiled with GCC 4.9.3
- MPICH 3.3 compiled with GCC 7.2.0
- OpenMPI 2.1.6 compiled with icc 18.0.1
- OpenMPI 3.1.3 and 4.0.0 compiled with GCC 7.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86_64;
- Version 19.10-0
-
- Linux-3.10.0-1127.0.0.1chaos openmpi-4.0.0
- #1 SMP x86_64 GNU/Linux clang 6.0.0, 11.0.1
- (quartz) GCC 7.3.0, 8.1.0
- Intel 16.0.4, 18.0.2, 19.0.4
-
- macOS Apple M1 11.6 Apple clang version 12.0.5 (clang-1205.0.22.11)
- Darwin 20.6.0 arm64 gfortran GNU Fortran (Homebrew GCC 11.2.0) 11.1.0
- (macmini-m1) Intel icc/icpc/ifort version 2021.3.0 202106092021.3.0 20210609
-
- macOS Big Sur 11.3.1 Apple clang version 12.0.5 (clang-1205.0.22.9)
- Darwin 20.4.0 x86_64 gfortran GNU Fortran (Homebrew GCC 10.2.0_3) 10.2.0
- (bigsur-1) Intel icc/icpc/ifort version 2021.2.0 20210228
-
- macOS High Sierra 10.13.6 Apple LLVM version 10.0.0 (clang-1000.10.44.4)
- 64-bit gfortran GNU Fortran (GCC) 6.3.0
- (bear) Intel icc/icpc/ifort version 19.0.4.233 20190416
-
- macOS Sierra 10.12.6 Apple LLVM version 9.0.0 (clang-900.39.2)
- 64-bit gfortran GNU Fortran (GCC) 7.4.0
- (kite) Intel icc/icpc/ifort version 17.0.2
-
- Mac OS X El Capitan 10.11.6 Apple clang version 7.3.0 from Xcode 7.3
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1011test) Intel icc/icpc/ifort version 16.0.2
-
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- Centos6 Version 4.4.7 20120313
- (platypus) Version 4.9.3, 5.3.0, 6.2.0
- MPICH 3.1.4 compiled with GCC 4.9.3
- PGI C, Fortran, C++ for 64-bit target on
- x86_64;
- Version 19.10-0
-
- Windows 10 x64 Visual Studio 2015 w/ Intel C/C++/Fortran 18 (cmake)
- Visual Studio 2017 w/ Intel C/C++/Fortran 19 (cmake)
- Visual Studio 2019 w/ clang 12.0.0
- with MSVC-like command-line (C/C++ only - cmake)
- Visual Studio 2019 w/ Intel Fortran 19 (cmake)
- Visual Studio 2019 w/ MSMPI 10.1 (C only - cmake)
-
-
-Known Problems
-==============
- Setting a variable-length dataset fill value will leak the memory allocated
- for the p field of the hvl_t struct. A fix is in progress for this.
- HDFFV-10840
-
- CMake files do not behave correctly with paths containing spaces.
- Do not use spaces in paths because the required escaping for handling spaces
- results in very complex and fragile build files.
- ADB - 2019/05/07
-
- At present, metadata cache images may not be generated by parallel
- applications. Parallel applications can read files with metadata cache
- images, but since this is a collective operation, a deadlock is possible
- if one or more processes do not participate.
-
- CPP ptable test fails on both VS2017 and VS2019 with Intel compiler, JIRA
- issue: HDFFV-10628. This test will pass with VS2015 with Intel compiler.
-
- The subsetting option in ph5diff currently will fail and should be avoided.
- The subsetting option works correctly in serial h5diff.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-CMake vs. Autotools installations
-=================================
-While both build systems produce similar results, there are differences.
-Each system produces the same set of folders on linux (only CMake works
-on standard Windows); bin, include, lib and share. Autotools places the
-COPYING and RELEASE.txt file in the root folder, CMake places them in
-the share folder.
-
-The bin folder contains the tools and the build scripts. Additionally, CMake
-creates dynamic versions of the tools with the suffix "-shared". Autotools
-installs one set of tools depending on the "--enable-shared" configuration
-option.
- build scripts
- -------------
- Autotools: h5c++, h5cc, h5fc
- CMake: h5c++, h5cc, h5hlc++, h5hlcc
-
-The include folder holds the header files and the fortran mod files. CMake
-places the fortran mod files into separate shared and static subfolders,
-while Autotools places one set of mod files into the include folder. Because
-CMake produces a tools library, the header files for tools will appear in
-the include folder.
-
-The lib folder contains the library files, and CMake adds the pkgconfig
-subfolder with the hdf5*.pc files used by the bin/build scripts created by
-the CMake build. CMake separates the C interface code from the fortran code by
-creating C-stub libraries for each Fortran library. In addition, only CMake
-installs the tools library. The names of the szip libraries are different
-between the build systems.
-
-The share folder will have the most differences because CMake builds include
-a number of CMake specific files for support of CMake's find_package and support
-for the HDF5 Examples CMake project.
-
-The issues with the gif tool are:
- HDFFV-10592 CVE-2018-17433
- HDFFV-10593 CVE-2018-17436
- HDFFV-11048 CVE-2020-10809
-These CVE issues have not yet been addressed and can be avoided by not building
-the gif tool. Disable building the High-Level tools with these options:
- autotools: --disable-hltools
-
-
-%%%%1.13.0%%%%
-
-HDF5 version 1.13.0 released on 2021-12-01
-================================================================================
-
-
-INTRODUCTION
-============
-
-This document describes the differences between this release and the previous
-HDF5 release. It contains information on the platforms tested and known
-problems in this release. For more details check the HISTORY*.txt files in the
-HDF5 source.
-
-Note that documentation in the links below will be updated at the time of each
-final release.
-
-Links to HDF5 documentation can be found on The HDF5 web page:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5
-
-The official HDF5 releases can be obtained from:
-
- https://www.hdfgroup.org/downloads/hdf5/
-
-Changes from Release to Release and New Features in the HDF5-1.13.x release series
-can be found at:
-
- https://portal.hdfgroup.org/display/HDF5/HDF5+Application+Developer%27s+Guide
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- New platforms, languages and compilers tested
-- Bug Fixes since HDF5-1.12.0
-- Platforms Tested
-- Known Problems
-- CMake vs. Autotools installations
-
-
-New Features
-============
-
- Configuration:
- -------------
- - Added new configure option to support building parallel tools.
- See Tools below (autotools - CMake):
- --enable-parallel-tools HDF5_BUILD_PARALLEL_TOOLS
-
- (RAW - 2021/10/25)
-
- - Added new configure options to enable dimension scales APIs (H5DS*) to
- use new object references with the native VOL connector (aka native HDF5
- library). New references are always used for non-native terminal VOL
- connectors (e.g., DAOS).
-
- Autotools --enable-dimension-scales-with-new-ref
- CMake HDF5_DIMENSION_SCALES_NEW_REF=ON
-
- (EIP - 2021/10/25, HDFFV-11180)
-
- - Refactored the utils folder.
-
- Added subfolder test and moved the 'swmr_check_compat_vfd.c file'
- from test into utils/test. Deleted the duplicate swmr_check_compat_vfd.c
- file in hl/tools/h5watch folder. Also fixed vfd check options.
-
- (ADB - 2021/10/18)
-
- - Changed autotools and CMake configurations to derive both
- compilation warnings-as-errors and warnings-only-warn configurations
- from the same files, 'config/*/*error*'. Removed redundant files
- 'config/*/*noerror*'.
-
- (DCY - 2021/09/29)
-
- - Added new option to control the build of High-Level tools
- that default ON/enabled.
-
- Add configure options (autotools - CMake):
- --enable-hltools HDF5_BUILD_HL_TOOLS
-
- Disabling this option prevents building the gif tool which
- contains the following CVEs:
- HDFFV-10592 CVE-2018-17433
- HDFFV-10593 CVE-2018-17436
- HDFFV-11048 CVE-2020-10809
-
- (ADB - 2021/09/16, HDFFV-11266)
-
- - Adds C++ Autotools configuration file for Intel
-
- * Checks for icpc as the compiler
- * Sets std=c++11
- * Copies most non-warning flags from intel-flags
-
- (DER - 2021/06/02)
-
- - Adds C++ Autotools configuration file for PGI
-
- * Checks for pgc++ as the compiler name (was: pgCC)
- * Sets -std=c++11
- * Other options basically match new C options (below)
-
- (DER - 2021/06/02)
-
- - Updates PGI C options
-
- * -Minform set to warn (was: inform) to suppress spurious messages
- * Sets -gopt -O2 as debug options
- * Sets -O4 as 'high optimization' option
- * Sets -O0 as 'no optimization' option
- * Removes specific settings for PGI 9 and 10
-
- (DER - 2021/06/02)
-
- - A C++11-compliant compiler is now required to build the C++ wrappers
-
- CMAKE_CXX_STANDARD is now set to 11 when building with CMake and
- -std=c++11 is added when building with clang/gcc via the Autotools.
-
- (DER - 2021/05/27)
-
- - CMake will now run the shell script tests in test/ by default
-
- The test directory includes several shell script tests that previously
- were not run by CMake. These are now run by default. TEST_SHELL_SCRIPTS
- has been set to ON and SH_PROGRAM has been set to bash (some test
- scripts use bash-isms). Platforms without bash (e.g., Windows) will
- ignore the script tests.
-
- (DER - 2021/05/23)
-
- - Removed unused HDF5_ENABLE_HSIZET option from CMake
-
- This has been unused for some time and has no effect.
-
- (DER - 2021/05/23)
-
- - CMake no longer builds the C++ library by default
-
- HDF5_BUILD_CPP_LIB now defaults to OFF, which is in line with the
- Autotools build defaults.
-
- (DER - 2021/04/20)
-
- - Removal of pre-VS2015 work-arounds
-
- HDF5 now requires Visual Studio 2015 or greater, so old work-around
- code and definitions have been removed, including:
-
- *
- * snprintf and vsnprintf
- * llround, llroundf, lround, lroundf, round, roundf
- * strtoll and strtoull
- * va_copy
- * struct timespec
-
- (DER - 2021/03/22)
-
- - Add CMake variable HDF5_LIB_INFIX
-
- This infix is added to all library names after 'hdf5'.
- e.g. the infix '_openmpi' results in the library name 'libhdf5_openmpi.so'
- This name is used in packages on debian based systems.
- (see https://packages.debian.org/jessie/amd64/libhdf5-openmpi-8/filelist)
-
- (barcode - 2021/03/22)
-
- - On macOS, Universal Binaries can now be built, allowing native execution on
- both Intel and Apple Silicon (ARM) based Macs.
-
- To do so, set CMAKE_OSX_ARCHITECTURES="x86_64;arm64"
-
- (SAM - 2021/02/07, github-311)
-
- - Added a configure-time option to control certain compiler warnings
- diagnostics
-
- A new configure-time option was added that allows some compiler warnings
- diagnostics to have the default operation. This is mainly intended for
- library developers and currently only works for gcc 10 and above. The
- diagnostics flags apply to C, C++ and Fortran compilers and will appear
- in "H5 C Flags", H5 C++ Flags" and H5 Fortran Flags, respectively. They
- will NOT be exported to h5cc, etc.
-
- The default is OFF, which will disable the warnings URL and color attributes
- for the warnings output. ON will not add the flags and allow default behavior.
-
- Autotools: --enable-diags
-
- CMake: HDF5_ENABLE_BUILD_DIAGS
-
- (ADB - 2021/02/05, HDFFV-11213)
-
- - CMake option to build the HDF filter plugins project as an external project
-
- The HDF filter plugins project is a collection of registered compression
- filters that can be dynamically loaded when needed to access data stored
- in a hdf5 file. This CMake-only option allows the plugins to be built and
- distributed with the hdf5 library and tools. Like the options for szip and
- zlib, either a tgz file or a git repository can be specified for the source.
-
- The option was refactored to use the CMake FetchContent process. This allows
- more control over the filter targets, but required external project command
- options to be moved to a CMake include file, HDF5PluginCache.cmake. Also
- enabled the filter examples to be used as tests for operation of the
- filter plugins.
-
- (ADB - 2020/12/10, OESS-98)
-
- - FreeBSD Autotools configuration now defaults to 'cc' and 'c++' compilers
-
- On FreeBSD, the autotools defaulted to 'gcc' as the C compiler and did
- not process C++ options. Since FreeBSD 10, the default compiler has
- been clang (via 'cc').
-
- The default compilers have been set to 'cc' for C and 'c++' for C++,
- which will pick up clang and clang++ respectively on FreeBSD 10+.
- Additionally, clang options are now set correctly for both C and C++
- and g++ options will now be set if that compiler is being used (an
- omission from the former functionality).
-
- (DER - 2020/11/28, HDFFV-11193)
-
- - Fixed POSIX problems when building w/ gcc on Solaris
-
- When building on Solaris using gcc, the POSIX symbols were not
- being set correctly, which could lead to issues like clock_gettime()
- not being found.
-
- The standard is now set to gnu99 when building with gcc on Solaris,
- which allows POSIX things to be #defined and linked correctly. This
- differs slightly from the gcc norm, where we set the standard to c99
- and manually set POSIX #define symbols.
-
- (DER - 2020/11/25, HDFFV-11191)
-
- - Added a configure-time option to consider certain compiler warnings
- as errors
-
- A new configure-time option was added that converts some compiler warnings
- to errors. This is mainly intended for library developers and currently
- only works for gcc and clang. The warnings that are considered errors
- will appear in the generated libhdf5.settings file. These warnings apply
- to C and C++ code and will appear in "H5 C Flags" and H5 C++ Flags",
- respectively. They will NOT be exported to h5cc, etc.
-
- The default is OFF. Building with this option may fail when compiling
- on operating systems and with compiler versions not commonly used by
- the library developers. Compilation may also fail when headers not
- under the control of the library developers (e.g., mpi.h, hdfs.h) raise
- warnings.
-
- Autotools: --enable-warnings-as-errors
-
- CMake: HDF5_ENABLE_WARNINGS_AS_ERRORS
-
- (DER - 2020/11/23, HDFFV-11189)
-
- - Autotools and CMake target added to produce doxygen generated documentation
-
- The default is OFF or disabled.
- Autoconf option is '--enable-doxygen'
- autotools make target is 'doxygen' and will build all doxygen targets
- CMake configure option is 'HDF5_BUILD_DOC'.
- CMake target is 'doxygen' for all available doxygen targets
- CMake target is 'hdf5lib_doc' for the src subdirectory
-
- (ADB - 2020/11/03)
-
- - CMake option to use MSVC naming conventions with MinGW
-
- HDF5_MSVC_NAMING_CONVENTION option enable to use MSVC naming conventions
- when using a MinGW toolchain
-
- (xan - 2020/10/30)
-
- - CMake option to statically link gcc libs with MinGW
-
- HDF5_MINGW_STATIC_GCC_LIBS allows to statically link libg/libstdc++
- with the MinGW toolchain
-
- (xan - 2020/10/30)
-
- - CMake option to build the HDF filter plugins project as an external project
-
- The HDF filter plugins project is a collection of registered compression
- filters that can be dynamically loaded when needed to access data stored
- in a hdf5 file. This CMake-only option allows the plugins to be built and
- distributed with the hdf5 library and tools. Like the options for szip and
- zlib, either a tgz file or a git repository can be specified for the source.
-
- The necessary options are (see the INSTALL_CMake.txt file):
- HDF5_ENABLE_PLUGIN_SUPPORT
- PLUGIN_TGZ_NAME or PLUGIN_GIT_URL
- There are more options necessary for various filters and the plugin project
- documents should be referenced.
-
- (ADB - 2020/09/27, OESS-98)
-
- - Added CMake option to format source files
-
- HDF5_ENABLE_FORMATTERS option will enable creation of targets using the
- pattern - HDF5_*_SRC_FORMAT - where * corresponds to the source folder
- or tool folder. All sources can be formatted by executing the format target;
- make format
-
- (ADB - 2020/08/24)
-
- - Add file locking configure and CMake options
-
- HDF5 1.10.0 introduced a file locking scheme, primarily to help
- enforce SWMR setup. Formerly, the only user-level control of the scheme
- was via the HDF5_USE_FILE_LOCKING environment variable.
-
- This change introduces configure-time options that control whether
- or not file locking will be used and whether or not the library
- ignores errors when locking has been disabled on the file system
- (useful on some HPC Lustre installations).
-
- In both the Autotools and CMake, the settings have the effect of changing
- the default property list settings (see the H5Pset/get_file_locking()
- entry, below).
-
- The yes/no/best-effort file locking configure setting has also been
- added to the libhdf5.settings file.
-
- Autotools:
-
- An --enable-file-locking=(yes|no|best-effort) option has been added.
-
- yes: Use file locking.
- no: Do not use file locking.
- best-effort: Use file locking and ignore "disabled" errors.
-
- CMake:
-
- Two self-explanatory options have been added:
-
- HDF5_USE_FILE_LOCKING
- HDF5_IGNORE_DISABLED_FILE_LOCKS
-
- Setting both of these to ON is the equivalent to the Autotools'
- best-effort setting.
-
- NOTE:
- The precedence order of the various file locking control mechanisms is:
-
- 1) HDF5_USE_FILE_LOCKING environment variable (highest)
-
- 2) H5Pset_file_locking()
-
- 3) configure/CMake options (which set the property list defaults)
-
- 4) library defaults (currently best-effort)
-
- (DER - 2020/07/30, HDFFV-11092)
-
- - CMake option to link the generated Fortran MOD files into the include
- directory.
-
- The Fortran generation of MOD files by a Fortran compile can produce
- different binary files between SHARED and STATIC compiles with different
- compilers and/or different platforms. Note that it has been found that
- different versions of Fortran compilers will produce incompatible MOD
- files. Currently, CMake will locate these MOD files in subfolders of
- the include directory and add that path to the Fortran library target
- in the CMake config file, which can be used by the CMake find library
- process. For other build systems using the binary from a CMake install,
- a new CMake configuration can be used to copy the pre-chosen version
- of the Fortran MOD files into the install include directory.
-
- The default will depend on the configuration of
- BUILD_STATIC_LIBS and BUILD_SHARED_LIBS:
- YES YES Default to SHARED
- YES NO Default to STATIC
- NO YES Default to SHARED
- NO NO Default to SHARED
- The defaults can be overridden by setting the config option
- HDF5_INSTALL_MOD_FORTRAN to one of NO, SHARED, or STATIC
-
- (ADB - 2020/07/09, HDFFV-11116)
-
- - CMake option to use AEC (open source SZip) library instead of SZip
-
- The open source AEC library is a replacement library for SZip. In
- order to use it for hdf5 the libaec CMake source was changed to add
- "-fPIC" and exclude test files. Autotools does not build the
- compression libraries within hdf5 builds. New option USE_LIBAEC is
- required to compensate for the different files produced by AEC build.
-
- (ADB - 2020/04/22, OESS-65)
-
- - CMake ConfigureChecks.cmake file now uses CHECK_STRUCT_HAS_MEMBER
-
- Some handcrafted tests in HDFTests.c has been removed and the CMake
- CHECK_STRUCT_HAS_MEMBER module has been used.
-
- (ADB - 2020/03/24, TRILAB-24)
-
- - Both build systems use same set of warnings flags
-
- GNU C, C++ and gfortran warnings flags were moved to files in a config
- sub-folder named gnu-warnings. Flags that only are available for a specific
- version of the compiler are in files named with that version.
- Clang C warnings flags were moved to files in a config sub-folder
- named clang-warnings.
- Intel C, Fortran warnings flags were moved to files in a config sub-folder
- named intel-warnings.
-
- There are flags in named "error-xxx" files with warnings that may
- be promoted to errors. Some source files may still need fixes.
-
- There are also pairs of files named "developer-xxx" and "no-developer-xxx"
- that are chosen by the CMake option:HDF5_ENABLE_DEV_WARNINGS or the
- configure option:--enable-developer-warnings.
-
- In addition, CMake no longer applies these warnings for examples.
-
- (ADB - 2020/03/24, TRILAB-192)
-
- - Added test script for file size compare
-
- If CMake minimum version is at least 3.14, the fileCompareTest.cmake
- script will compare file sizes.
-
- (ADB - 2020/02/24, HDFFV-11036)
-
- - Update CMake minimum version to 3.12
-
- Updated CMake minimum version to 3.12 and added version checks
- for Windows features.
-
- (ADB - 2020/02/05, TRILABS-142)
-
- - Fixed CMake include properties for Fortran libraries
-
- Corrected the library properties for Fortran to use the
- correct path for the Fortran module files.
-
- (ADB - 2020/02/04, HDFFV-11012)
-
- - Added common warnings files for gnu and intel
-
- Added warnings files to use one common set of flags
- during configure for both autotools and CMake build
- systems. The initial implementation only affects a
- general set of flags for gnu and intel compilers.
-
- (ADB - 2020/01/17)
-
- - Added new options to CMake for control of testing
-
- Added CMake options (default ON);
- HDF5_TEST_SERIAL AND/OR HDF5_TEST_PARALLEL
- combined with:
- HDF5_TEST_TOOLS
- HDF5_TEST_EXAMPLES
- HDF5_TEST_SWMR
- HDF5_TEST_FORTRAN
- HDF5_TEST_CPP
- HDF5_TEST_JAVA
-
- (ADB - 2020/01/15, HDFFV-11001)
-
- - Added Clang sanitizers to CMake for analyzer support if compiler is clang.
-
- Added CMake code and files to execute the Clang sanitizers if
- HDF5_ENABLE_SANITIZERS is enabled and the USE_SANITIZER option
- is set to one of the following:
- Address
- Memory
- MemoryWithOrigins
- Undefined
- Thread
- Leak
- 'Address;Undefined'
-
- (ADB - 2019/12/12, TRILAB-135)
-
- - Update CMake for VS2019 support
-
- CMake added support for VS2019 in version 3.15. Changes to the CMake
- generator setting required changes to scripts. Also updated version
- references in CMake files as necessary.
-
- (ADB - 2019/11/18, HDFFV-10962)
-
- - Update CMake options to match new autotools options
-
- Add configure options (autotools - CMake):
- enable-asserts HDF5_ENABLE_ASSERTS
- enable-symbols HDF5_ENABLE_SYMBOLS
- enable-profiling HDF5_ENABLE_PROFILING
- enable-optimization HDF5_ENABLE_OPTIMIZATION
- In addition NDEBUG is no longer forced defined and relies on the CMake
- process.
-
- (ADB - 2019/10/07, HDFFV-100901, HDFFV-10637, TRILAB-97)
-
-
- Library:
- --------
- - Adds new file driver-level memory copy operation for
- "ctl" callback and updates compact dataset I/O routines
- to utilize it
-
- When accessing an HDF5 file with a file driver that uses
- memory allocated in special ways (e.g., without standard
- library's `malloc`), a crash could be observed when HDF5
- tries to perform `memcpy` operations on such a memory
- region.
-
- These changes add a new H5FD_FEAT_MEMMANAGE VFD feature
- flag, which, if specified as supported by a VFD, will
- inform HDF5 that the VFD either uses special memory
- management routines or wishes to perform memory management
- in a specific way. Therefore, this flag instructs HDF5 to
- ask the file driver to perform memory management for
- certain operations.
-
- These changes also introduce a new "ctl" callback
- operation identified by the H5FD_CTL__MEM_COPY op code.
- This operation simply asks a VFD to perform a memory copy.
- The arguments to this operation are passed to the "ctl"
- callback's "input" parameter as a pointer to a struct
- defined as:
-
- struct H5FD_ctl_memcpy_args_t {
- void * dstbuf; /**< Destination buffer */
- hsize_t dst_off; /**< Offset within destination buffer */
- const void *srcbuf; /**< Source buffer */
- hsize_t src_off; /**< Offset within source buffer */
- size_t len; /**< Length of data to copy from source buffer */
- } H5FD_ctl_memcpy_args_t;
-
- Further, HDF5's compact dataset I/O routines were
- identified as a problematic area that could cause a crash
- for VFDs that make use of special memory management. Those
- I/O routines were therefore updated to make use of this new
- "ctl" callback operation in order to ask the underlying
- file driver to correctly handle memory copies.
-
- (JTH - 2021/09/28)
-
- - Adds new "ctl" callback to VFD H5FD_class_t structure
- with the following prototype:
-
- herr_t (*ctl)(H5FD_t *file, uint64_t op_code,
- uint64_t flags, const void *input,
- void **output);
-
- This newly-added "ctl" callback allows Virtual File
- Drivers to intercept and handle arbitrary operations
- identified by an operation code. Its parameters are
- as follows:
-
- `file` [in] - A pointer to the file to be operated on
- `op_code` [in] - The operation code identifying the
- operation to be performed
- `flags` [in] - Flags governing the behavior of the
- operation performed (see H5FDpublic.h
- for a list of valid flags)
- `input` [in] - A pointer to arguments passed to the
- VFD performing the operation
- `output` [out] - A pointer for the receiving VFD to
- use for output from the operation
-
- (JRM - 2021/08/16)
-
- - Change how the release part of version, in major.minor.release is checked
- for compatibility
-
- The HDF5 library uses a function, H5check_version, to check that
- the version defined in the header files, which is used to compile an
- application is compatible with the version codified in the library, which
- the application loads at runtime. This previously required an exact match
- or the library would print a warning, dump the build settings and then
- abort or continue. An environment variable controlled the logic.
-
- Now the function first checks that the library release version, in
- major.minor.release, is not older than the version in the headers.
- Secondly, if the release version is different, it checks if either
- the library version or the header version is in the exception list, in
- which case the release part of version, in major.minor.release, must
- be exact. An environment variable still controls the logic.
-
- (ADB - 2021/07/27)
-
- - gcc warning suppression macros were moved out of H5public.h
-
- The HDF5 library uses a set of macros to suppress warnings on gcc.
- These warnings were originally located in H5public.h so that the
- multi VFD (which only uses public headers) could also make use of them
- but internal macros should not be publicly exposed like this.
-
- These macros have now been moved to H5private.h. Pending future multi
- VFD refactoring, the macros have been duplicated in H5FDmulti.c to
- suppress the format string warnings there.
-
- (DER - 2021/06/03)
-
- - H5Gcreate1() now rejects size_hint parameters larger than UINT32_MAX
-
- The size_hint value is ultimately stored in a uint32_t struct field,
- so specifying a value larger than this on a 64-bit machine can cause
- undefined behavior including crashing the system.
-
- The documentation for this API call was also incorrect, stating that
- passing a negative value would cause the library to use a default
- value. Instead, passing a "negative" value actually passes a very large
- value, which is probably not what the user intends and can cause
- crashes on 64-bit systems.
-
- The Doxygen documentation has been updated and passing values larger
- than UINT32_MAX for size_hint will now produce a normal HDF5 error.
-
- (DER - 2021/04/29, HDFFV-11241)
-
-
- - H5Pset_fapl_log() no longer crashes when passed an invalid fapl ID
-
- When passed an invalid fapl ID, H5Pset_fapl_log() would usually
- segfault when attempting to free an uninitialized pointer in the error
- handling code. This behavior is more common in release builds or
- when the memory sanitization checks were not selected as a build
- option.
-
- The pointer is now correctly initialized and the API call now
- produces a normal HDF5 error when fed an invalid fapl ID.
-
- (DER - 2021/04/28, HDFFV-11240)
-
- - Fixes a segfault when H5Pset_mdc_log_options() is called multiple times
-
- The call incorrectly attempts to free an internal copy of the previous
- log location string, which causes a segfault. This only happens
- when the call is invoked multiple times on the same property list.
- On the first call to a given fapl, the log location is set to NULL so
- the segfault does not occur.
-
- The string is now handled properly and the segfault no longer occurs.
-
- (DER - 2021/04/27, HDFFV-11239)
-
- - HSYS_GOTO_ERROR now emits the results of GetLastError() on Windows
-
- HSYS_GOTO_ERROR is an internal macro that is used to produce error
- messages when system calls fail. These strings include errno and the
- the associated strerror() value, which are not particularly useful
- when a Win32 API call fails.
-
- On Windows, this macro has been updated to include the result of
- GetLastError(). When a system call fails on Windows, usually only
- one of errno and GetLastError() will be useful, however we emit both
- for the user to parse. The Windows error message is not emitted as
- it would be awkward to free the FormatMessage() buffer given the
- existing HDF5 error framework. Users will have to look up the error
- codes in MSDN.
-
- The format string on Windows has been changed from:
-
- "%s, errno = %d, error message = '%s'"
-
- to:
-
- "%s, errno = %d, error message = '%s', Win32 GetLastError() = %"PRIu32""
-
- for those inclined to parse it for error values.
-
- (DER - 2021/03/21)
-
- - File locking now works on Windows
-
- Since version 1.10.0, the HDF5 library has used a file locking scheme
- to help enforce one reader at a time accessing an HDF5 file, which can
- be helpful when setting up readers and writers to use the single-
- writer/multiple-readers (SWMR) access pattern.
-
- In the past, this was only functional on POSIX systems where flock() or
- fcntl() were present. Windows used a no-op stub that always succeeded.
-
- HDF5 now uses LockFileEx() and UnlockFileEx() to lock the file using the
- same scheme as POSIX systems. We lock the entire file when we set up the
- locks (by passing DWORDMAX as both size parameters to LockFileEx()).
-
- (DER - 2021/03/19, HDFFV-10191)
-
- - H5Epush_ret() now requires a trailing semicolon
-
- H5Epush_ret() is a function-like macro that has been changed to
- contain a `do {} while(0)` loop. Consequently, a trailing semicolon
- is now required to end the `while` statement. Previously, a trailing
- semi would work, but was not mandatory. This change was made to allow
- clang-format to correctly format the source code.
-
- (SAM - 2021/03/03)
-
- - Improved performance of H5Sget_select_elem_pointlist
-
- Modified library to cache the point after the last block of points
- retrieved by H5Sget_select_elem_pointlist, so a subsequent call to the
- same function to retrieve the next block of points from the list can
- proceed immediately without needing to iterate over the point list.
-
- (NAF - 2021/01/19)
-
- - Replaced H5E_ATOM with H5E_ID in H5Epubgen.h
-
- The term "atom" is archaic and not in line with current HDF5 library
- terminology, which uses "ID" instead. "Atom" has mostly been purged
- from the library internals and this change removes H5E_ATOM from
- the H5Epubgen.h (exposed via H5Epublic.h) and replaces it with
- H5E_ID.
-
- (DER - 2020/11/24, HDFFV-11190)
-
- - Add a new public function H5Ssel_iter_reset
-
- This function resets a dataspace selection iterator back to an
- initial state so that it may be used for iteration once more.
- This can be useful when needing to iterate over a selection
- multiple times without having to repeatedly create/destroy
- a selection iterator for that dataspace selection.
-
- (JTH - 2020/09/18)
-
- - Remove HDFS VFD stubs
-
- The original implementation of the HDFS VFD included non-functional
- versions of the following public API calls when the HDFS VFD is
- not built as a part of the HDF5 library:
-
- * H5FD_hdfs_init()
- * H5Pget_fapl_hdfs()
- * H5Pset_fapl_hdfs()
-
- They will remain present in HDF5 1.10 and HDF5 1.12 releases
- for binary compatibility purposes but have been removed as of 1.14.0.
-
- Note that this has nothing to do with the real HDFS VFD API calls
- that are fully functional when the HDFS VFD is configured and built.
-
- We simply changed:
-
- #ifdef LIBHDFS
-
- #else
-
- #endif
-
- to:
-
- #ifdef LIBHDFS
-
- #endif
-
- Which is how the other optional VFDs are handled.
-
- (DER - 2020/08/27)
-
- - Add Mirror VFD
-
- Use TCP/IP sockets to perform write-only (W/O) file I/O on a remote
- machine. Must be used in conjunction with the Splitter VFD.
-
- (JOS - 2020/03/13, TBD)
-
- - Add Splitter VFD
-
- Maintain separate R/W and W/O channels for "concurrent" file writes
- to two files using a single HDF5 file handle.
-
- (JOS - 2020/03/13, TBD)
-
- - Refactored public exposure of haddr_t type in favor of "object tokens"
-
- To better accommodate HDF5 VOL connectors where "object addresses in a file"
- may not make much sense, the following changes were made to the library:
-
- * Introduced new H5O_token_t "object token" type, which represents a
- unique and permanent identifier for referencing an HDF5 object within
- a container; these "object tokens" are meant to replace object addresses.
- Along with the new type, a new H5Oopen_by_token API call was introduced
- to open an object by a token, similar to how object addresses were
- previously used with H5Oopen_by_addr.
-
- * Introduced new H5Lget_info2, H5Lget_info_by_idx2, H5Literate2, H5Literate_by_name2,
- H5Lvisit2 and H5Lvisit_by_name2 API calls, along with their associated H5L_info2_t
- struct and H5L_iterate2_t callback function, which work with the newly-introduced
- object tokens, instead of object addresses. The original functions have been
- renamed to version 1 functions and are deprecated in favor of the new version 2
- functions. The H5L_info_t and H5L_iterate_t types have been renamed to version 1
- types and are now deprecated in favor of their version 2 counterparts. For each of
- the functions and types, compatibility macros take place of the original symbols.
-
- * Introduced new H5Oget_info3, H5Oget_info_by_name3, H5Oget_info_by_idx3,
- H5Ovisit3 and H5Ovisit_by_name3 API calls, along with their associated H5O_info2_t
- struct and H5O_iterate2_t callback function, which work with the newly-introduced
- object tokens, instead of object addresses. The version 2 functions are now
- deprecated in favor of the version 3 functions. The H5O_info_t and H5O_iterate_t
- types have been renamed to version 1 types and are now deprecated in favor of their
- version 2 counterparts. For each, compatibility macros take place of the original
- symbols.
-
- * Introduced new H5Oget_native_info, H5Oget_native_info_by_name and
- H5Oget_native_info_by_idx API calls, along with their associated H5O_native_info_t
- struct, which are used to retrieve the native HDF5 file format-specific information
- about an object. This information (such as object header info and B-tree/heap info)
- has been removed from the new H5O_info2_t struct so that the more generic
- H5Oget_info(_by_name/_by_idx)3 routines will not try to retrieve it for non-native
- VOL connectors.
-
- * Added new H5Otoken_cmp, H5Otoken_to_str and H5Otoken_from_str routines to compare
- two object tokens, convert an object token into a nicely-readable string format and
- to convert an object token string back into a real object token, respectively.
-
- (DER, QAK, JTH - 2020/01/16)
-
- - Add new public function H5Sselect_adjust.
-
- This function shifts a dataspace selection by a specified logical offset
- within the dataspace extent. This can be useful for VOL developers to
- implement chunked datasets.
-
- (NAF - 2019/11/18)
-
- - Add new public function H5Sselect_project_intersection.
-
- This function computes the intersection between two dataspace selections
- and projects that intersection into a third selection. This can be useful
- for VOL developers to implement chunked or virtual datasets.
-
- (NAF - 2019/11/13, ID-148)
-
- - Add new public function H5VLget_file_type.
-
- This function returns a datatype equivalent to the supplied datatype but
- with the location set to be in the file. This datatype can then be used
- with H5Tconvert to convert data between file and in-memory representation.
- This function is intended for use only by VOL connector developers.
-
- (NAF - 2019/11/08, ID-127)
-
-
- Parallel Library:
- -----------------
- -
-
-
- Fortran Library:
- ----------------
- - H5Fget_name_f fixed to handle correctly trailing whitespaces and
- newly allocated buffers.
-
- (MSB - 2021/08/30, github-826,972)
-
- - Add wrappers for H5Pset/get_file_locking() API calls
-
- h5pget_file_locking_f()
- h5pset_file_locking_f()
-
- See the configure option discussion for HDFFV-11092 (above) for more
- information on the file locking feature and how it's controlled.
-
- (DER - 2020/07/30, HDFFV-11092)
-
- C++ Library:
- ------------
- - Add wrappers for H5Pset/get_file_locking() API calls
-
- FileAccPropList::setFileLocking()
- FileAccPropList::getFileLocking()
-
- See the configure option discussion for HDFFV-11092 (above) for more
- information on the file locking feature and how it's controlled.
-
- (DER - 2020/07/30, HDFFV-11092)
-
-
- Java Library:
- -------------
- - Replaced HDF5AtomException with HDF5IdException
-
- Since H5E_ATOM changed to H5E_ID in the C library, the Java exception
- that wraps the error category was also renamed. Its functionality
- remains unchanged aside from the name.
-
- (See also the HDFFV-11190 note in the C library section)
-
- (DER - 2020/11/24, HDFFV-11190)
-
- - Added new H5S functions.
-
- H5Sselect_copy, H5Sselect_shape_same, H5Sselect_adjust,
- H5Sselect_intersect_block, H5Sselect_project_intersection,
- H5Scombine_hyperslab, H5Smodify_select, H5Scombine_select
- wrapper functions added.
-
- (ADB - 2020/10/27, HDFFV-10868)
-
- - Add wrappers for H5Pset/get_file_locking() API calls
-
- H5Pset_file_locking()
- H5Pget_use_file_locking()
- H5Pget_ignore_disabled_file_locking()
-
- Unlike the C++ and Fortran wrappers, there are separate getters for the
- two file locking settings, each of which returns a boolean value.
-
- See the configure option discussion for HDFFV-11092 (above) for more
- information on the file locking feature and how it's controlled.
-
- (DER - 2020/07/30, HDFFV-11092)
-
- - Added ability to test java library with VOLs.
-
- Created a new CMake script that combines the java and vol test scripts.
-
- (ADB - 2020/02/03, HDFFV-10996)
-
- - Tests fail for non-English locales.
-
- In the JUnit tests with a non-English locale, only the part before
- the decimal comma is replaced by XXXX and this leads to a comparison
- error. Changed the regex for the Time substitution.
-
- (ADB - 2020/01/09, HDFFV-10995)
-
-
- Tools:
- ------
- - h5repack added an optional verbose value for reporting R/W timing.
-
- In addition to adding timing capture around the read/write calls in
- h5repack, added help text to indicate how to show timing for read/write;
- -v N, --verbose=N Verbose mode, print object information.
- N - is an integer greater than 1, 2 displays read/write timing
- (ADB - 2021/11/08)
-
- - Added a new (unix ONLY) parallel meta tool 'h5dwalk', which utilizes the
- mpifileutils (https://hpc.github.io/mpifileutils) open source utility
- library to enable parallel execution of other HDF5 tools.
- This approach can greatly enhance the serial hdf5 tool performance over large
- collections of files by utilizing MPI parallelism to distribute an application
- load over many independent MPI ranks and files.
-
- An introduction to the mpifileutils library and initial 'User Guide' for
- the new 'h5dwalk" tool can be found at:
- https://github.com/HDFGroup/hdf5doc/tree/master/RFCs/HDF5/tools/parallel_tools
-
- (RAW - 2021/10/25)
-
- - Refactored the perform tools and removed depends on test library.
-
- Moved the perf and h5perf tools from tools/test/perform to
- tools/src/h5perf so that they can be installed. This required
- that the test library dependency be removed by copying the
- needed functions from h5test.c.
- The standalone scripts and other perform tools remain in the
- tools/test/perform folder.
-
- (ADB - 2021/08/10)
-
- - Removed partial long exceptions
-
- Some of the tools accepted shortened versions of the long options
- (ex: --datas instead of --dataset). These were implemented inconsistently,
- are difficult to maintian, and occasionally block useful long option
- names. These partial long options have been removed from all the tools.
-
- (DER - 2021/08/03)
-
- - h5repack added help text for user-defined filters.
-
- Added help text line that states the valid values of the filter flag
- for user-defined filters;
- filter_flag: 1 is OPTIONAL or 0 is MANDATORY
-
- (ADB - 2021/01/14, HDFFV-11099)
-
- - Added h5delete tool
-
- Deleting HDF5 storage when using the VOL can be tricky when the VOL
- does not create files. The h5delete tool is a simple wrapper around
- the H5Fdelete() API call that uses the VOL specified in the
- HDF5_VOL_CONNECTOR environment variable to delete a "file". If
- the call to H5Fdelete() fails, the tool will attempt to use
- the POSIX remove(3) call to remove the file.
-
- Note that the HDF5 library does currently have support for
- H5Fdelete() in the native VOL connector.
-
- (DER - 2020/12/16)
-
- - h5repack added options to control how external links are handled.
-
- Currently h5repack preserves external links and cannot copy and merge
- data from the external files. Two options, merge and prune, were added to
- control how to merge data from an external link into the resulting file.
- --merge Follow external soft link recursively and merge data.
- --prune Do not follow external soft links and remove link.
- --merge --prune Follow external link, merge data and remove dangling link.
-
- (ADB - 2020/08/05, HDFFV-9984)
-
- - h5repack was fixed to repack the reference attributes properly.
- The code line that checks if the update of reference inside a compound
- datatype is misplaced outside the code block loop that carries out the
- check. In consequence, the next attribute that is not the reference
- type was repacked again as the reference type and caused the failure of
- repacking. The fix is to move the corresponding code line to the correct
- code block.
-
- (KY -2020/02/07, HDFFV-11014)
-
- - h5diff was updated to use the new reference APIs.
-
- h5diff uses the new reference APIs to compare references.
- Attribute references can also be compared.
-
- (ADB - 2019/12/19, HDFFV-10980)
-
- - h5dump and h5ls were updated to use the new reference APIs.
-
- The tools library now use the new reference APIs to inspect a
- file. Also the DDL spec was updated to reflect the format
- changes produced with the new APIs. The export API and support
- functions in the JNI were updated to match.
-
- (ADB - 2019/12/06, HDFFV-10876 and HDFFV-10877)
-
-
- High-Level APIs:
- ----------------
- - added set/get for unsigned long long attributes
-
- The attribute writing high-level API has been expanded to include
- public set/get functions for ULL attributes, analogously to the
- existing set/get for other types.
-
- (AF - 2021/09/08)
-
- C Packet Table API:
- -------------------
- -
-
- Internal header file:
- ---------------------
- -
-
- Documentation:
- --------------
- -
-
-
-New platforms, languages and compilers tested
-=============================================
- - Linux 5.13.14-200.fc34 #1 SMP x86_64 GNU/Linux Fedora34
- - Linux 5.11.0-34-generic #36-Ubuntu SMP x86_64 GNU/Linux Ubuntu 20.04
- - Linux 5.3.18-22-default #1 SMP x86_64 GNU/Linux SUSE15sp2
- - Linux-4.14.0-115.21.2 #1 SMP ppc64le GNU/Linux
- - Linux-4.12.14-150.75-default #1 SMP x86_64 GNU/Linux
- - macOS Apple M1 11.6 Darwin 20.6.0 arm64
- - macOS Big Sur 11.3.1 Darwin 20.4.0 x86_64
- - clang versions 11.0.1, 12.0.5
- - Visual Studio 2019 w/ clang 12.0.0 with MSVC-like command-line
-
-
-Bug Fixes since HDF5-1.12.0 release
-===================================
- Library
- -------
- - Fixed an H5Pget_filter_by_id1/2() assert w/ out of range filter IDs
-
- Both H5Pget_filter_by_id1 and 2 did not range check the filter ID, which
- could trip as assert in debug versions of the library. The library now
- returns a normal HDF5 error when the filter ID is out of range.
-
- (DER - 2021/11/23, HDFFV-11286)
-
- - Fixed an issue with collective metadata reads being permanently disabled
- after a dataset chunk lookup operation. This would usually cause a
- mismatched MPI_Bcast and MPI_ERR_TRUNCATE issue in the library for
- simple cases of H5Dcreate() -> H5Dwrite() -> H5Dcreate().
-
- (JTH - 2021/11/08, HDFFV-11090)
-
- - Fixed cross platform incompatibility of references within variable length
- types
-
- Reference types within variable length types previously could not be
- read on a platform with different endianness from where they were
- written. Fixed so cross platform portability is restored.
-
- (NAF - 2021/09/30)
-
- - Detection of simple data transform function "x"
-
- In the case of the simple data transform function "x" the (parallel)
- library recognizes this is the same as not applying this data transform
- function. This improves the I/O performance. In the case of the parallel
- library, it also avoids breaking to independent I/O, which makes it
- possible to apply a filter when writing or reading data to or from
- the HDF5 file.
-
- (JWSB - 2021/09/13)
-
- - Fixed an invalid read and memory leak when parsing corrupt file space
- info messages
-
- When the corrupt file from CVE-2020-10810 was parsed by the library,
- the code that imports the version 0 file space info object header
- message to the version 1 struct could read past the buffer read from
- the disk, causing an invalid memory read. Not catching this error would
- cause downstream errors that eventually resulted in a previously
- allocated buffer to be unfreed when the library shut down. In builds
- where the free lists are in use, this could result in an infinite loop
- and SIGABRT when the library shuts down.
-
- We now track the buffer size and raise an error on attempts to read
- past the end of it.
-
- (DER - 2021/08/12, HDFFV-11053)
-
-
- - Fixed CVE-2018-14460
-
- The tool h5repack produced a segfault when the rank in dataspace
- message was corrupted, causing invalid read while decoding the
- dimension sizes.
-
- The problem was fixed by ensuring that decoding the dimension sizes
- and max values will not go beyond the end of the buffer.
-
- (BMR - 2021/05/12, HDFFV-11223)
-
- - Fixed CVE-2018-11206
-
- The tool h5dump produced a segfault when the size of a fill value
- message was corrupted and caused a buffer overflow.
-
- The problem was fixed by verifying the fill value's size
- against the buffer size before attempting to access the buffer.
-
- (BMR - 2021/03/15, HDFFV-10480)
-
- - Fixed CVE-2018-14033 (same issue as CVE-2020-10811)
-
- The tool h5dump produced a segfault when the storage size message
- was corrupted and caused a buffer overflow.
-
- The problem was fixed by verifying the storage size against the
- buffer size before attempting to access the buffer.
-
- (BMR - 2021/03/15, HDFFV-11159/HDFFV-11049)
-
- - Remove underscores on header file guards
-
- Header file guards used a variety of underscores at the beginning of the define.
-
- Removed all leading (some trailing) underscores from header file guards.
-
- (ADB - 2021/03/03, #361)
-
- - Fixed a segmentation fault
-
- A segmentation fault occurred with a Mathworks corrupted file.
-
- A detection of accessing a null pointer was added to prevent the problem.
-
- (BMR - 2021/02/19, HDFFV-11150)
-
- - Fixed issue with MPI communicator and info object not being
- copied into new FAPL retrieved from H5F_get_access_plist
-
- Added logic to copy the MPI communicator and info object into
- the output FAPL. MPI communicator is retrieved from the VFD, while
- the MPI info object is retrieved from the file's original FAPL.
-
- (JTH - 2021/02/15, HDFFV-11109)
-
- - Fixed problems with vlens and refs inside compound using
- H5VLget_file_type()
-
- Modified library to properly ref count H5VL_object_t structs and only
- consider file vlen and reference types to be equal if their files are
- the same.
-
- (NAF - 2021/01/22)
-
- - Fixed CVE-2018-17432
-
- The tool h5repack produced a segfault on a corrupted file which had
- invalid rank for scalar or NULL datatype.
-
- The problem was fixed by modifying the dataspace encode and decode
- functions to detect and report invalid rank. h5repack now fails
- with an error message for the corrupted file.
-
- (BMR - 2020/10/26, HDFFV-10590)
-
- - Creation of dataset with optional filter
-
- When the combination of type, space, etc doesn't work for filter
- and the filter is optional, it was supposed to be skipped but it was
- not skipped and the creation failed.
-
- Allowed the creation of the dataset in such a situation.
-
- (BMR - 2020/08/13, HDFFV-10933)
-
- - Explicitly declared dlopen to use RTLD_LOCAL
-
- dlopen documentation states that if neither RTLD_GLOBAL nor
- RTLD_LOCAL are specified, then the default behavior is unspecified.
- The default on linux is usually RTLD_LOCAL while macos will default
- to RTLD_GLOBAL.
-
- (ADB - 2020/08/12, HDFFV-11127)
-
- - H5Sset_extent_none() sets the dataspace class to H5S_NO_CLASS which
- causes asserts/errors when passed to other dataspace API calls.
-
- H5S_NO_CLASS is an internal class value that should not have been
- exposed via a public API call.
-
- In debug builds of the library, this can cause assert() function to
- trip. In non-debug builds, it will produce normal library errors.
-
- The new library behavior is for H5Sset_extent_none() to convert
- the dataspace into one of type H5S_NULL, which is better handled
- by the library and easier for developers to reason about.
-
- (DER - 2020/07/27, HDFFV-11027)
-
- - Fixed issues CVE-2018-13870 and CVE-2018-13869
-
- When a buffer overflow occurred because a name length was corrupted
- and became very large, h5dump crashed on memory access violation.
-
- A check for reading pass the end of the buffer was added to multiple
- locations to prevent the crashes and h5dump now simply fails with an
- error message when this error condition occurs.
-
- (BMR - 2020/07/22, HDFFV-11120 and HDFFV-11121)
-
- - Fixed the segmentation fault when reading attributes with multiple threads
-
- It was reported that the reading of attributes with variable length string
- datatype will crash with segmentation fault particularly when the number of
- threads is high (>16 threads). The problem was due to the file pointer that
- was set in the variable length string datatype for the attribute. That file
- pointer was already closed when the attribute was accessed.
-
- The problem was fixed by setting the file pointer to the current opened file pointer
- when the attribute was accessed. Similar patch up was done before when reading
- dataset with variable length string datatype.
-
- (VC - 2020/07/13, HDFFV-11080)
-
- - Fixed CVE-2020-10810
-
- The tool h5clear produced a segfault during an error recovery in
- the superblock decoding. An internal pointer was reset to prevent
- further accessing when it is not assigned with a value.
-
- (BMR - 2020/06/29, HDFFV-11053)
-
- - Fixed CVE-2018-17435
-
- The tool h52gif produced a segfault when the size of an attribute
- message was corrupted and caused a buffer overflow.
-
- The problem was fixed by verifying the attribute message's size
- against the buffer size before accessing the buffer. h52gif was
- also fixed to display the failure instead of silently exiting
- after the segfault was eliminated.
-
- (BMR - 2020/06/19, HDFFV-10591)
-
-
- Java Library
- ------------
- - JNI utility function does not handle new references.
-
- The JNI utility function for converting reference data to string did
- not use the new APIs. In addition to fixing that function, added new
- java tests for using the new APIs.
-
- (ADB - 2021/02/16, HDFFV-11212)
-
- - The H5FArray.java class, in which virtually the entire execution time
- is spent using the HDFNativeData method that converts from an array
- of bytes to an array of the destination Java type.
-
- 1. Convert the entire byte array into a 1-d array of the desired type,
- rather than performing 1 conversion per row;
- 2. Use the Java Arrays method copyOfRange to grab the section of the
- array from (1) that is desired to be inserted into the destination array.
-
- (PGT,ADB - 2020/12/13, HDFFV-10865)
-
- - Added ability to test java library with VOLs.
-
- Created a new CMake script that combines the java and vol test scripts.
-
- (ADB - 2020/02/03, HDFFV-10996)
-
- - Tests fail for non-English locales.
-
- In the JUnit tests with a non-English locale, only the part before
- the decimal comma is replaced by XXXX and this leads to a comparison
- error. Changed the regex for the Time substitution.
-
- (ADB - 2020/01/09, HDFFV-10995)
-
-
- Configuration
- -------------
- - Corrected path searched by CMake find_package command
-
- The install path for cmake find_package files had been changed to use
- "share/cmake"
- for all platforms. However the trailing "hdf5" directory was not removed.
- This "hdf5" additional directory has been removed.
-
- (ADB - 2021/09/27)
-
- - Corrected pkg-config compile script
-
- It was discovered that the position of the "$@" argument for the command
- in the compile script may fail on some platforms and configurations. The
- position of the "$@"command argument was moved before the pkg-config sub command.
-
- (ADB - 2021/08/30)
-
- - Fixed CMake C++ compiler flags
-
- A recent refactoring of the C++ configure files accidentally removed the
- file that executed the enable_language command for C++ needed by the
- HDFCXXCompilerFlags.cmake file. Also updated the intel warnings files,
- including adding support for windows platforms.
-
- (ADB - 2021/08/10)
-
- - Better support for libaec (open-source Szip library) in CMake
-
- Implemented better support for libaec 1.0.5 (or later) library. This version
- of libaec contains improvements for better integration with HDF5. Furthermore,
- the variable USE_LIBAEC_STATIC has been introduced to allow to make use of
- static version of libaec library. Use libaec_DIR or libaec_ROOT to set
- the location in which libaec can be found.
-
- Be aware, the Szip library of libaec 1.0.4 depends on another library within
- libaec library. This dependency is not specified in the current CMake
- configuration which means that one can not use the static Szip library of
- libaec 1.0.4 when building HDF5. This has been resolved in libaec 1.0.5.
-
- (JWSB - 2021/06/22)
-
- - Refactor CMake configure for Fortran
-
- The Fortran configure tests for KINDs reused a single output file that was
- read to form the Integer and Real Kinds defines. However, if config was run
- more then once, the CMake completed variable prevented the tests from executing
- again and the last value saved in the file was used to create the define.
- Creating separate files for each KIND solved the issue.
-
- In addition the test for H5_PAC_C_MAX_REAL_PRECISION was not pulling in
- defines for proper operation and did not define H5_PAC_C_MAX_REAL_PRECISION
- correctly for a zero value. This was fixed by supplying the required defines.
- In addition it was moved from the Fortran specific HDF5UseFortran.camke file
- to the C centric ConfigureChecks.cmake file.
-
- (ADB - 2021/06/03)
-
- - Move emscripten flag to compile flags
-
- The emscripten flag, -O0, was removed from target_link_libraries command
- to the correct target_compile_options command.
-
- (ADB - 2021/04/26 HDFFV-11083)
-
- - Remove arbitrary warning flag groups from CMake builds
-
- The arbitrary groups were created to reduce the quantity of warnings being
- reported that overwhelmed testing report systems. Considerable work has
- been accomplished to reduce the warning count and these arbitrary groups
- are no longer needed.
- Also the default for all warnings, HDF5_ENABLE_ALL_WARNINGS, is now ON.
-
- Visual Studio warnings C4100, C4706, and C4127 have been moved to
- developer warnings, HDF5_ENABLE_DEV_WARNINGS, and are disabled for normal builds.
-
- (ADB - 2021/03/22, HDFFV-11228)
-
- - Reclassify CMake messages, to allow new modes and --log-level option
-
- CMake message commands have a mode argument. By default, STATUS mode
- was chosen for any non-error message. CMake version 3.15 added additional
- modes, NOTICE, VERBOSE, DEBUG and TRACE. All message commands with a mode
- of STATUS were reviewed and most were reclassified as VERBOSE. The new
- mode was protected by a check for a CMake version of at least 3.15. If CMake
- version 3.17 or above is used, the user can use the command line option
- of "--log-level" to further restrict which message commands are displayed.
-
- (ADB - 2021/01/11, HDFFV-11144)
-
- - Fixes Autotools determination of the stat struct having an st_blocks field
-
- A missing parenthesis in an autoconf macro prevented building the test
- code used to determine if the stat struct contains the st_blocks field.
- Now that the test functions correctly, the H5_HAVE_STAT_ST_BLOCKS #define
- found in H5pubconf.h will be defined correctly on both the Autotools and
- CMake. This #define is only used in the tests and does not affect the
- HDF5 C library.
-
- (DER - 2021/01/07, HDFFV-11201)
-
- - Add missing ENV variable line to hdfoptions.cmake file
-
- Using the build options to use system SZIP/ZLIB libraries need to also
- specify the library root directory. Setting the {library}_ROOT ENV
- variable was added to the hdfoptions.cmake file.
-
- (ADB - 2020/10/19 HDFFV-11108)
-
-
- Tools
- -----
- - Changed how h5dump and h5ls identify long double.
-
- Long double support is not consistent across platforms. Tools will always
- identify long double as 128-bit [little/big]-endian float nn-bit precision.
- New test file created for datasets with attributes for float, double and
- long double. In addition any unknown integer or float datatype will now
- also show the number of bits for precision.
- These files are also used in the java tests.
-
- (ADB - 2021/03/24, HDFFV-11229,HDFFV-11113)
-
- - Fixed tools argument parsing.
-
- Tools parsing used the length of the option from the long array to match
- the option from the command line. This incorrectly matched a shorter long
- name option that happened to be a subset of another long option.
- Changed to match whole names.
-
- (ADB - 2021/01/19, HDFFV-11106)
-
- - The tools library was updated by standardizing the error stack process.
-
- General sequence is:
- h5tools_setprogname(PROGRAMNAME);
- h5tools_setstatus(EXIT_SUCCESS);
- h5tools_init();
- ... process the command-line (check for error-stack enable) ...
- h5tools_error_report();
- ... (do work) ...
- h5diff_exit(ret);
-
- (ADB - 2020/07/20, HDFFV-11066)
-
- - h5diff fixed a command line parsing error.
-
- h5diff would ignore the argument to -d (delta) if it is smaller than DBL_EPSILON.
- The macro H5_DBL_ABS_EQUAL was removed and a direct value comparison was used.
-
- (ADB - 2020/07/20, HDFFV-10897)
-
- - h5diff added a command line option to ignore attributes.
-
- h5diff would ignore all objects with a supplied path if the exclude-path argument is used.
- Adding the exclude-attribute argument will only exclude attributes, with the supplied path,
- from comparison.
-
- (ADB - 2020/07/20, HDFFV-5935)
-
- - h5diff added another level to the verbose argument to print filenames.
-
- Added verbose level 3 that is level 2 plus the filenames. The levels are:
- 0 : Identical to '-v' or '--verbose'
- 1 : All level 0 information plus one-line attribute status summary
- 2 : All level 1 information plus extended attribute status report
- 3 : All level 2 information plus file names
-
- (ADB - 2020/07/20, HDFFV-1005)
-
- - h5repack was fixed to repack the reference attributes properly.
-
- The code line that checks if the update of reference inside a compound
- datatype is misplaced outside the code block loop that carries out the
- check. In consequence, the next attribute that is not the reference
- type was repacked again as the reference type and caused the failure of
- repacking. The fix is to move the corresponding code line to the correct
- code block.
-
- (KY -2020/02/10, HDFFV-11014)
-
- - h5diff was updated to use the new reference APIs.
-
- h5diff uses the new reference APIs to compare references.
- Attribute references can also be compared.
-
- (ADB - 2019/12/19, HDFFV-10980)
-
- - h5dump and h5ls were updated to use the new reference APIs.
-
- The tools library now use the new reference APIs to inspect a
- file. Also the DDL spec was updated to reflect the format
- changes produced with the new APIs. The export API and support
- functions in the JNI were updated to match.
-
- (ADB - 2019/12/06, HDFFV-10876 and HDFFV-10877)
-
-
- Performance
- -------------
- -
-
-
- Fortran API
- -----------
- - Corrected INTERFACE INTENT(IN) to INTENT(OUT) for buf_size in h5fget_file_image_f.
-
- (MSB - 2020/02/18, HDFFV-11029)
-
-
- High-Level Library
- ------------------
- - Fixed HL_test_packet, test for packet table vlen of vlen.
-
- Incorrect length assignment.
-
- (ADB - 2021/10/14)
-
-
- Fortran High-Level APIs
- -----------------------
- -
-
-
- Documentation
- -------------
- -
-
-
- F90 APIs
- --------
- -
-
-
- C++ APIs
- --------
- - Added DataSet::operator=
-
- Some compilers complain if the copy constructor is given explicitly
- but the assignment operator is implicitly set to default.
-
- (2021/05/19)
-
-
- Testing
- -------
- - Stopped java/test/junit.sh.in installing libs for testing under ${prefix}
-
- Lib files needed are now copied to a subdirectory in the java/test
- directory, and on Macs the loader path for libhdf5.xxxs.so is changed
- in the temporary copy of libhdf5_java.dylib.
-
- (LRK, 2020/07/02, HDFFV-11063)
-
-
-Platforms Tested
-===================
-
- Linux 5.13.14-200.fc34 GNU gcc (GCC) 11.2.1 2021078 (Red Hat 11.2.1-1)
- #1 SMP x86_64 GNU/Linux GNU Fortran (GCC) 11.2.1 2021078 (Red Hat 11.2.1-1)
- Fedora34 clang version 12.0.1 (Fedora 12.0.1-1.fc34)
- (cmake and autotools)
-
- Linux 5.11.0-34-generic GNU gcc (GCC) 9.3.0-17ubuntu1
- #36-Ubuntu SMP x86_64 GNU/Linux GNU Fortran (GCC) 9.3.0-17ubuntu1
- Ubuntu 20.04 Ubuntu clang version 10.0.0-4
- (cmake and autotools)
-
- Linux 5.8.0-63-generic GNU gcc (GCC) 10.3.0-1ubuntu1
- #71-Ubuntu SMP x86_64 GNU/Linux GNU Fortran (GCC) 10.3.0-1ubuntu1
- Ubuntu20.10 Ubuntu clang version 11.0.0-2
- (cmake and autotools)
-
- Linux 5.3.18-22-default GNU gcc (SUSE Linux) 7.5.0
- #1 SMP x86_64 GNU/Linux GNU Fortran (SUSE Linux) 7.5.0
- SUSE15sp2 clang version 7.0.1 (tags/RELEASE_701/final 349238)
- (cmake and autotools)
-
- Linux-4.14.0-115.21.2 spectrum-mpi/rolling-release
- #1 SMP ppc64le GNU/Linux clang 8.0.1, 11.0.1
- (lassen) GCC 7.3.1
- XL 16.1.1.2
- (cmake)
-
- Linux-4.12.14-150.75-default cray-mpich/7.7.10
- #1 SMP x86_64 GNU/Linux GCC 7.3.0, 8.2.0
- (cori) Intel (R) Version 19.0.3.199
- (cmake)
-
- Linux-4.12.14-197.86-default cray-mpich/7.7.6
- # 1SMP x86_64 GNU/Linux GCC 7.3.0, 9.3.0, 10.2.0
- (mutrino) Intel (R) Version 17.0.4, 18.0.5, 19.1.3
- (cmake)
-
- Linux 3.10.0-1160.36.2.el7.ppc64 gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
- #1 SMP ppc64be GNU/Linux g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
- Power8 (echidna) GNU Fortran (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
-
- Linux 3.10.0-1160.24.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- Centos7 Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- (jelly/kituo/moohan) Version 4.9.3, Version 5.3.0, Version 6.3.0,
- Version 7.2.0, Version 8.3.0, Version 9.1.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.0.098 Build 20160721
- GNU C (gcc) and C++ (g++) 4.8.5 compilers
- with NAG Fortran Compiler Release 6.1(Tozai)
- Intel(R) C (icc) and C++ (icpc) 17.0.0.098 compilers
- with NAG Fortran Compiler Release 6.1(Tozai)
- MPICH 3.1.4 compiled with GCC 4.9.3
- MPICH 3.3 compiled with GCC 7.2.0
- OpenMPI 2.1.6 compiled with icc 18.0.1
- OpenMPI 3.1.3 and 4.0.0 compiled with GCC 7.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86_64;
- Version 19.10-0
-
- Linux-3.10.0-1127.0.0.1chaos openmpi-4.0.0
- #1 SMP x86_64 GNU/Linux clang 6.0.0, 11.0.1
- (quartz) GCC 7.3.0, 8.1.0
- Intel 16.0.4, 18.0.2, 19.0.4
-
- macOS Apple M1 11.6 Apple clang version 12.0.5 (clang-1205.0.22.11)
- Darwin 20.6.0 arm64 gfortran GNU Fortran (Homebrew GCC 11.2.0) 11.1.0
- (macmini-m1) Intel icc/icpc/ifort version 2021.3.0 202106092021.3.0 20210609
-
- macOS Big Sur 11.3.1 Apple clang version 12.0.5 (clang-1205.0.22.9)
- Darwin 20.4.0 x86_64 gfortran GNU Fortran (Homebrew GCC 10.2.0_3) 10.2.0
- (bigsur-1) Intel icc/icpc/ifort version 2021.2.0 20210228
-
- macOS High Sierra 10.13.6 Apple LLVM version 10.0.0 (clang-1000.10.44.4)
- 64-bit gfortran GNU Fortran (GCC) 6.3.0
- (bear) Intel icc/icpc/ifort version 19.0.4.233 20190416
-
- macOS Sierra 10.12.6 Apple LLVM version 9.0.0 (clang-900.39.2)
- 64-bit gfortran GNU Fortran (GCC) 7.4.0
- (kite) Intel icc/icpc/ifort version 17.0.2
-
- Mac OS X El Capitan 10.11.6 Apple clang version 7.3.0 from Xcode 7.3
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1011test) Intel icc/icpc/ifort version 16.0.2
-
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- Centos6 Version 4.4.7 20120313
- (platypus) Version 4.9.3, 5.3.0, 6.2.0
- MPICH 3.1.4 compiled with GCC 4.9.3
- PGI C, Fortran, C++ for 64-bit target on
- x86_64;
- Version 19.10-0
-
- Windows 10 x64 Visual Studio 2015 w/ Intel C/C++/Fortran 18 (cmake)
- Visual Studio 2017 w/ Intel C/C++/Fortran 19 (cmake)
- Visual Studio 2019 w/ clang 12.0.0
- with MSVC-like command-line (C/C++ only - cmake)
- Visual Studio 2019 w/ Intel Fortran 19 (cmake)
- Visual Studio 2019 w/ MSMPI 10.1 (C only - cmake)
-
-
-Known Problems
-==============
- Setting a variable-length dataset fill value will leak the memory allocated
- for the p field of the hvl_t struct. A fix is in progress for this.
- HDFFV-10840
-
- CMake files do not behave correctly with paths containing spaces.
- Do not use spaces in paths because the required escaping for handling spaces
- results in very complex and fragile build files.
- ADB - 2019/05/07
-
- At present, metadata cache images may not be generated by parallel
- applications. Parallel applications can read files with metadata cache
- images, but since this is a collective operation, a deadlock is possible
- if one or more processes do not participate.
-
- CPP ptable test fails on both VS2017 and VS2019 with Intel compiler, JIRA
- issue: HDFFV-10628. This test will pass with VS2015 with Intel compiler.
-
- The subsetting option in ph5diff currently will fail and should be avoided.
- The subsetting option works correctly in serial h5diff.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-CMake vs. Autotools installations
-=================================
-While both build systems produce similar results, there are differences.
-Each system produces the same set of folders on linux (only CMake works
-on standard Windows); bin, include, lib and share. Autotools places the
-COPYING and RELEASE.txt file in the root folder, CMake places them in
-the share folder.
-
-The bin folder contains the tools and the build scripts. Additionally, CMake
-creates dynamic versions of the tools with the suffix "-shared". Autotools
-installs one set of tools depending on the "--enable-shared" configuration
-option.
- build scripts
- -------------
- Autotools: h5c++, h5cc, h5fc
- CMake: h5c++, h5cc, h5hlc++, h5hlcc
-
-The include folder holds the header files and the fortran mod files. CMake
-places the fortran mod files into separate shared and static subfolders,
-while Autotools places one set of mod files into the include folder. Because
-CMake produces a tools library, the header files for tools will appear in
-the include folder.
-
-The lib folder contains the library files, and CMake adds the pkgconfig
-subfolder with the hdf5*.pc files used by the bin/build scripts created by
-the CMake build. CMake separates the C interface code from the fortran code by
-creating C-stub libraries for each Fortran library. In addition, only CMake
-installs the tools library. The names of the szip libraries are different
-between the build systems.
-
-The share folder will have the most differences because CMake builds include
-a number of CMake specific files for support of CMake's find_package and support
-for the HDF5 Examples CMake project.
-
-The issues with the gif tool are:
- HDFFV-10592 CVE-2018-17433
- HDFFV-10593 CVE-2018-17436
- HDFFV-11048 CVE-2020-10809
-These CVE issues have not yet been addressed and can be avoided by not building
-the gif tool. Disable building the High-Level tools with these options:
- autotools: --disable-hltools
- cmake: HDF5_BUILD_HL_TOOLS=OFF
- cmake: HDF5_BUILD_HL_TOOLS=OFF
diff --git a/release_docs/HISTORY-1_14.txt b/release_docs/HISTORY-1_14.txt
new file mode 100644
index 0000000..f012f47
--- /dev/null
+++ b/release_docs/HISTORY-1_14.txt
@@ -0,0 +1,2315 @@
+HDF5 History
+============
+
+This file contains development history of the HDF5 1.14 branch
+
+01. Release Information for hdf5-1.14.0
+
+[Search on the string '%%%%' for section breaks of each release.]
+
+%%%%1.14.0%%%%
+
+HDF5 version 1.14.0 released on 2022-12-28
+================================================================================
+
+
+INTRODUCTION
+============
+
+This document describes the differences between this release and the previous
+HDF5 release. It contains information on the platforms tested and known
+problems in this release. For more details check the HISTORY*.txt files in the
+HDF5 source.
+
+Note that documentation in the links below will be updated at the time of each
+final release.
+
+Links to HDF5 documentation can be found on The HDF5 web page:
+
+ https://portal.hdfgroup.org/display/HDF5/HDF5
+
+The official HDF5 releases can be obtained from:
+
+ https://www.hdfgroup.org/downloads/hdf5/
+
+Changes from Release to Release and New Features in the HDF5-1.13.x release series
+can be found at:
+
+ https://portal.hdfgroup.org/display/HDF5/Release+Specific+Information
+
+If you have any questions or comments, please send them to the HDF Help Desk:
+
+ help@hdfgroup.org
+
+
+CONTENTS
+========
+
+- New Features
+- Support for new platforms and languages
+- Bug Fixes since HDF5-1.12.0
+- Platforms Tested
+- Known Problems
+- CMake vs. Autotools installations
+
+
+New Features
+============
+
+ Configuration:
+ -------------
+ - Removal of MPE support
+
+ The ability to build with MPE instrumentation has been removed along with
+ the following configure options:
+
+ Autotools:
+ --with-mpe=
+
+ CMake has never supported building with MPE support.
+
+ (DER - 2022/11/08)
+
+ - Removal of dmalloc support
+
+ The ability to build with dmalloc support has been removed along with
+ the following configure options:
+
+ Autotools:
+ --with-dmalloc=
+
+ CMake:
+ HDF5_ENABLE_USING_DMALLOC
+
+ (DER - 2022/11/08)
+
+ - Removal of memory allocation sanity checks configure options
+
+ With the removal of the memory allocation sanity checks feature, the
+ following configure options are no longer necessary and have been
+ removed:
+
+ Autotools:
+ --enable-memory-alloc-sanity-check
+
+ CMake:
+ HDF5_MEMORY_ALLOC_SANITY_CHECK
+ HDF5_ENABLE_MEMORY_STATS
+
+ (DER - 2022/11/03)
+
+ - Add new CMake configuration variable HDF5_USE_GNU_DIRS
+
+ HDF5_USE_GNU_DIRS (default OFF) selects the use of GNU Coding Standard install
+ directory variables by including the CMake module, GNUInstallDirs(see CMake
+ documentation for details). The HDF_DIR_PATHS macro in the HDFMacros.cmake file
+ sets various PATH variables for use during the build, test and install processes.
+ By default, the historical settings for these variables will be used.
+
+ (ADB - 2022/10/21, GH-2175, GH-1716)
+
+ - Update CMake minimum version to 3.18
+
+ Updated CMake minimum version from 3.12 to 3.18 and removed version checks
+ which were added for Windows features not yet available in version 3.12. Also
+ removed configure macros and code checks for old style code compile checks.
+
+ (ADB - 2022/08/29, HDFFV-11329)
+
+ - Correct the usage of CMAKE_Fortran_MODULE_DIRECTORY and where to
+ install Fortran mod files.
+
+ The Fortran modules files, ending in .mod are files describing a
+ Fortran 90 (and above) module API and ABI. These are not like C
+ header files describing an API, they are compiler dependent and
+ arch dependent, and not easily readable by a human being. They are
+ nevertheless searched for in the includes directories by gfortran
+ (in directories specified with -I).
+
+ Autotools configure uses the -fmoddir option to specify the folder.
+ CMake will use "mod" folder by default unless overridden by the CMake
+ variable; HDF5_INSTALL_MODULE_DIR.
+
+ (ADB - 2022/07/21)
+
+ - HDF5 memory allocation sanity checking is now off by default for
+ Autotools debug builds
+
+ HDF5 can be configured to perform sanity checking on internal memory
+ allocations by adding heap canaries to these allocations. However,
+ enabling this option can cause issues with external filter plugins
+ when working with (reallocating/freeing/allocating and passing back)
+ buffers.
+
+ Previously, this option was off by default for all CMake build types,
+ but only off by default for non-debug Autotools builds. Since debug
+ is the default build mode for HDF5 when built from source with
+ Autotools, this can result in surprising segfaults that don't occur
+ when an application is built against a release version of HDF5.
+ Therefore, this option is now off by default for all build types
+ across both CMake and Autotools.
+
+ (JTH - 2022/03/01)
+
+ - Reworked corrected path searched by CMake find_package command
+
+ The install path for cmake find_package files had been changed to use
+ "share/cmake"
+ for all platforms. However setting the HDF5_ROOT variable failed to locate
+ the configuration files. The build variable HDF5_INSTALL_CMAKE_DIR is now
+ set to the /cmake folder. The location of the configuration
+ files can still be specified by the "HDF5_DIR" variable.
+
+ (ADB - 2022/02/02)
+
+ - CPack will now generate RPM/DEB packages.
+
+ Enabled the RPM and DEB CPack generators on linux. In addition to
+ generating STGZ and TGZ packages, CPack will try to package the
+ library for RPM and DEB packages. This is the initial attempt and
+ may change as issues are resolved.
+
+ (ADB - 2022/01/27)
+
+ - Added new option to the h5cc scripts produced by CMake.
+
+ Add -showconfig option to h5cc scripts to cat the
+ libhdf5.settings file to the standard output.
+
+ (ADB - 2022/01/25)
+
+ - CMake will now run the PowerShell script tests in test/ by default
+ on Windows.
+
+ The test directory includes several shell script tests that previously
+ were not run by CMake on Windows. These are now run by default.
+ If TEST_SHELL_SCRIPTS is ON and PWSH is found, the PowerShell scripts
+ will execute. Similar to the bash scripts on unix platforms.
+
+ (ADB - 2021/11/23)
+
+ - Added new configure option to support building parallel tools.
+ See Tools below (autotools - CMake):
+ --enable-parallel-tools HDF5_BUILD_PARALLEL_TOOLS
+
+ (RAW - 2021/10/25)
+
+ - Added new configure options to enable dimension scales APIs (H5DS*) to
+ use new object references with the native VOL connector (aka native HDF5
+ library). New references are always used for non-native terminal VOL
+ connectors (e.g., DAOS).
+
+ Autotools --enable-dimension-scales-with-new-ref
+ CMake HDF5_DIMENSION_SCALES_NEW_REF=ON
+
+ (EIP - 2021/10/25, HDFFV-11180)
+
+ - Refactored the utils folder.
+
+ Added subfolder test and moved the 'swmr_check_compat_vfd.c file'
+ from test into utils/test. Deleted the duplicate swmr_check_compat_vfd.c
+ file in hl/tools/h5watch folder. Also fixed vfd check options.
+
+ (ADB - 2021/10/18)
+
+ - Changed autotools and CMake configurations to derive both
+ compilation warnings-as-errors and warnings-only-warn configurations
+ from the same files, 'config/*/*error*'. Removed redundant files
+ 'config/*/*noerror*'.
+
+ (DCY - 2021/09/29)
+
+ - Adds C++ Autotools configuration file for Intel
+
+ * Checks for icpc as the compiler
+ * Sets std=c++11
+ * Copies most non-warning flags from intel-flags
+
+ (DER - 2021/06/02)
+
+ - Adds C++ Autotools configuration file for PGI
+
+ * Checks for pgc++ as the compiler name (was: pgCC)
+ * Sets -std=c++11
+ * Other options basically match new C options (below)
+
+ (DER - 2021/06/02)
+
+ - Updates PGI C options
+
+ * -Minform set to warn (was: inform) to suppress spurious messages
+ * Sets -gopt -O2 as debug options
+ * Sets -O4 as 'high optimization' option
+ * Sets -O0 as 'no optimization' option
+ * Removes specific settings for PGI 9 and 10
+
+ (DER - 2021/06/02)
+
+ - A C++11-compliant compiler is now required to build the C++ wrappers
+
+ CMAKE_CXX_STANDARD is now set to 11 when building with CMake and
+ -std=c++11 is added when building with clang/gcc via the Autotools.
+
+ (DER - 2021/05/27)
+
+ - CMake will now run the shell script tests in test/ by default
+
+ The test directory includes several shell script tests that previously
+ were not run by CMake. These are now run by default. TEST_SHELL_SCRIPTS
+ has been set to ON and SH_PROGRAM has been set to bash (some test
+ scripts use bash-isms). Platforms without bash (e.g., Windows) will
+ ignore the script tests.
+
+ (DER - 2021/05/23)
+
+ - Removed unused HDF5_ENABLE_HSIZET option from CMake
+
+ This has been unused for some time and has no effect.
+
+ (DER - 2021/05/23)
+
+ - CMake no longer builds the C++ library by default
+
+ HDF5_BUILD_CPP_LIB now defaults to OFF, which is in line with the
+ Autotools build defaults.
+
+ (DER - 2021/04/20)
+
+ - Removal of pre-VS2015 work-arounds
+
+ HDF5 now requires Visual Studio 2015 or greater, so old work-around
+ code and definitions have been removed, including:
+
+ *
+ * snprintf and vsnprintf
+ * llround, llroundf, lround, lroundf, round, roundf
+ * strtoll and strtoull
+ * va_copy
+ * struct timespec
+
+ (DER - 2021/03/22)
+
+ - Add CMake variable HDF5_LIB_INFIX
+
+ This infix is added to all library names after 'hdf5'.
+ e.g. the infix '_openmpi' results in the library name 'libhdf5_openmpi.so'
+ This name is used in packages on debian based systems.
+ (see https://packages.debian.org/jessie/amd64/libhdf5-openmpi-8/filelist)
+
+ (barcode - 2021/03/22)
+
+ - On macOS, Universal Binaries can now be built, allowing native execution on
+ both Intel and Apple Silicon (ARM) based Macs.
+
+ To do so, set CMAKE_OSX_ARCHITECTURES="x86_64;arm64"
+
+ (SAM - 2021/02/07, github-311)
+
+ - Added a configure-time option to control certain compiler warnings
+ diagnostics
+
+ A new configure-time option was added that allows some compiler warnings
+ diagnostics to have the default operation. This is mainly intended for
+ library developers and currently only works for gcc 10 and above. The
+ diagnostics flags apply to C, C++ and Fortran compilers and will appear
+ in "H5 C Flags", H5 C++ Flags" and H5 Fortran Flags, respectively. They
+ will NOT be exported to h5cc, etc.
+
+ The default is OFF, which will disable the warnings URL and color attributes
+ for the warnings output. ON will not add the flags and allow default behavior.
+
+ Autotools: --enable-diags
+
+ CMake: HDF5_ENABLE_BUILD_DIAGS
+
+ (ADB - 2021/02/05, HDFFV-11213)
+
+ - CMake option to build the HDF filter plugins project as an external project
+
+ The HDF filter plugins project is a collection of registered compression
+ filters that can be dynamically loaded when needed to access data stored
+ in a hdf5 file. This CMake-only option allows the plugins to be built and
+ distributed with the hdf5 library and tools. Like the options for szip and
+ zlib, either a tgz file or a git repository can be specified for the source.
+
+ The option was refactored to use the CMake FetchContent process. This allows
+ more control over the filter targets, but required external project command
+ options to be moved to a CMake include file, HDF5PluginCache.cmake. Also
+ enabled the filter examples to be used as tests for operation of the
+ filter plugins.
+
+ (ADB - 2020/12/10, OESS-98)
+
+ - FreeBSD Autotools configuration now defaults to 'cc' and 'c++' compilers
+
+ On FreeBSD, the autotools defaulted to 'gcc' as the C compiler and did
+ not process C++ options. Since FreeBSD 10, the default compiler has
+ been clang (via 'cc').
+
+ The default compilers have been set to 'cc' for C and 'c++' for C++,
+ which will pick up clang and clang++ respectively on FreeBSD 10+.
+ Additionally, clang options are now set correctly for both C and C++
+ and g++ options will now be set if that compiler is being used (an
+ omission from the former functionality).
+
+ (DER - 2020/11/28, HDFFV-11193)
+
+ - Fixed POSIX problems when building w/ gcc on Solaris
+
+ When building on Solaris using gcc, the POSIX symbols were not
+ being set correctly, which could lead to issues like clock_gettime()
+ not being found.
+
+ The standard is now set to gnu99 when building with gcc on Solaris,
+ which allows POSIX things to be #defined and linked correctly. This
+ differs slightly from the gcc norm, where we set the standard to c99
+ and manually set POSIX #define symbols.
+
+ (DER - 2020/11/25, HDFFV-11191)
+
+ - Added a configure-time option to consider certain compiler warnings
+ as errors
+
+ A new configure-time option was added that converts some compiler warnings
+ to errors. This is mainly intended for library developers and currently
+ only works for gcc and clang. The warnings that are considered errors
+ will appear in the generated libhdf5.settings file. These warnings apply
+ to C and C++ code and will appear in "H5 C Flags" and H5 C++ Flags",
+ respectively. They will NOT be exported to h5cc, etc.
+
+ The default is OFF. Building with this option may fail when compiling
+ on operating systems and with compiler versions not commonly used by
+ the library developers. Compilation may also fail when headers not
+ under the control of the library developers (e.g., mpi.h, hdfs.h) raise
+ warnings.
+
+ Autotools: --enable-warnings-as-errors
+
+ CMake: HDF5_ENABLE_WARNINGS_AS_ERRORS
+
+ (DER - 2020/11/23, HDFFV-11189)
+
+ - Autotools and CMake target added to produce doxygen generated documentation
+
+ The default is OFF or disabled.
+ Autoconf option is '--enable-doxygen'
+ autotools make target is 'doxygen' and will build all doxygen targets
+ CMake configure option is 'HDF5_BUILD_DOC'.
+ CMake target is 'doxygen' for all available doxygen targets
+ CMake target is 'hdf5lib_doc' for the src subdirectory
+
+ (ADB - 2020/11/03)
+
+ - CMake option to use MSVC naming conventions with MinGW
+
+ HDF5_MSVC_NAMING_CONVENTION option enable to use MSVC naming conventions
+ when using a MinGW toolchain
+
+ (xan - 2020/10/30)
+
+ - CMake option to statically link gcc libs with MinGW
+
+ HDF5_MINGW_STATIC_GCC_LIBS allows to statically link libg/libstdc++
+ with the MinGW toolchain
+
+ (xan - 2020/10/30)
+
+ - CMake option to build the HDF filter plugins project as an external project
+
+ The HDF filter plugins project is a collection of registered compression
+ filters that can be dynamically loaded when needed to access data stored
+ in a hdf5 file. This CMake-only option allows the plugins to be built and
+ distributed with the hdf5 library and tools. Like the options for szip and
+ zlib, either a tgz file or a git repository can be specified for the source.
+
+ The necessary options are (see the INSTALL_CMake.txt file):
+ HDF5_ENABLE_PLUGIN_SUPPORT
+ PLUGIN_TGZ_NAME or PLUGIN_GIT_URL
+ There are more options necessary for various filters and the plugin project
+ documents should be referenced.
+
+ (ADB - 2020/09/27, OESS-98)
+
+ - Added CMake option to format source files
+
+ HDF5_ENABLE_FORMATTERS option will enable creation of targets using the
+ pattern - HDF5_*_SRC_FORMAT - where * corresponds to the source folder
+ or tool folder. All sources can be formatted by executing the format target;
+ make format
+
+ (ADB - 2020/08/24)
+
+ - Add file locking configure and CMake options
+
+ HDF5 1.10.0 introduced a file locking scheme, primarily to help
+ enforce SWMR setup. Formerly, the only user-level control of the scheme
+ was via the HDF5_USE_FILE_LOCKING environment variable.
+
+ This change introduces configure-time options that control whether
+ or not file locking will be used and whether or not the library
+ ignores errors when locking has been disabled on the file system
+ (useful on some HPC Lustre installations).
+
+ In both the Autotools and CMake, the settings have the effect of changing
+ the default property list settings (see the H5Pset/get_file_locking()
+ entry, below).
+
+ The yes/no/best-effort file locking configure setting has also been
+ added to the libhdf5.settings file.
+
+ Autotools:
+
+ An --enable-file-locking=(yes|no|best-effort) option has been added.
+
+ yes: Use file locking.
+ no: Do not use file locking.
+ best-effort: Use file locking and ignore "disabled" errors.
+
+ CMake:
+
+ Two self-explanatory options have been added:
+
+ HDF5_USE_FILE_LOCKING
+ HDF5_IGNORE_DISABLED_FILE_LOCKS
+
+ Setting both of these to ON is the equivalent to the Autotools'
+ best-effort setting.
+
+ NOTE:
+ The precedence order of the various file locking control mechanisms is:
+
+ 1) HDF5_USE_FILE_LOCKING environment variable (highest)
+
+ 2) H5Pset_file_locking()
+
+ 3) configure/CMake options (which set the property list defaults)
+
+ 4) library defaults (currently best-effort)
+
+ (DER - 2020/07/30, HDFFV-11092)
+
+ - CMake option to link the generated Fortran MOD files into the include
+ directory.
+
+ The Fortran generation of MOD files by a Fortran compile can produce
+ different binary files between SHARED and STATIC compiles with different
+ compilers and/or different platforms. Note that it has been found that
+ different versions of Fortran compilers will produce incompatible MOD
+ files. Currently, CMake will locate these MOD files in subfolders of
+ the include directory and add that path to the Fortran library target
+ in the CMake config file, which can be used by the CMake find library
+ process. For other build systems using the binary from a CMake install,
+ a new CMake configuration can be used to copy the pre-chosen version
+ of the Fortran MOD files into the install include directory.
+
+ The default will depend on the configuration of
+ BUILD_STATIC_LIBS and BUILD_SHARED_LIBS:
+ YES YES Default to SHARED
+ YES NO Default to STATIC
+ NO YES Default to SHARED
+ NO NO Default to SHARED
+ The defaults can be overridden by setting the config option
+ HDF5_INSTALL_MOD_FORTRAN to one of NO, SHARED, or STATIC
+
+ (ADB - 2020/07/09, HDFFV-11116)
+
+ - CMake option to use AEC (open source SZip) library instead of SZip
+
+ The open source AEC library is a replacement library for SZip. In
+ order to use it for hdf5 the libaec CMake source was changed to add
+ "-fPIC" and exclude test files. Autotools does not build the
+ compression libraries within hdf5 builds. New option USE_LIBAEC is
+ required to compensate for the different files produced by AEC build.
+
+ (ADB - 2020/04/22, OESS-65)
+
+ - CMake ConfigureChecks.cmake file now uses CHECK_STRUCT_HAS_MEMBER
+
+ Some handcrafted tests in HDFTests.c has been removed and the CMake
+ CHECK_STRUCT_HAS_MEMBER module has been used.
+
+ (ADB - 2020/03/24, TRILAB-24)
+
+ - Both build systems use same set of warnings flags
+
+ GNU C, C++ and gfortran warnings flags were moved to files in a config
+ sub-folder named gnu-warnings. Flags that only are available for a specific
+ version of the compiler are in files named with that version.
+ Clang C warnings flags were moved to files in a config sub-folder
+ named clang-warnings.
+ Intel C, Fortran warnings flags were moved to files in a config sub-folder
+ named intel-warnings.
+
+ There are flags in named "error-xxx" files with warnings that may
+ be promoted to errors. Some source files may still need fixes.
+
+ There are also pairs of files named "developer-xxx" and "no-developer-xxx"
+ that are chosen by the CMake option:HDF5_ENABLE_DEV_WARNINGS or the
+ configure option:--enable-developer-warnings.
+
+ In addition, CMake no longer applies these warnings for examples.
+
+ (ADB - 2020/03/24, TRILAB-192)
+
+
+ Library:
+ --------
+ - Overhauled the Virtual Object Layer (VOL)
+
+ The virtual object layer (VOL) was added in HDF5 1.12.0 but the initial
+ implementation required API-breaking changes to better support optional
+ operations and pass-through VOL connectors. The original VOL API is
+ now considered deprecated and VOL users and connector authors should
+ target the 1.14 VOL API.
+
+ The specific changes are too extensive to document in a release note, so
+ VOL users and connector authors should consult the updated VOL connector
+ author's guide and the 1.12-1.14 VOL migration guide.
+
+ (DER - 2022/12/28)
+
+ - H5VLquery_optional() signature change
+
+ The last parameter of this API call has changed from a pointer to hbool_t
+ to a pointer to uint64_t. Due to the changes in how optional operations
+ are handled in the 1.14 VOL API, we cannot make the old API call work
+ with the new scheme, so there is no API compatibility macro for it.
+
+ (DER - 2022/12/28)
+
+ - H5I_free_t callback signature change
+
+ In order to support asynchronous operations and future IDs, the signature
+ of the H5I_free_t callback has been modified to take a second 'request'
+ parameter. Due to the nature of the internal library changes, no API
+ compatibility macro is available for this change.
+
+ (DER - 2022/12/28)
+
+ - Fix for CVE-2019-8396
+
+ Malformed HDF5 files may have truncated content which does not match
+ the expected size. When H5O__pline_decode() attempts to decode these it
+ may read past the end of the allocated space leading to heap overflows
+ as bounds checking is incomplete.
+
+ The fix ensures each element is within bounds before reading.
+
+ (2022/11/09 - HDFFV-10712, CVE-2019-8396, GitHub #2209)
+
+ - Removal of memory allocation sanity checks feature
+
+ This feature added heap canaries and statistics tracking for internal
+ library memory operations. Unfortunately, the heap canaries caused
+ problems when library memory operations were mixed with standard C
+ library memory operations (such as in the filter pipeline, where
+ buffers may have to be reallocated). Since any platform with a C
+ compiler also usually has much more sophisticated memory sanity
+ checking tools than the HDF5 library provided (e.g., valgrind), we
+ have decided to to remove the feature entirely.
+
+ In addition to the configure changes described above, this also removes
+ the following from the public API:
+ H5get_alloc_stats()
+ H5_alloc_stats_t
+
+ (DER - 2022/11/03)
+
+ - Added multi dataset I/O feature
+
+ Added H5Dread_multi, H5Dread_multi_async, H5Dwrite_multi, and
+ H5Dwrite_multi_async API routines to allow I/O on multiple datasets with a
+ single API call. Added H5Dread_multi_f and H5Dwrite_multi_f Fortran
+ wrappers. Updated VOL callbacks for dataset I/O to support multi dataset
+ I/O.
+
+ (NAF - 2022/10/19)
+
+ - Onion VFD
+
+ The onion VFD allows creating "versioned" HDF5 files. File open/close
+ operations after initial file creation will add changes to an external
+ "onion" file (.onion extension by default) instead of the original file.
+ Each written revision can be opened independently.
+
+ To open a file with the onion VFD, use the H5Pset_fapl_onion() API call
+ (does not need to be used for the initial creation of the file). The
+ options for the H5FD_onion_fapl_info_t struct are described in H5FDonion.h.
+
+ The H5FDonion_get_revision_count() API call can be used to query a file
+ to find out how many revisions have been created.
+
+ (DER - 2022/08/02)
+
+ - Subfiling VFD
+
+ The HDF5 Subfiling VFD is a new MPI-based file driver that allows an
+ HDF5 application to distribute an HDF5 file across a collection of
+ "sub-files" in equal-sized data segment "stripes". I/O to the logical
+ HDF5 file is then directed to the appropriate "sub-file" according to
+ the Subfiling configuration and a system of I/O concentrators, which
+ are MPI ranks operating worker threads.
+
+ By allowing a configurable stripe size, number of I/O concentrators and
+ method for selecting MPI ranks as I/O concentrators, the Subfiling VFD
+ aims to enable an HDF5 application to find a middle ground between the
+ single shared file and file-per-process approaches to parallel file I/O
+ for the particular machine the application is running on. In general, the
+ goal is to avoid some of the complexity of the file-per-process approach
+ while also minimizing the locking issues of the single shared file approach
+ on a parallel file system.
+
+ Also included with the Subfiling VFD is a new h5fuse.sh script which
+ reads a Subfiling configuration file and then combines the various
+ sub-files back into a single HDF5 file. By default, the h5fuse.sh script
+ looks in the current directory for the Subfiling configuration file,
+ but can also be pointed to the configuration file with a command-line
+ option.
+
+ The Subfiling VFD can be used by calling H5Pset_fapl_subfiling() on a
+ File Access Property List and using that FAPL for file operations. Note
+ that the Subfiling VFD currently has the following limitations:
+
+ * Does not currently support HDF5 collective I/O, other than collective
+ metadata writes and reads as set by H5Pset_coll_metadata_write() and
+ H5Pset_all_coll_metadata_ops()
+
+ * The Subfiling VFD should not currently be used with an HDF5 library
+ that has been built with thread-safety enabled. This can cause deadlocks
+ when failures occur due to interactions between the VFD's internal
+ threads and HDF5's global lock.
+
+ (JTH - 2022/07/22)
+
+ - Add a new public function, H5ESget_requests()
+
+ This function allows the user to retrieve request pointers from an event
+ set. It is intended for use primarily by VOL plugin developers.
+
+ (NAF - 2022/01/11)
+
+ - Adds new file driver-level memory copy operation for
+ "ctl" callback and updates compact dataset I/O routines
+ to utilize it
+
+ When accessing an HDF5 file with a file driver that uses
+ memory allocated in special ways (e.g., without standard
+ library's `malloc`), a crash could be observed when HDF5
+ tries to perform `memcpy` operations on such a memory
+ region.
+
+ These changes add a new H5FD_FEAT_MEMMANAGE VFD feature
+ flag, which, if specified as supported by a VFD, will
+ inform HDF5 that the VFD either uses special memory
+ management routines or wishes to perform memory management
+ in a specific way. Therefore, this flag instructs HDF5 to
+ ask the file driver to perform memory management for
+ certain operations.
+
+ These changes also introduce a new "ctl" callback
+ operation identified by the H5FD_CTL__MEM_COPY op code.
+ This operation simply asks a VFD to perform a memory copy.
+ The arguments to this operation are passed to the "ctl"
+ callback's "input" parameter as a pointer to a struct
+ defined as:
+
+ struct H5FD_ctl_memcpy_args_t {
+ void * dstbuf; /**< Destination buffer */
+ hsize_t dst_off; /**< Offset within destination buffer */
+ const void *srcbuf; /**< Source buffer */
+ hsize_t src_off; /**< Offset within source buffer */
+ size_t len; /**< Length of data to copy from source buffer */
+ } H5FD_ctl_memcpy_args_t;
+
+ Further, HDF5's compact dataset I/O routines were
+ identified as a problematic area that could cause a crash
+ for VFDs that make use of special memory management. Those
+ I/O routines were therefore updated to make use of this new
+ "ctl" callback operation in order to ask the underlying
+ file driver to correctly handle memory copies.
+
+ (JTH - 2021/09/28)
+
+ - Adds new "ctl" callback to VFD H5FD_class_t structure
+ with the following prototype:
+
+ herr_t (*ctl)(H5FD_t *file, uint64_t op_code,
+ uint64_t flags, const void *input,
+ void **output);
+
+ This newly-added "ctl" callback allows Virtual File
+ Drivers to intercept and handle arbitrary operations
+ identified by an operation code. Its parameters are
+ as follows:
+
+ `file` [in] - A pointer to the file to be operated on
+ `op_code` [in] - The operation code identifying the
+ operation to be performed
+ `flags` [in] - Flags governing the behavior of the
+ operation performed (see H5FDpublic.h
+ for a list of valid flags)
+ `input` [in] - A pointer to arguments passed to the
+ VFD performing the operation
+ `output` [out] - A pointer for the receiving VFD to
+ use for output from the operation
+
+ (JRM - 2021/08/16)
+
+ - Change how the release part of version, in major.minor.release is checked
+ for compatibility
+
+ The HDF5 library uses a function, H5check_version, to check that
+ the version defined in the header files, which is used to compile an
+ application is compatible with the version codified in the library, which
+ the application loads at runtime. This previously required an exact match
+ or the library would print a warning, dump the build settings and then
+ abort or continue. An environment variable controlled the logic.
+
+ Now the function first checks that the library release version, in
+ major.minor.release, is not older than the version in the headers.
+ Secondly, if the release version is different, it checks if either
+ the library version or the header version is in the exception list, in
+ which case the release part of version, in major.minor.release, must
+ be exact. An environment variable still controls the logic.
+
+ (ADB - 2021/07/27)
+
+ - gcc warning suppression macros were moved out of H5public.h
+
+ The HDF5 library uses a set of macros to suppress warnings on gcc.
+ These warnings were originally located in H5public.h so that the
+ multi VFD (which only uses public headers) could also make use of them
+ but internal macros should not be publicly exposed like this.
+
+ These macros have now been moved to H5private.h. Pending future multi
+ VFD refactoring, the macros have been duplicated in H5FDmulti.c to
+ suppress the format string warnings there.
+
+ (DER - 2021/06/03)
+
+ - H5Gcreate1() now rejects size_hint parameters larger than UINT32_MAX
+
+ The size_hint value is ultimately stored in a uint32_t struct field,
+ so specifying a value larger than this on a 64-bit machine can cause
+ undefined behavior including crashing the system.
+
+ The documentation for this API call was also incorrect, stating that
+ passing a negative value would cause the library to use a default
+ value. Instead, passing a "negative" value actually passes a very large
+ value, which is probably not what the user intends and can cause
+ crashes on 64-bit systems.
+
+ The Doxygen documentation has been updated and passing values larger
+ than UINT32_MAX for size_hint will now produce a normal HDF5 error.
+
+ (DER - 2021/04/29, HDFFV-11241)
+
+
+ - H5Pset_fapl_log() no longer crashes when passed an invalid fapl ID
+
+ When passed an invalid fapl ID, H5Pset_fapl_log() would usually
+ segfault when attempting to free an uninitialized pointer in the error
+ handling code. This behavior is more common in release builds or
+ when the memory sanitization checks were not selected as a build
+ option.
+
+ The pointer is now correctly initialized and the API call now
+ produces a normal HDF5 error when fed an invalid fapl ID.
+
+ (DER - 2021/04/28, HDFFV-11240)
+
+ - Fixes a segfault when H5Pset_mdc_log_options() is called multiple times
+
+ The call incorrectly attempts to free an internal copy of the previous
+ log location string, which causes a segfault. This only happens
+ when the call is invoked multiple times on the same property list.
+ On the first call to a given fapl, the log location is set to NULL so
+ the segfault does not occur.
+
+ The string is now handled properly and the segfault no longer occurs.
+
+ (DER - 2021/04/27, HDFFV-11239)
+
+ - HSYS_GOTO_ERROR now emits the results of GetLastError() on Windows
+
+ HSYS_GOTO_ERROR is an internal macro that is used to produce error
+ messages when system calls fail. These strings include errno and the
+ the associated strerror() value, which are not particularly useful
+ when a Win32 API call fails.
+
+ On Windows, this macro has been updated to include the result of
+ GetLastError(). When a system call fails on Windows, usually only
+ one of errno and GetLastError() will be useful, however we emit both
+ for the user to parse. The Windows error message is not emitted as
+ it would be awkward to free the FormatMessage() buffer given the
+ existing HDF5 error framework. Users will have to look up the error
+ codes in MSDN.
+
+ The format string on Windows has been changed from:
+
+ "%s, errno = %d, error message = '%s'"
+
+ to:
+
+ "%s, errno = %d, error message = '%s', Win32 GetLastError() = %"PRIu32""
+
+ for those inclined to parse it for error values.
+
+ (DER - 2021/03/21)
+
+ - File locking now works on Windows
+
+ Since version 1.10.0, the HDF5 library has used a file locking scheme
+ to help enforce one reader at a time accessing an HDF5 file, which can
+ be helpful when setting up readers and writers to use the single-
+ writer/multiple-readers (SWMR) access pattern.
+
+ In the past, this was only functional on POSIX systems where flock() or
+ fcntl() were present. Windows used a no-op stub that always succeeded.
+
+ HDF5 now uses LockFileEx() and UnlockFileEx() to lock the file using the
+ same scheme as POSIX systems. We lock the entire file when we set up the
+ locks (by passing DWORDMAX as both size parameters to LockFileEx()).
+
+ (DER - 2021/03/19, HDFFV-10191)
+
+ - H5Epush_ret() now requires a trailing semicolon
+
+ H5Epush_ret() is a function-like macro that has been changed to
+ contain a `do {} while(0)` loop. Consequently, a trailing semicolon
+ is now required to end the `while` statement. Previously, a trailing
+ semi would work, but was not mandatory. This change was made to allow
+ clang-format to correctly format the source code.
+
+ (SAM - 2021/03/03)
+
+ - Improved performance of H5Sget_select_elem_pointlist
+
+ Modified library to cache the point after the last block of points
+ retrieved by H5Sget_select_elem_pointlist, so a subsequent call to the
+ same function to retrieve the next block of points from the list can
+ proceed immediately without needing to iterate over the point list.
+
+ (NAF - 2021/01/19)
+
+ - Replaced H5E_ATOM with H5E_ID in H5Epubgen.h
+
+ The term "atom" is archaic and not in line with current HDF5 library
+ terminology, which uses "ID" instead. "Atom" has mostly been purged
+ from the library internals and this change removes H5E_ATOM from
+ the H5Epubgen.h (exposed via H5Epublic.h) and replaces it with
+ H5E_ID.
+
+ (DER - 2020/11/24, HDFFV-11190)
+
+ - Add a new public function H5Ssel_iter_reset
+
+ This function resets a dataspace selection iterator back to an
+ initial state so that it may be used for iteration once more.
+ This can be useful when needing to iterate over a selection
+ multiple times without having to repeatedly create/destroy
+ a selection iterator for that dataspace selection.
+
+ (JTH - 2020/09/18)
+
+ - Remove HDFS VFD stubs
+
+ The original implementation of the HDFS VFD included non-functional
+ versions of the following public API calls when the HDFS VFD is
+ not built as a part of the HDF5 library:
+
+ * H5FD_hdfs_init()
+ * H5Pget_fapl_hdfs()
+ * H5Pset_fapl_hdfs()
+
+ They will remain present in HDF5 1.10 and HDF5 1.12 releases
+ for binary compatibility purposes but have been removed as of 1.14.0.
+
+ Note that this has nothing to do with the real HDFS VFD API calls
+ that are fully functional when the HDFS VFD is configured and built.
+
+ We simply changed:
+
+ #ifdef LIBHDFS
+
+ #else
+
+ #endif
+
+ to:
+
+ #ifdef LIBHDFS
+
+ #endif
+
+ Which is how the other optional VFDs are handled.
+
+ (DER - 2020/08/27)
+
+ - Add Mirror VFD
+
+ Use TCP/IP sockets to perform write-only (W/O) file I/O on a remote
+ machine. Must be used in conjunction with the Splitter VFD.
+
+ (JOS - 2020/03/13, TBD)
+
+ - Add Splitter VFD
+
+ Maintain separate R/W and W/O channels for "concurrent" file writes
+ to two files using a single HDF5 file handle.
+
+ (JOS - 2020/03/13, TBD)
+
+
+ Parallel Library:
+ -----------------
+ - Several improvements to parallel compression feature, including:
+
+ * Improved support for collective I/O (for both writes and reads)
+
+ * Significant reduction of memory usage for the feature as a whole
+
+ * Reduction of copying of application data buffers passed to H5Dwrite
+
+ * Addition of support for incremental file space allocation for filtered
+ datasets created in parallel. Incremental file space allocation is the
+ default for these types of datasets (early file space allocation is
+ also still supported), while early file space allocation is still the
+ default (and only supported at allocation time) for unfiltered datasets
+ created in parallel. Incremental file space allocation should help with
+ parallel HDF5 applications that wish to use fill values on filtered
+ datasets, but would typically avoid doing so since dataset creation in
+ parallel would often take an excessive amount of time. Since these
+ datasets previously used early file space allocation, HDF5 would
+ allocate space for and write fill values to every chunk in the dataset
+ at creation time, leading to noticeable overhead. Instead, with
+ incremental file space allocation, allocation of file space for chunks
+ and writing of fill values to those chunks will be delayed until each
+ individual chunk is initially written to.
+
+ * Addition of support for HDF5's "don't filter partial edge chunks" flag
+ (https://portal.hdfgroup.org/display/HDF5/H5P_SET_CHUNK_OPTS)
+
+ * Addition of proper support for HDF5 fill values with the feature
+
+ * Addition of 'H5_HAVE_PARALLEL_FILTERED_WRITES' macro to H5pubconf.h
+ so HDF5 applications can determine at compile-time whether the feature
+ is available
+
+ * Addition of simple examples (ph5_filtered_writes.c and
+ ph5_filtered_writes_no_sel.c) under examples directory to demonstrate
+ usage of the feature
+
+ * Improved coverage of regression testing for the feature
+
+ (JTH - 2022/2/23)
+
+
+ Fortran Library:
+ ----------------
+ - Added pointer based H5Dfill_f API
+
+ Added Fortran H5Dfill_f, which is fully equivalent to the C API. It accepts pointers,
+ fill value datatype and datatype of dataspace elements.
+
+ (MSB - 2022/10/10, HDFFV-10734.)
+
+ - H5Fget_name_f fixed to handle correctly trailing whitespaces and
+ newly allocated buffers.
+
+ (MSB - 2021/08/30, github-826,972)
+
+ - Add wrappers for H5Pset/get_file_locking() API calls
+
+ h5pget_file_locking_f()
+ h5pset_file_locking_f()
+
+ See the configure option discussion for HDFFV-11092 (above) for more
+ information on the file locking feature and how it's controlled.
+
+ (DER - 2020/07/30, HDFFV-11092)
+
+
+ C++ Library:
+ ------------
+ - Added two new constructors to H5::H5File class
+
+ Two new constructors were added to allow opening a file with non-default
+ access property list.
+
+ - Add wrappers for H5Pset/get_file_locking() API calls
+
+ FileAccPropList::setFileLocking()
+ FileAccPropList::getFileLocking()
+
+ See the configure option discussion for HDFFV-11092 (above) for more
+ information on the file locking feature and how it's controlled.
+
+ (DER - 2020/07/30, HDFFV-11092)
+
+
+ Java Library:
+ -------------
+ - Added version of H5Rget_name to return the name as a Java string.
+
+ Other functions that get_name process the get_size then get the name
+ within the JNI implementation. Now H5Rget_name has a H5Rget_name_string.
+
+ (ADB - 2022/07/12)
+
+ - Added reference support to H5A and H5D read write vlen JNI functions.
+
+ Added the implementation to handle VL references as an Array of Lists
+ of byte arrays.
+
+ The JNI wrappers translate the Array of Lists to/from the hvl_t vlen
+ structures. The wrappers use the specified datatype arguments for the
+ List type translation, it is expected that the Java type is correct.
+
+ (ADB - 2022/07/11, HDFFV-11318)
+
+ - H5A and H5D read write vlen JNI functions were incorrect.
+
+ Corrected the vlen function implementations for the basic primitive types.
+ The VLStrings functions now correctly use the implementation that had been
+ the VL functions. (VLStrings functions did not have an implementation.)
+ The new VL functions implementation now expect an Array of Lists between
+ Java and the JNI wrapper.
+
+ The JNI wrappers translate the Array of Lists to/from the hvl_t vlen
+ structures. The wrappers use the specified datatype arguments for the
+ List type translation, it is expected that the Java type is correct.
+
+ (ADB - 2022/07/07, HDFFV-11310)
+
+ - H5A and H5D read write JNI functions had flawed vlen datatype check.
+
+ Adapted tools function for JNI utils file. This reduced multiple calls
+ to a single check and variable. The variable can then be used to call
+ the H5Treclaim function. Adjusted existing test and added new test.
+
+ (ADB - 2022/06/22)
+
+ - Replaced HDF5AtomException with HDF5IdException
+
+ Since H5E_ATOM changed to H5E_ID in the C library, the Java exception
+ that wraps the error category was also renamed. Its functionality
+ remains unchanged aside from the name.
+
+ (See also the HDFFV-11190 note in the C library section)
+
+ (DER - 2020/11/24, HDFFV-11190)
+
+ - Added new H5S functions.
+
+ H5Sselect_copy, H5Sselect_shape_same, H5Sselect_adjust,
+ H5Sselect_intersect_block, H5Sselect_project_intersection,
+ H5Scombine_hyperslab, H5Smodify_select, H5Scombine_select
+ wrapper functions added.
+
+ (ADB - 2020/10/27, HDFFV-10868)
+
+ - Add wrappers for H5Pset/get_file_locking() API calls
+
+ H5Pset_file_locking()
+ H5Pget_use_file_locking()
+ H5Pget_ignore_disabled_file_locking()
+
+ Unlike the C++ and Fortran wrappers, there are separate getters for the
+ two file locking settings, each of which returns a boolean value.
+
+ See the configure option discussion for HDFFV-11092 (above) for more
+ information on the file locking feature and how it's controlled.
+
+ (DER - 2020/07/30, HDFFV-11092)
+
+
+ Tools:
+ ------
+ - Building h5perf/h5perf_serial in "standalone mode" has been removed
+
+ Building h5perf separately from the library was added circa 2008
+ in HDF5 1.6.8. It's unclear what purpose this serves and the current
+ implementation is currently broken. The existing files require
+ H5private.h and the symbols we use to determine how the copied
+ platform-independence scheme should be used come from H5pubconf.h,
+ which may not match the compiler being used to build standalone h5perf.
+
+ Due to the maintenance overhead and lack of a clear use case, support
+ for building h5perf and h5perf_serial separately from the HDF5 library
+ has been removed.
+
+ (DER - 2022/07/15)
+
+ - The perf tool has been removed
+
+ The small `perf` tool didn't really do anything special and the name
+ conflicts with gnu's perf tool.
+
+ (DER - 2022/07/15, GitHub #1787)
+
+ - 1.10 References in containers were not displayed properly by h5dump.
+
+ Ported 1.10 tools display function to provide ability to inspect and
+ display 1.10 reference data.
+
+ (ADB - 2022/06/22)
+
+ - h5repack added an optional verbose value for reporting R/W timing.
+
+ In addition to adding timing capture around the read/write calls in
+ h5repack, added help text to indicate how to show timing for read/write;
+ -v N, --verbose=N Verbose mode, print object information.
+ N - is an integer greater than 1, 2 displays read/write timing
+ (ADB - 2021/11/08)
+
+ - Added a new (unix ONLY) parallel meta tool 'h5dwalk', which utilizes the
+ mpifileutils (https://hpc.github.io/mpifileutils) open source utility
+ library to enable parallel execution of other HDF5 tools.
+ This approach can greatly enhance the serial hdf5 tool performance over large
+ collections of files by utilizing MPI parallelism to distribute an application
+ load over many independent MPI ranks and files.
+
+ An introduction to the mpifileutils library and initial 'User Guide' for
+ the new 'h5dwalk" tool can be found at:
+ https://github.com/HDFGroup/hdf5doc/tree/master/RFCs/HDF5/tools/parallel_tools
+
+ (RAW - 2021/10/25)
+
+ - Refactored the perform tools and removed depends on test library.
+
+ Moved the perf and h5perf tools from tools/test/perform to
+ tools/src/h5perf so that they can be installed. This required
+ that the test library dependency be removed by copying the
+ needed functions from h5test.c.
+ The standalone scripts and other perform tools remain in the
+ tools/test/perform folder.
+
+ (ADB - 2021/08/10)
+
+ - Removed partial long exceptions
+
+ Some of the tools accepted shortened versions of the long options
+ (ex: --datas instead of --dataset). These were implemented inconsistently,
+ are difficult to maintian, and occasionally block useful long option
+ names. These partial long options have been removed from all the tools.
+
+ (DER - 2021/08/03)
+
+ - h5repack added help text for user-defined filters.
+
+ Added help text line that states the valid values of the filter flag
+ for user-defined filters;
+ filter_flag: 1 is OPTIONAL or 0 is MANDATORY
+
+ (ADB - 2021/01/14, HDFFV-11099)
+
+ - Added h5delete tool
+
+ Deleting HDF5 storage when using the VOL can be tricky when the VOL
+ does not create files. The h5delete tool is a simple wrapper around
+ the H5Fdelete() API call that uses the VOL specified in the
+ HDF5_VOL_CONNECTOR environment variable to delete a "file". If
+ the call to H5Fdelete() fails, the tool will attempt to use
+ the POSIX remove(3) call to remove the file.
+
+ Note that the HDF5 library does currently have support for
+ H5Fdelete() in the native VOL connector.
+
+ (DER - 2020/12/16)
+
+ - h5repack added options to control how external links are handled.
+
+ Currently h5repack preserves external links and cannot copy and merge
+ data from the external files. Two options, merge and prune, were added to
+ control how to merge data from an external link into the resulting file.
+ --merge Follow external soft link recursively and merge data.
+ --prune Do not follow external soft links and remove link.
+ --merge --prune Follow external link, merge data and remove dangling link.
+
+ (ADB - 2020/08/05, HDFFV-9984)
+
+ - h5repack was fixed to repack the reference attributes properly.
+ The code line that checks if the update of reference inside a compound
+ datatype is misplaced outside the code block loop that carries out the
+ check. In consequence, the next attribute that is not the reference
+ type was repacked again as the reference type and caused the failure of
+ repacking. The fix is to move the corresponding code line to the correct
+ code block.
+
+ (KY -2020/02/07, HDFFV-11014)
+
+
+ High-Level APIs:
+ ----------------
+ - added set/get for unsigned long long attributes
+
+ The attribute writing high-level API has been expanded to include
+ public set/get functions for ULL attributes, analogously to the
+ existing set/get for other types.
+
+ (AF - 2021/09/08)
+
+
+ C Packet Table API:
+ -------------------
+ -
+
+
+ Internal header file:
+ ---------------------
+ - All the #defines named H5FD_CTL__* were renamed to H5FD_CTL_*, i.e. the double underscore was reduced to a single underscore.
+
+
+ Documentation:
+ --------------
+ - Doxygen User Guide documentation is available when configured and generated.
+ The resulting documentation files will be in the share/html subdirectory
+ of the HDF5 install directory.
+
+ (ADB - 2022/08/09)
+
+
+Support for new platforms, languages and compilers
+==================================================
+ -
+
+
+Bug Fixes since HDF5-1.12.0 release
+===================================
+ Library
+ -------
+ - Seg fault on file close
+
+ h5debug fails at file close with core dump on a file that has an
+ illegal file size in its cache image. In H5F_dest(), the library
+ performs all the closing operations for the file and keeps track of
+ the error encountered when reading the file cache image.
+ At the end of the routine, it frees the file's file structure and
+ returns error. Due to the error return, the file object is not removed
+ from the ID node table. This eventually causes assertion failure in
+ H5VL__native_file_close() when the library finally exits and tries to
+ access that file object in the table for closing.
+
+ The closing routine, H5F_dest(), will not free the file structure if
+ there is error, keeping a valid file structure in the ID node table.
+ It will be freed later in H5VL__native_file_close() when the
+ library exits and terminates the file package.
+
+ (VC - 2022/12/14, HDFFV-11052, CVE-2020-10812)
+
+ - Fix CVE-2018-13867 / GHSA-j8jr-chrh-qfrf
+
+ Validate location (offset) of the accumulated metadata when comparing.
+
+ Initially, the accumulated metadata location is initialized to HADDR_UNDEF
+ - the highest available address. Bogus input files may provide a location
+ or size matching this value. Comparing this address against such bogus
+ values may provide false positives. Thus make sure, the value has been
+ initialized or fail the comparison early and let other parts of the
+ code deal with the bogus address/size.
+ Note: To avoid unnecessary checks, it is assumed that if the 'dirty'
+ member in the same structure is true the location is valid.
+
+ (EFE - 2022/10/10 GH-2230)
+
+ - Fix CVE-2018-16438 / GHSA-9xmm-cpf8-rgmx
+
+ Make sure info block for external links has at least 3 bytes.
+
+ According to the specification, the information block for external links
+ contains 1 byte of version/flag information and two 0 terminated strings
+ for the object linked to and the full path.
+ Although not very useful, the minimum string length for each (with
+ terminating 0) would be one byte.
+ Checking this helps to avoid SEGVs triggered by bogus files.
+
+ (EFE - 2022/10/09 GH-2233)
+
+ - CVE-2021-46244 / GHSA-vrxh-5gxg-rmhm
+
+ Compound datatypes may not have members of size 0
+
+ A member size of 0 may lead to an FPE later on as reported in
+ CVE-2021-46244. To avoid this, check for this as soon as the
+ member is decoded.
+
+ (EFE - 2022/10/05 GEH-2242)
+
+
+ - Fix CVE-2021-45830 / GHSA-5h2h-fjjr-x9m2
+
+ Make H5O__fsinfo_decode() more resilient to out-of-bound reads.
+
+ When decoding a file space info message in H5O__fsinfo_decode() make
+ sure each element to be decoded is still within the message. Malformed
+ hdf5 files may have trunkated content which does not match the
+ expected size. Checking this will prevent attempting to decode
+ unrelated data and heap overflows. So far, only free space manager
+ address data was checked before decoding.
+
+ (EFE - 2022/10/05 GH-2228)
+
+ - Fix CVE-2021-46242 / GHSA-x9pw-hh7v-wjpf
+
+ When evicting driver info block, NULL the corresponding entry.
+
+ Since H5C_expunge_entry() called (from H5AC_expunge_entry()) sets the flag
+ H5C__FLUSH_INVALIDATE_FLAG, the driver info block will be freed. NULLing
+ the pointer in f->shared->drvinfo will prevent use-after-free when it is
+ used in other functions (like H5F__dest()) - as other places will check
+ whether the pointer is initialized before using its value.
+
+ (EFE - 2022/09/29 GH-2254)
+
+ - Fix CVE-2021-45833 / GHSA-x57p-jwp6-4v79
+
+ Report error if dimensions of chunked storage in data layout < 2
+
+ For Data Layout Messages version 1 & 2 the specification state
+ that the value stored in the data field is 1 greater than the
+ number of dimensions in the dataspace. For version 3 this is
+ not explicitly stated but the implementation suggests it to be
+ the case.
+ Thus the set value needs to be at least 2. For dimensionality
+ < 2 an out-of-bounds access occurs.
+
+ (EFE - 2022/09/28 GH-2240)
+
+ - Fix CVE-2018-14031 / GHSA-2xc7-724c-r36j
+
+ Parent of enum datatype message must have the same size as the
+ enum datatype message itself.
+ Functions accessing the enumeration values use the size of the
+ enumeration datatype to determine the size of each element and
+ how much data to copy.
+ Thus the size of the enumeration and its parent need to match.
+ Check in H5O_dtype_decode_helper() to avoid unpleasant surprises
+ later.
+
+ (EFE - 2022/09/28 GH-2236)
+
+ - Fix CVE-2018-17439 / GHSA-vcxv-vp43-rch7
+
+ H5IMget_image_info(): Make sure to not exceed local array size
+
+ Malformed hdf5 files may provide more dimensions than the array dim[] in
+ H5IMget_image_info() is able to hold. Check number of elements first by calling
+ H5Sget_simple_extent_dims() with NULL for both 'dims' and 'maxdims' arguments.
+ This will cause the function to return only the number of dimensions.
+ The fix addresses a stack overflow on write.
+
+ (EFE - 2022/09/27 HDFFV-10589, GH-2226)
+
+ - Fixed an issue with variable length attributes
+
+ Previously, if a variable length attribute was held open while its file
+ was opened through another handle, the same attribute was opened through
+ the second file handle, and the second file and attribute handles were
+ closed, attempting to write to the attribute through the first handle
+ would cause an error.
+
+ (NAF - 2022/10/24)
+
+ - Memory leak
+
+ A memory leak was observed with variable-length fill value in
+ H5O_fill_convert() function in H5Ofill.c. The leak is
+ manifested by running valgrind on test/set_extent.c.
+
+ Previously, fill->buf is used for datatype conversion
+ if it is large enough and the variable-length information
+ is therefore lost. A buffer is now allocated regardless
+ so that the element in fill->buf can later be reclaimed.
+
+ (VC - 2022/10/10, HDFFV-10840)
+
+ - Fixed an issue with hyperslab selections
+
+ Previously, when combining hyperslab selections, it was possible for the
+ library to produce an incorrect combined selection.
+
+ (NAF - 2022/09/25)
+
+ - Fixed an issue with attribute type conversion with compound datatypes
+
+ Previously, when performing type conversion for attribute I/O with a
+ compound datatype, the library would not fill the background buffer with
+ the contents of the destination, potentially causing data to be lost when
+ only writing to a subset of the compound fields.
+
+ (NAF - 2022/08/22, GitHub #2016)
+
+ - The offset parameter in H5Dchunk_iter() is now scaled properly
+
+ In earlier HDF5 1.13.x versions, the chunk offset was not scaled by the
+ chunk dimensions. This offset parameter in the callback now matches
+ that of H5Dget_chunk_info().
+
+ (@mkitti - 2022/08/06, GitHub #1419)
+
+ - Converted an assertion on (possibly corrupt) file contents to a normal
+ error check
+
+ Previously, the library contained an assertion check that a read superblock
+ doesn't contain a superblock extension message when the superblock
+ version < 2. When a corrupt HDF5 file is read, this assertion can be triggered
+ in debug builds of HDF5. In production builds, this situation could cause
+ either a library error or a crash, depending on the platform.
+
+ (JTH - 2022/07/08, HDFFV-11316/HDFFV-11317)
+
+ - Fixed a metadata cache bug when resizing a pinned/protected cache entry
+
+ When resizing a pinned/protected cache entry, the metadata
+ cache code previously would wait until after resizing the
+ entry to attempt to log the newly-dirtied entry. This
+ caused H5C_resize_entry to mark the entry as dirty and made
+ H5AC_resize_entry think that it didn't need to add the
+ newly-dirtied entry to the dirty entries skiplist.
+
+ Thus, a subsequent H5AC__log_moved_entry would think it
+ needed to allocate a new entry for insertion into the dirty
+ entry skip list, since the entry didGn't exist on that list.
+ This caused an assertion failure, as the code to allocate a
+ new entry assumes that the entry is not dirty.
+
+ (JRM - 2022/02/28)
+
+ - Issue #1436 identified a problem with the H5_VERS_RELEASE check in the
+ H5check_version function.
+
+ Investigating the original fix, #812, we discovered some inconsistencies
+ with a new block added to check H5_VERS_RELEASE for incompatibilities.
+ This new block was not using the new warning text dealing with the
+ H5_VERS_RELEASE check and would cause the warning to be duplicated.
+
+ By removing the H5_VERS_RELEASE argument in the first check for
+ H5_VERS_MAJOR and H5_VERS_MINOR, the second check would only check
+ the H5_VERS_RELEASE for incompatible release versions. This adheres
+ to the statement that except for the develop branch, all release versions
+ in a major.minor maintenance branch should be compatible. The prerequisite
+ is that an application will not use any APIs not present in all release versions.
+
+ (ADB - 2022/02/24, #1438)
+
+ - Unified handling of collective metadata reads to correctly fix old bugs
+
+ Due to MPI-related issues occurring in HDF5 from mismanagement of the
+ status of collective metadata reads, they were forced to be disabled
+ during chunked dataset raw data I/O in the HDF5 1.10.5 release. This
+ wouldn't generally have affected application performance because HDF5
+ already disables collective metadata reads during chunk lookup, since
+ it is generally unlikely that the same chunks will be read by all MPI
+ ranks in the I/O operation. However, this was only a partial solution
+ that wasn't granular enough.
+
+ This change now unifies the handling of the file-global flag and the
+ API context-level flag for collective metadata reads in order to
+ simplify querying of the true status of collective metadata reads. Thus,
+ collective metadata reads are once again enabled for chunked dataset
+ raw data I/O, but manually controlled at places where some processing
+ occurs on MPI rank 0 only and would cause issues when collective
+ metadata reads are enabled.
+
+ (JTH - 2021/11/16, HDFFV-10501/HDFFV-10562)
+
+ - Fixed several potential MPI deadlocks in library failure conditions
+
+ In the parallel library, there were several places where MPI rank 0
+ could end up skipping past collective MPI operations when some failure
+ occurs in rank 0-specific processing. This would lead to deadlocks
+ where rank 0 completes an operation while other ranks wait in the
+ collective operation. These places have been rewritten to have rank 0
+ push an error and try to cleanup after the failure, then continue to
+ participate in the collective operation to the best of its ability.
+
+ (JTH - 2021/11/09)
+
+ - Fixed an H5Pget_filter_by_id1/2() assert w/ out of range filter IDs
+
+ Both H5Pget_filter_by_id1 and 2 did not range check the filter ID, which
+ could trip as assert in debug versions of the library. The library now
+ returns a normal HDF5 error when the filter ID is out of range.
+
+ (DER - 2021/11/23, HDFFV-11286)
+
+ - Fixed an issue with collective metadata reads being permanently disabled
+ after a dataset chunk lookup operation. This would usually cause a
+ mismatched MPI_Bcast and MPI_ERR_TRUNCATE issue in the library for
+ simple cases of H5Dcreate() -> H5Dwrite() -> H5Dcreate().
+
+ (JTH - 2021/11/08, HDFFV-11090)
+
+ - Fixed cross platform incompatibility of references within variable length
+ types
+
+ Reference types within variable length types previously could not be
+ read on a platform with different endianness from where they were
+ written. Fixed so cross platform portability is restored.
+
+ (NAF - 2021/09/30)
+
+ - Detection of simple data transform function "x"
+
+ In the case of the simple data transform function "x" the (parallel)
+ library recognizes this is the same as not applying this data transform
+ function. This improves the I/O performance. In the case of the parallel
+ library, it also avoids breaking to independent I/O, which makes it
+ possible to apply a filter when writing or reading data to or from
+ the HDF5 file.
+
+ (JWSB - 2021/09/13)
+
+ - Fixed an invalid read and memory leak when parsing corrupt file space
+ info messages
+
+ When the corrupt file from CVE-2020-10810 was parsed by the library,
+ the code that imports the version 0 file space info object header
+ message to the version 1 struct could read past the buffer read from
+ the disk, causing an invalid memory read. Not catching this error would
+ cause downstream errors that eventually resulted in a previously
+ allocated buffer to be unfreed when the library shut down. In builds
+ where the free lists are in use, this could result in an infinite loop
+ and SIGABRT when the library shuts down.
+
+ We now track the buffer size and raise an error on attempts to read
+ past the end of it.
+
+ (DER - 2021/08/12, HDFFV-11053)
+
+
+ - Fixed CVE-2018-14460
+
+ The tool h5repack produced a segfault when the rank in dataspace
+ message was corrupted, causing invalid read while decoding the
+ dimension sizes.
+
+ The problem was fixed by ensuring that decoding the dimension sizes
+ and max values will not go beyond the end of the buffer.
+
+ (BMR - 2021/05/12, HDFFV-11223)
+
+ - Fixed CVE-2018-11206
+
+ The tool h5dump produced a segfault when the size of a fill value
+ message was corrupted and caused a buffer overflow.
+
+ The problem was fixed by verifying the fill value's size
+ against the buffer size before attempting to access the buffer.
+
+ (BMR - 2021/03/15, HDFFV-10480)
+
+ - Fixed CVE-2018-14033 (same issue as CVE-2020-10811)
+
+ The tool h5dump produced a segfault when the storage size message
+ was corrupted and caused a buffer overflow.
+
+ The problem was fixed by verifying the storage size against the
+ buffer size before attempting to access the buffer.
+
+ (BMR - 2021/03/15, HDFFV-11159/HDFFV-11049)
+
+ - Remove underscores on header file guards
+
+ Header file guards used a variety of underscores at the beginning of the define.
+
+ Removed all leading (some trailing) underscores from header file guards.
+
+ (ADB - 2021/03/03, #361)
+
+ - Fixed a segmentation fault
+
+ A segmentation fault occurred with a Mathworks corrupted file.
+
+ A detection of accessing a null pointer was added to prevent the problem.
+
+ (BMR - 2021/02/19, HDFFV-11150)
+
+ - Fixed issue with MPI communicator and info object not being
+ copied into new FAPL retrieved from H5F_get_access_plist
+
+ Added logic to copy the MPI communicator and info object into
+ the output FAPL. MPI communicator is retrieved from the VFD, while
+ the MPI info object is retrieved from the file's original FAPL.
+
+ (JTH - 2021/02/15, HDFFV-11109)
+
+ - Fixed problems with vlens and refs inside compound using
+ H5VLget_file_type()
+
+ Modified library to properly ref count H5VL_object_t structs and only
+ consider file vlen and reference types to be equal if their files are
+ the same.
+
+ (NAF - 2021/01/22)
+
+ - Fixed CVE-2018-17432
+
+ The tool h5repack produced a segfault on a corrupted file which had
+ invalid rank for scalar or NULL datatype.
+
+ The problem was fixed by modifying the dataspace encode and decode
+ functions to detect and report invalid rank. h5repack now fails
+ with an error message for the corrupted file.
+
+ (BMR - 2020/10/26, HDFFV-10590)
+
+ - Creation of dataset with optional filter
+
+ When the combination of type, space, etc doesn't work for filter
+ and the filter is optional, it was supposed to be skipped but it was
+ not skipped and the creation failed.
+
+ Allowed the creation of the dataset in such a situation.
+
+ (BMR - 2020/08/13, HDFFV-10933)
+
+ - Explicitly declared dlopen to use RTLD_LOCAL
+
+ dlopen documentation states that if neither RTLD_GLOBAL nor
+ RTLD_LOCAL are specified, then the default behavior is unspecified.
+ The default on linux is usually RTLD_LOCAL while macos will default
+ to RTLD_GLOBAL.
+
+ (ADB - 2020/08/12, HDFFV-11127)
+
+ - H5Sset_extent_none() sets the dataspace class to H5S_NO_CLASS which
+ causes asserts/errors when passed to other dataspace API calls.
+
+ H5S_NO_CLASS is an internal class value that should not have been
+ exposed via a public API call.
+
+ In debug builds of the library, this can cause assert() function to
+ trip. In non-debug builds, it will produce normal library errors.
+
+ The new library behavior is for H5Sset_extent_none() to convert
+ the dataspace into one of type H5S_NULL, which is better handled
+ by the library and easier for developers to reason about.
+
+ (DER - 2020/07/27, HDFFV-11027)
+
+ - Fixed issues CVE-2018-13870 and CVE-2018-13869
+
+ When a buffer overflow occurred because a name length was corrupted
+ and became very large, h5dump crashed on memory access violation.
+
+ A check for reading pass the end of the buffer was added to multiple
+ locations to prevent the crashes and h5dump now simply fails with an
+ error message when this error condition occurs.
+
+ (BMR - 2020/07/22, HDFFV-11120 and HDFFV-11121)
+
+ - Fixed the segmentation fault when reading attributes with multiple threads
+
+ It was reported that the reading of attributes with variable length string
+ datatype will crash with segmentation fault particularly when the number of
+ threads is high (>16 threads). The problem was due to the file pointer that
+ was set in the variable length string datatype for the attribute. That file
+ pointer was already closed when the attribute was accessed.
+
+ The problem was fixed by setting the file pointer to the current opened file pointer
+ when the attribute was accessed. Similar patch up was done before when reading
+ dataset with variable length string datatype.
+
+ (VC - 2020/07/13, HDFFV-11080)
+
+ - Fixed CVE-2020-10810
+
+ The tool h5clear produced a segfault during an error recovery in
+ the superblock decoding. An internal pointer was reset to prevent
+ further accessing when it is not assigned with a value.
+
+ (BMR - 2020/06/29, HDFFV-11053)
+
+ - Fixed CVE-2018-17435
+
+ The tool h52gif produced a segfault when the size of an attribute
+ message was corrupted and caused a buffer overflow.
+
+ The problem was fixed by verifying the attribute message's size
+ against the buffer size before accessing the buffer. h52gif was
+ also fixed to display the failure instead of silently exiting
+ after the segfault was eliminated.
+
+ (BMR - 2020/06/19, HDFFV-10591)
+
+
+ Java Library
+ ------------
+ - Improve variable-length datatype handling in JNI.
+
+ The existing JNI read-write functions could handle variable-length datatypes
+ that were simple variable-length datatype with an atomic sub-datatype. More
+ complex combinations could not be handled. Reworked the JNI read-write functions
+ to recursively inspect datatypes for variable-length sub-datatypes.
+
+ (ADB - 2022/10/12, HDFFV-8701,10375)
+
+ - JNI utility function does not handle new references.
+
+ The JNI utility function for converting reference data to string did
+ not use the new APIs. In addition to fixing that function, added new
+ java tests for using the new APIs.
+
+ (ADB - 2021/02/16, HDFFV-11212)
+
+ - The H5FArray.java class, in which virtually the entire execution time
+ is spent using the HDFNativeData method that converts from an array
+ of bytes to an array of the destination Java type.
+
+ 1. Convert the entire byte array into a 1-d array of the desired type,
+ rather than performing 1 conversion per row;
+ 2. Use the Java Arrays method copyOfRange to grab the section of the
+ array from (1) that is desired to be inserted into the destination array.
+
+ (PGT,ADB - 2020/12/13, HDFFV-10865)
+
+
+ Configuration
+ -------------
+ - Remove Javadoc generation
+
+ The use of doxygen now supersedes the requirement to build javadocs. We do not
+ have the resources to continue to support two documentation methods and have
+ chosen doxygen as our standard.
+
+ (ADB - 2022/12/19)
+
+ - Change the default for building the high-level GIF tools
+
+ The gif2h5 and h52gif high-level tools are deprecated and will be removed
+ in a future release. The default build setting for them has been changed
+ from enabled to disabled. A user can enable the build of these tools if
+ needed.
+
+ autotools: --enable-hlgiftools
+ cmake: HDF5_BUILD_HL_GIF_TOOLS=ON
+
+ Disabling the GIF tools eliminates the following CVEs:
+
+ HDFFV-10592 CVE-2018-17433
+ HDFFV-10593 CVE-2018-17436
+ HDFFV-11048 CVE-2020-10809
+
+ (ADB - 2022/12/16)
+
+ - Change the settings of the *pc files to use the correct format
+
+ The pkg-config files generated by CMake uses incorrect syntax for the 'Requires'
+ settings. Changing the set to use 'lib-name = version' instead 'lib-name-version'
+ fixes the issue
+
+ (ADB - 2022/12/06 HDFFV-11355)
+
+ - Move MPI libraries link from PRIVATE to PUBLIC
+
+ The install dependencies were not including the need for MPI libraries when
+ an application or library was built with the C library. Also updated the
+ CMake target link command to use the newer style MPI::MPI_C link variable.
+
+ (ADB - 2022/10/27)
+
+ - Corrected path searched by CMake find_package command
+
+ The install path for cmake find_package files had been changed to use
+ "share/cmake"
+ for all platforms. However the trailing "hdf5" directory was not removed.
+ This "hdf5" additional directory has been removed.
+
+ (ADB - 2021/09/27)
+
+ - Corrected pkg-config compile script
+
+ It was discovered that the position of the "$@" argument for the command
+ in the compile script may fail on some platforms and configurations. The
+ position of the "$@"command argument was moved before the pkg-config sub command.
+
+ (ADB - 2021/08/30)
+
+ - Fixed CMake C++ compiler flags
+
+ A recent refactoring of the C++ configure files accidentally removed the
+ file that executed the enable_language command for C++ needed by the
+ HDFCXXCompilerFlags.cmake file. Also updated the intel warnings files,
+ including adding support for windows platforms.
+
+ (ADB - 2021/08/10)
+
+ - Better support for libaec (open-source Szip library) in CMake
+
+ Implemented better support for libaec 1.0.5 (or later) library. This version
+ of libaec contains improvements for better integration with HDF5. Furthermore,
+ the variable USE_LIBAEC_STATIC has been introduced to allow to make use of
+ static version of libaec library. Use libaec_DIR or libaec_ROOT to set
+ the location in which libaec can be found.
+
+ Be aware, the Szip library of libaec 1.0.4 depends on another library within
+ libaec library. This dependency is not specified in the current CMake
+ configuration which means that one can not use the static Szip library of
+ libaec 1.0.4 when building HDF5. This has been resolved in libaec 1.0.5.
+
+ (JWSB - 2021/06/22)
+
+ - Refactor CMake configure for Fortran
+
+ The Fortran configure tests for KINDs reused a single output file that was
+ read to form the Integer and Real Kinds defines. However, if config was run
+ more then once, the CMake completed variable prevented the tests from executing
+ again and the last value saved in the file was used to create the define.
+ Creating separate files for each KIND solved the issue.
+
+ In addition the test for H5_PAC_C_MAX_REAL_PRECISION was not pulling in
+ defines for proper operation and did not define H5_PAC_C_MAX_REAL_PRECISION
+ correctly for a zero value. This was fixed by supplying the required defines.
+ In addition it was moved from the Fortran specific HDF5UseFortran.camke file
+ to the C centric ConfigureChecks.cmake file.
+
+ (ADB - 2021/06/03)
+
+ - Move emscripten flag to compile flags
+
+ The emscripten flag, -O0, was removed from target_link_libraries command
+ to the correct target_compile_options command.
+
+ (ADB - 2021/04/26 HDFFV-11083)
+
+ - Remove arbitrary warning flag groups from CMake builds
+
+ The arbitrary groups were created to reduce the quantity of warnings being
+ reported that overwhelmed testing report systems. Considerable work has
+ been accomplished to reduce the warning count and these arbitrary groups
+ are no longer needed.
+ Also the default for all warnings, HDF5_ENABLE_ALL_WARNINGS, is now ON.
+
+ Visual Studio warnings C4100, C4706, and C4127 have been moved to
+ developer warnings, HDF5_ENABLE_DEV_WARNINGS, and are disabled for normal builds.
+
+ (ADB - 2021/03/22, HDFFV-11228)
+
+ - Reclassify CMake messages, to allow new modes and --log-level option
+
+ CMake message commands have a mode argument. By default, STATUS mode
+ was chosen for any non-error message. CMake version 3.15 added additional
+ modes, NOTICE, VERBOSE, DEBUG and TRACE. All message commands with a mode
+ of STATUS were reviewed and most were reclassified as VERBOSE. The new
+ mode was protected by a check for a CMake version of at least 3.15. If CMake
+ version 3.17 or above is used, the user can use the command line option
+ of "--log-level" to further restrict which message commands are displayed.
+
+ (ADB - 2021/01/11, HDFFV-11144)
+
+ - Fixes Autotools determination of the stat struct having an st_blocks field
+
+ A missing parenthesis in an autoconf macro prevented building the test
+ code used to determine if the stat struct contains the st_blocks field.
+ Now that the test functions correctly, the H5_HAVE_STAT_ST_BLOCKS #define
+ found in H5pubconf.h will be defined correctly on both the Autotools and
+ CMake. This #define is only used in the tests and does not affect the
+ HDF5 C library.
+
+ (DER - 2021/01/07, HDFFV-11201)
+
+ - Add missing ENV variable line to hdfoptions.cmake file
+
+ Using the build options to use system SZIP/ZLIB libraries need to also
+ specify the library root directory. Setting the {library}_ROOT ENV
+ variable was added to the hdfoptions.cmake file.
+
+ (ADB - 2020/10/19 HDFFV-11108)
+
+
+ Tools
+ -----
+ - Fix h5repack to only print output when verbose option is selected
+
+ When timing option was added to h5repack, the check for verbose was
+ incorrectly implemented.
+
+ (ADB - 2022/12/02, GH #2270)
+
+ - Changed how h5dump and h5ls identify long double.
+
+ Long double support is not consistent across platforms. Tools will always
+ identify long double as 128-bit [little/big]-endian float nn-bit precision.
+ New test file created for datasets with attributes for float, double and
+ long double. In addition any unknown integer or float datatype will now
+ also show the number of bits for precision.
+ These files are also used in the java tests.
+
+ (ADB - 2021/03/24, HDFFV-11229,HDFFV-11113)
+
+ - Fixed tools argument parsing.
+
+ Tools parsing used the length of the option from the long array to match
+ the option from the command line. This incorrectly matched a shorter long
+ name option that happened to be a subset of another long option.
+ Changed to match whole names.
+
+ (ADB - 2021/01/19, HDFFV-11106)
+
+ - The tools library was updated by standardizing the error stack process.
+
+ General sequence is:
+ h5tools_setprogname(PROGRAMNAME);
+ h5tools_setstatus(EXIT_SUCCESS);
+ h5tools_init();
+ ... process the command-line (check for error-stack enable) ...
+ h5tools_error_report();
+ ... (do work) ...
+ h5diff_exit(ret);
+
+ (ADB - 2020/07/20, HDFFV-11066)
+
+ - h5diff fixed a command line parsing error.
+
+ h5diff would ignore the argument to -d (delta) if it is smaller than DBL_EPSILON.
+ The macro H5_DBL_ABS_EQUAL was removed and a direct value comparison was used.
+
+ (ADB - 2020/07/20, HDFFV-10897)
+
+ - h5diff added a command line option to ignore attributes.
+
+ h5diff would ignore all objects with a supplied path if the exclude-path argument is used.
+ Adding the exclude-attribute argument will only exclude attributes, with the supplied path,
+ from comparison.
+
+ (ADB - 2020/07/20, HDFFV-5935)
+
+ - h5diff added another level to the verbose argument to print filenames.
+
+ Added verbose level 3 that is level 2 plus the filenames. The levels are:
+ 0 : Identical to '-v' or '--verbose'
+ 1 : All level 0 information plus one-line attribute status summary
+ 2 : All level 1 information plus extended attribute status report
+ 3 : All level 2 information plus file names
+
+ (ADB - 2020/07/20, HDFFV-1005)
+
+
+ Performance
+ -------------
+ -
+
+
+ Fortran API
+ -----------
+ - h5open_f and h5close_f fixes
+ * Fixed it so both h5open_f and h5close_f can be called multiple times.
+ * Fixed an issue with open objects remaining after h5close_f was called.
+ * Added additional tests.
+ (MSB, 2022/04/19, HDFFV-11306)
+
+
+ High-Level Library
+ ------------------
+ - Fixed HL_test_packet, test for packet table vlen of vlen.
+
+ Incorrect length assignment.
+
+ (ADB - 2021/10/14)
+
+
+ Fortran High-Level APIs
+ -----------------------
+ -
+
+
+ Documentation
+ -------------
+ -
+
+
+ F90 APIs
+ --------
+ -
+
+
+ C++ APIs
+ --------
+ - Added DataSet::operator=
+
+ Some compilers complain if the copy constructor is given explicitly
+ but the assignment operator is implicitly set to default.
+
+ (2021/05/19)
+
+
+ Testing
+ -------
+ - Stopped java/test/junit.sh.in installing libs for testing under ${prefix}
+
+ Lib files needed are now copied to a subdirectory in the java/test
+ directory, and on Macs the loader path for libhdf5.xxxs.so is changed
+ in the temporary copy of libhdf5_java.dylib.
+
+ (LRK, 2020/07/02, HDFFV-11063)
+
+
+Platforms Tested
+===================
+
+ Linux 5.16.14-200.fc35 GNU gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9)
+ #1 SMP x86_64 GNU/Linux GNU Fortran (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9)
+ Fedora35 clang version 13.0.0 (Fedora 13.0.0-3.fc35)
+ (cmake and autotools)
+
+ Linux 5.15.0-1026-aws gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
+ #30-Ubuntu SMP x86_64 GNU/Linux GNU Fortran (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
+ Ubuntu 22.04 Ubuntu clang version 14.0.0-1ubuntu1
+ (cmake and autotools)
+
+ Linux 5.13.0-1031-aws GNU gcc (GCC) 9.4.0-1ubuntu1
+ #35-Ubuntu SMP x86_64 GNU/Linux GNU Fortran (GCC) 9.4.0-1ubuntu1
+ Ubuntu 20.04 clang version 10.0.0-4ubuntu1
+ (cmake and autotools)
+
+ Linux 5.3.18-150300-cray_shasta_c cray-mpich/8.3.3
+ #1 SMP x86_64 GNU/Linux Cray clang 14.0.2, 15.0.0
+ (crusher) GCC 11.2.0, 12.1.0
+ (cmake)
+
+ Linux 4.18.0-348.7.1.el8_5 gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-4)
+ #1 SMP x86_64 GNU/Linux GNU Fortran (GCC) 8.5.0 20210514 (Red Hat 8.5.0-4)
+ CentOS8 clang version 12.0.1 (Red Hat 12.0.1)
+ (cmake and autotools)
+
+ Linux 4.14.0-115.35.1.1chaos openmpi 4.0.5
+ #1 SMP aarch64 GNU/Linux GCC 9.3.0 (ARM-build-5)
+ (stria) GCC 7.2.0 (Spack GCC)
+ arm/20.1
+ arm/22.1
+ (cmake)
+
+ Linux 4.14.0-115.35.1.3chaos spectrum-mpi/rolling-release
+ #1 SMP ppc64le GNU/Linux clang 12.0.1
+ (vortex) GCC 8.3.1
+ XL 16.1.1
+ (cmake)
+
+ Linux-4.14.0-115.21.2 spectrum-mpi/rolling-release
+ #1 SMP ppc64le GNU/Linux clang 12.0.1, 14.0.5
+ (lassen) GCC 8.3.1
+ XL 16.1.1.2, 2021,09.22, 2022.08.05
+ (cmake)
+
+ Linux-4.12.14-197.99-default cray-mpich/7.7.14
+ #1 SMP x86_64 GNU/Linux cce 12.0.3
+ (theta) GCC 11.2.0
+ llvm 9.0
+ Intel 19.1.2
+
+ Linux 3.10.0-1160.36.2.el7.ppc64 gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
+ #1 SMP ppc64be GNU/Linux g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
+ Power8 (echidna) GNU Fortran (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
+
+ Linux 3.10.0-1160.24.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
+ #1 SMP x86_64 GNU/Linux compilers:
+ Centos7 Version 4.8.5 20150623 (Red Hat 4.8.5-4)
+ (jelly/kituo/moohan) Version 4.9.3, Version 5.3.0, Version 6.3.0,
+ Version 7.2.0, Version 8.3.0, Version 9.1.0
+ Intel(R) C (icc), C++ (icpc), Fortran (icc)
+ compilers:
+ Version 17.0.0.098 Build 20160721
+ GNU C (gcc) and C++ (g++) 4.8.5 compilers
+ with NAG Fortran Compiler Release 6.1(Tozai)
+ Intel(R) C (icc) and C++ (icpc) 17.0.0.098 compilers
+ with NAG Fortran Compiler Release 6.1(Tozai)
+ MPICH 3.1.4 compiled with GCC 4.9.3
+ MPICH 3.3 compiled with GCC 7.2.0
+ OpenMPI 2.1.6 compiled with icc 18.0.1
+ OpenMPI 3.1.3 and 4.0.0 compiled with GCC 7.2.0
+ PGI C, Fortran, C++ for 64-bit target on
+ x86_64;
+ Version 19.10-0
+ (autotools and cmake)
+
+ Linux-3.10.0-1160.0.0.1chaos openmpi-4.1.2
+ #1 SMP x86_64 GNU/Linux clang 6.0.0, 11.0.1
+ (quartz) GCC 7.3.0, 8.1.0
+ Intel 19.0.4, 2022.2, oneapi.2022.2
+
+ Linux-3.10.0-1160.71.1.1chaos openmpi/4.1
+ #1 SMP x86_64 GNU/Linux GCC 7.2.0
+ (skybridge) Intel/19.1
+ (cmake)
+
+ Linux-3.10.0-1160.66.1.1chaos openmpi/4.1
+ #1 SMP x86_64 GNU/Linux GCC 7.2.0
+ (attaway) Intel/19.1
+ (cmake)
+
+ Linux-3.10.0-1160.59.1.1chaos openmpi/4.1
+ #1 SMP x86_64 GNU/Linux Intel/19.1
+ (chama) (cmake)
+
+ macOS Apple M1 11.6 Apple clang version 12.0.5 (clang-1205.0.22.11)
+ Darwin 20.6.0 arm64 gfortran GNU Fortran (Homebrew GCC 11.2.0) 11.1.0
+ (macmini-m1) Intel icc/icpc/ifort version 2021.3.0 202106092021.3.0 20210609
+
+ macOS Big Sur 11.3.1 Apple clang version 12.0.5 (clang-1205.0.22.9)
+ Darwin 20.4.0 x86_64 gfortran GNU Fortran (Homebrew GCC 10.2.0_3) 10.2.0
+ (bigsur-1) Intel icc/icpc/ifort version 2021.2.0 20210228
+
+ macOS High Sierra 10.13.6 Apple LLVM version 10.0.0 (clang-1000.10.44.4)
+ 64-bit gfortran GNU Fortran (GCC) 6.3.0
+ (bear) Intel icc/icpc/ifort version 19.0.4.233 20190416
+
+ macOS Sierra 10.12.6 Apple LLVM version 9.0.0 (clang-900.39.2)
+ 64-bit gfortran GNU Fortran (GCC) 7.4.0
+ (kite) Intel icc/icpc/ifort version 17.0.2
+
+ Mac OS X El Capitan 10.11.6 Apple clang version 7.3.0 from Xcode 7.3
+ 64-bit gfortran GNU Fortran (GCC) 5.2.0
+ (osx1011test) Intel icc/icpc/ifort version 16.0.2
+
+
+ Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
+ #1 SMP x86_64 GNU/Linux compilers:
+ Centos6 Version 4.4.7 20120313
+ (platypus) Version 4.9.3, 5.3.0, 6.2.0
+ MPICH 3.1.4 compiled with GCC 4.9.3
+ PGI C, Fortran, C++ for 64-bit target on
+ x86_64;
+ Version 19.10-0
+
+ Windows 10 x64 Visual Studio 2015 w/ Intel C/C++/Fortran 18 (cmake)
+ Visual Studio 2017 w/ Intel C/C++/Fortran 19 (cmake)
+ Visual Studio 2019 w/ clang 12.0.0
+ with MSVC-like command-line (C/C++ only - cmake)
+ Visual Studio 2019 w/ Intel C/C++/Fortran oneAPI 2022 (cmake)
+ Visual Studio 2022 w/ clang 15.0.1
+ with MSVC-like command-line (C/C++ only - cmake)
+ Visual Studio 2022 w/ Intel C/C++/Fortran oneAPI 2022 (cmake)
+ Visual Studio 2019 w/ MSMPI 10.1 (C only - cmake)
+
+
+Known Problems
+==============
+
+ ************************************************************
+ * _ *
+ * (_) *
+ * __ ____ _ _ __ _ __ _ _ __ __ _ *
+ * \ \ /\ / / _` | '__| '_ \| | '_ \ / _` | *
+ * \ V V / (_| | | | | | | | | | | (_| | *
+ * \_/\_/ \__,_|_| |_| |_|_|_| |_|\__, | *
+ * __/ | *
+ * |___/ *
+ * *
+ * Please refrain from running any program (including *
+ * HDF5 tests) which uses the subfiling VFD on Perlmutter *
+ * at the National Energy Research Scientific Computing *
+ * Center, NERSC. *
+ * Doing so may cause a system disruption due to subfiling *
+ * crashing Lustre. The system's Lustre bug is expected *
+ * to be resolved by 2023. *
+ * *
+ ************************************************************
+
+ There is a bug in OpenMPI 4.1.0-4.1.4 that can result in incorrect
+ results from MPI I/O requests unless one of the following parameters
+ is passed to mpirun:
+
+ --mca io ^ompio
+
+ --mca fbtl_posix_read_data_sieving 0
+
+ This bug has been fixed in later versions of OpenMPI.
+
+ Further discussion can be found here:
+
+ https://www.hdfgroup.org/2022/11/workarounds-for-openmpi-bug-exposed-by-make-check-in-hdf5-1-13-3/
+
+ When using the subfiling feature with OpenMPI it is often necessary to
+ increase the maximum number of threads:
+
+ --mca common_pami_max_threads 4096
+
+ There is a bug in MPICH 4.0.0-4.0.3 where using device=ch4:ofi (the default)
+ can cause failures in the testphdf5 test program. Using ch4:ucx or ch3
+ allows the test to pass. The bug appears to be fixed in the upcoming 4.1
+ release.
+
+ These MPI implementation bugs may also be present in implementations derived
+ from OpenMPI or MPICH. The workarounds listed above may need to be adjusted
+ to match the derived implementation, or in some cases, there may be no
+ workaround.
+
+ The accum test fails on MacOS 12.6.2 (Monterey) with clang 14.0.0. The
+ reason for this failure and its impact are unknown.
+
+ The onion test has failures on Windows when built using Intel OneAPI
+ 2022.3. The cause of these failures is under investigation.
+
+ CMake files do not behave correctly with paths containing spaces.
+ Do not use spaces in paths because the required escaping for handling spaces
+ results in very complex and fragile build files.
+ ADB - 2019/05/07
+
+ At present, metadata cache images may not be generated by parallel
+ applications. Parallel applications can read files with metadata cache
+ images, but since this is a collective operation, a deadlock is possible
+ if one or more processes do not participate.
+
+ CPP ptable test fails on both VS2017 and VS2019 with Intel compiler, JIRA
+ issue: HDFFV-10628. This test will pass with VS2015 with Intel compiler.
+
+ The subsetting option in ph5diff currently will fail and should be avoided.
+ The subsetting option works correctly in serial h5diff.
+
+ Several tests currently fail on certain platforms:
+ MPI_TEST-t_bigio fails with spectrum-mpi on ppc64le platforms.
+
+ MPI_TEST-t_subfiling_vfd and MPI_TEST_EXAMPLES-ph5_subfiling fail with
+ cray-mpich on theta and with XL compilers on ppc64le platforms.
+
+ MPI_TEST_testphdf5_tldsc fails with cray-mpich 7.7 on cori and theta.
+
+ Known problems in previous releases can be found in the HISTORY*.txt files
+ in the HDF5 source. Please report any new problems found to
+ help@hdfgroup.org.
+
+
+CMake vs. Autotools installations
+=================================
+While both build systems produce similar results, there are differences.
+Each system produces the same set of folders on linux (only CMake works
+on standard Windows); bin, include, lib and share. Autotools places the
+COPYING and RELEASE.txt file in the root folder, CMake places them in
+the share folder.
+
+The bin folder contains the tools and the build scripts. Additionally, CMake
+creates dynamic versions of the tools with the suffix "-shared". Autotools
+installs one set of tools depending on the "--enable-shared" configuration
+option.
+ build scripts
+ -------------
+ Autotools: h5c++, h5cc, h5fc
+ CMake: h5c++, h5cc, h5hlc++, h5hlcc
+
+The include folder holds the header files and the fortran mod files. CMake
+places the fortran mod files into separate shared and static subfolders,
+while Autotools places one set of mod files into the include folder. Because
+CMake produces a tools library, the header files for tools will appear in
+the include folder.
+
+The lib folder contains the library files, and CMake adds the pkgconfig
+subfolder with the hdf5*.pc files used by the bin/build scripts created by
+the CMake build. CMake separates the C interface code from the fortran code by
+creating C-stub libraries for each Fortran library. In addition, only CMake
+installs the tools library. The names of the szip libraries are different
+between the build systems.
+
+The share folder will have the most differences because CMake builds include
+a number of CMake specific files for support of CMake's find_package and support
+for the HDF5 Examples CMake project.
+
+The issues with the gif tool are:
+ HDFFV-10592 CVE-2018-17433
+ HDFFV-10593 CVE-2018-17436
+ HDFFV-11048 CVE-2020-10809
+These CVE issues have not yet been addressed and are avoided by not building
+the gif tool by default. Enable building the High-Level tools with these options:
+ autotools: --enable-hltools
+ cmake: HDF5_BUILD_HL_TOOLS=ON
diff --git a/release_docs/HISTORY-1_8.txt b/release_docs/HISTORY-1_8.txt
deleted file mode 100644
index 461e0be..0000000
--- a/release_docs/HISTORY-1_8.txt
+++ /dev/null
@@ -1,14439 +0,0 @@
-HDF5 History
-============
-
-This file contains development history of HDF5 1.8 branch
-
-23. Release Information for hdf5-1.8.21
-22. Release Information for hdf5-1.8.20
-21. Release Information for hdf5-1.8.19
-20. Release Information for hdf5-1.8.18
-19. Release Information for hdf5-1.8.17
-18. Release Information for hdf5-1.8.16
-17. Release Information for hdf5-1.8.15
-16. Release Information for hdf5-1.8.14
-15. Release Information for hdf5-1.8.13
-14. Release Information for hdf5-1.8.12
-13. Release Information for hdf5-1.8.11
-12. Release Information for hdf5-1.8.10-patch1
-11. Release Information for hdf5-1.8.10
-10. Release Information for hdf5-1.8.9
-09. Release Information for hdf5-1.8.8
-08. Release Information for hdf5-1.8.7
-07. Release Information for hdf5-1.8.6
-06. Release Information for hdf5-1.8.5
-05. Release Information for hdf5-1.8.4
-04. Release Information for hdf5-1.8.3
-03. Release Information for hdf5-1.8.2
-02. Release Information for hdf5-1.8.1
-01. Release Information for hdf5-1.8.0
-
-[Search on the string '%%%%' for section breaks of each release.]
-
-%%%%1.8.21%%%%
-
-
-HDF5 version 1.8.21 released on 2018-06-04
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.20 and
-HDF5-1.8.21, and contains information on the platforms tested and
-known problems in HDF5-1.8.21.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.21 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- https://support.hdfgroup.org/HDF5/
-
-The HDF5 1.8.21 release can be obtained from:
-
- https://support.hdfgroup.org/HDF5/release/obtain518.html
-
-User documentation for 1.8.21 can be accessed directly at this location:
-
- https://support.hdfgroup.org/HDF5/doc1.8/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- https://support.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.21 (current
-release) versus Release 1.8.20
-
- https://support.hdfgroup.org/HDF5/doc1.8/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.20
-- Supported Platforms
-- Supported Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - CMake
-
- Change minimum version to 3.10.
-
- This change removes the need to support a copy of the FindMPI.cmake module,
- which has been removed, along with its subfolder in the config/cmake_ext_mod
- location.
-
- (ADB - 2018/03/09)
-
- - CMake
-
- Add pkg-config file generation
-
- Added pkg-config file generation for the C, C++, HL, and HL C++ libraries.
- In addition, builds on linux will create h5cXXX scripts that use the pkg-config
- files. This is a limited implementation of a script like autotools h5cc.
-
- (ADB - 2018/03/08, HDFFV-4359)
-
- - CMake
-
- Refactor use of CMAKE_BUILD_TYPE for new variable, which understands
- the type of generator in use.
-
- Added new configuration macros to use new HDF_BUILD_TYPE variable. This
- variable is set correctly for the type of generator being used for the build.
-
- (ADB - 2018/01/08, HDFFV-10385, HDFFV-10296)
-
- C++ API
- -------
- - The following C++ API wrappers have been added to class H5Location
- + H5Lcreate_soft:
- // Creates a soft link from link_name to target_name.
- void link(const char *target_name, const char *link_name,...)
- void link(const H5std_string& target_name,...)
-
- + H5Lcreate_hard:
- // Creates a hard link from new_name to curr_name.
- void link(const char *curr_name, const Group& new_loc,...)
- void link(const H5std_string& curr_name, const Group& new_loc,...)
-
- // Creates a hard link from new_name to curr_name in the same location.
- void link(const char *curr_name, const hid_t same_loc,...)
- void link(const H5std_string& curr_name, const hid_t same_loc,...)
-
- Note: previous version CommonFG::link will be deprecated.
-
- + H5Lcopy:
- // Copy an object from a group of file to another.
- void copyLink(const char *src_name, const Group& dst,...)
- void copyLink(const H5std_string& src_name, const Group& dst,...)
-
- // Copy an object from a group of file to the same location.
- void copyLink(const char *src_name, const char *dst_name,...)
- void copyLink(const H5std_string& src_name,...)
-
- + H5Lmove:
- // Rename an object in a group or file to a new location.
- void moveLink(const char* src_name, const Group& dst,...)
- void moveLink(const H5std_string& src_name, const Group& dst,...)
-
- // Rename an object in a group or file to the same location.
- void moveLink(const char* src_name, const char* dst_name,...)
- void moveLink(const H5std_string& src_name,...)
-
- Note: previous version CommonFG::move will be deprecated.
-
- + H5Ldelete:
- // Removes the specified link from this location.
- void unlink(const char *link_name,
- const LinkAccPropList& lapl = LinkAccPropList::DEFAULT)
- void unlink(const H5std_string& link_name,
- const LinkAccPropList& lapl = LinkAccPropList::DEFAULT)
-
- Note: An additional parameter is added to CommonFG::unlink and it
- is moved to H5Location.
-
- (BMR - 2018/05/11 - HDFFV-10445)
-
- - New property list subclasses
-
- Property list subclasses StrCreatPropList, LinkCreatPropList, and
- AttrCreatPropList are added for the C property list classes
- H5P_STRING_CREATE, H5P_LINK_CREATE, and H5P_ATTRIBUTE_CREATE.
-
- (BMR - 2018/05/11 - HDFFV-10445)
-
- - Another argument, LinkCreatPropList& lcpl, is added to the following
- functions for the use of link creation property list.
- Group createGroup(const char* name, size_t size_hint = 0,
- const LinkCreatPropList& lcpl = LinkCreatPropList::DEFAULT)
- Group createGroup(const H5std_string& name, size_t size_hint = 0,
- const LinkCreatPropList& lcpl = LinkCreatPropList::DEFAULT)
-
- (BMR - 2018/05/11 - HDFFV-10445)
-
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
-
- - Added support for Visual Studio 2017 w/ Intel Fortran 18 on Windows 10 x64.
-
-
-Bug Fixes since HDF5-1.8.20
-===========================
-
- - If an HDF5 file contains a filter pipeline message with a 'number of
- filters' field that exceeds the maximum number of allowed filters,
- the error handling code will attempt to dereference a NULL pointer.
-
- This issue was reported to The HDF Group as issue #CVE-2017-17505.
-
- NOTE: The HDF5 C library cannot produce such a file. This condition
- should only occur in a corrupt (or deliberately altered) file
- or a file created by third-party software.
-
- This problem arose because the error handling code assumed that
- the 'number of filters' field implied that a dynamic array of that
- size had already been created and that the cleanup code should
- iterate over that array and clean up each element's resources. If
- an error occurred before the array has been allocated, this will
- not be true.
-
- This has been changed so that the number of filters is set to
- zero on errors. Additionally, the filter array traversal in the
- error handling code now requires that the filter array not be NULL.
-
- (DER - 2018/02/06, HDFFV-10354)
-
- - If an HDF5 file contains a filter pipeline message which contains
- a 'number of filters' field that exceeds the actual number of
- filters in the message, the HDF5 C library will read off the end of
- the read buffer.
-
- This issue was reported to The HDF Group as issue #CVE-2017-17506.
-
- NOTE: The HDF5 C library cannot produce such a file. This condition
- should only occur in a corrupt (or deliberately altered) file
- or a file created by third-party software.
-
- The problem was fixed by passing the buffer size with the buffer
- and ensuring that the pointer cannot be incremented off the end
- of the buffer. A mismatch between the number of filters declared
- and the actual number of filters will now invoke normal HDF5
- error handling.
-
- (DER - 2018/02/26, HDFFV-10355)
-
- - If an HDF5 file contains a malformed compound datatype with a
- suitably large offset, the type conversion code can run off
- the end of the type conversion buffer, causing a segmentation
- fault.
-
- This issue was reported to The HDF Group as issue #CVE-2017-17507.
-
- NOTE: The HDF5 C library cannot produce such a file. This condition
- should only occur in a corrupt (or deliberately altered) file
- or a file created by third-party software.
-
- THE HDF GROUP WILL NOT FIX THIS BUG AT THIS TIME
-
- Fixing this problem would involve updating the publicly visible
- H5T_conv_t function pointer typedef and versioning the API calls
- which use it. We normally only modify the public API during
- major releases, so this bug will not be fixed at this time.
-
- (DER - 2018/02/26, HDFFV-10356)
-
- - If an HDF5 file contains a malformed compound type which contains
- a member of size zero, a division by zero error will occur while
- processing the type.
-
- This issue was reported to The HDF Group as issue #CVE-2017-17508.
-
- NOTE: The HDF5 C library cannot produce such a file. This condition
- should only occur in a corrupt (or deliberately altered) file
- or a file created by third-party software.
-
- Checking for zero before dividing fixes the problem. Instead of the
- division by zero, the normal HDF5 error handling is invoked.
-
- (DER - 2018/02/26, HDFFV-10357)
-
- - If an HDF5 file contains a malformed symbol table node that declares
- it contains more symbols than it actually contains, the library
- can run off the end of the metadata cache buffer while processing
- the symbol table node.
-
- This issue was reported to The HDF Group as issue #CVE-2017-17509.
-
- NOTE: The HDF5 C library cannot produce such a file. This condition
- should only occur in a corrupt (or deliberately altered) file
- or a file created by third-party software.
-
- Performing bounds checks on the buffer while processing fixes the
- problem. Instead of the segmentation fault, the normal HDF5 error
- handling is invoked.
-
- (DER - 2018/03/12, HDFFV-10358)
-
-
- Configuration
- -------------
- - Library
-
- Moved the location of gcc attribute.
-
- The gcc attribute(no_sanitize), named as the macro HDF_NO_UBSAN,
- was located after the function name. Builds with GCC 7 did not
- indicate any problem, but GCC 8 issued errors. Moved the
- attribute before the function name, as required.
-
- (ADB 2018/05/22, HDFFV-10473)
-
- - CMake
-
- Update CMake commands configuration.
-
- A number of improvements were made to the CMake commands. Most
- changes simplify usage or eliminate unused constructs. Also,
- some changes support better cross-platform support.
-
- (ADB - 2018/02/01, HDFFV-10398)
-
- - CMake
-
- Correct usage of CMAKE_BUILD_TYPE variable.
-
- The use of the CMAKE_BUILD_TYPE is incorrect for multi-config
- generators (Visual Studio and XCode) and is optional for single
- config generators. Created a new macro to check
- GLOBAL PROPERTY -> GENERATOR_IS_MULTI_CONFIG
- Created two new HDF variable, HDF_BUILD_TYPE and HDF_CFG_BUILD_TYPE.
- Defaults for these variables is "Release".
-
- (ADB - 2018/01/10, HDFFV-10385)
-
- - CMake
-
- Add replacement of fortran flags if using static CRT.
-
- Added TARGET_STATIC_CRT_FLAGS call to HDFUseFortran.cmake file in
- config/cmake_ext_mod folder.
-
- (ADB - 2018/01/08, HDFFV-10334)
-
-
- Library
- -------
- - Utility function can not handle lowercase Windows drive letters
-
- Added call to toupper function for drive letter.
-
- (ADB - 2017/12/18, HDFFV-10307)
-
-
- Tools
- -----
- - h5repack
-
- h5repack changes the chunk parameters when a change of layout is not
- specified and a filter is applied.
-
- HDFFV-10297, HDFFV-10319 reworked code for h5repack and h5diff code
- in the tools library. The check for an existing layout was incorrectly
- placed into an if block and not executed. The check was moved into
- the normal path of the function.
-
- (ADB - 2018/02/21, HDFFV-10412)
-
- - h5dump
-
- the tools library will hide the error stack during file open.
-
- While this is preferable almost always, there are reasons to enable
- display of the error stack when a tool will not open a file. Adding an
- optional argument to the --enable-error-stack will provide this use case.
- As an optional argument it will not affect the operation of the
- --enable-error-stack. h5dump is the only tool to implement this change.
-
- (ADB - 2018/02/15, HDFFV-10384)
-
- - h5dump
-
- h5dump would output an indented blank line in the filters section.
-
- h5dump overused the h5tools_simple_prefix function, which is a
- function intended to account for the data index (x,y,z) option.
- Removed the function call for header information.
-
- (ADB - 2018/01/25, HDFFV-10396)
-
- - h5repack
-
- h5repack incorrectly searched internal object table for name.
-
- h5repack would search the table of objects for a name, if the
- name did not match it tried to determine if the name without a
- leading slash would match. The logic was flawed! The table
- stored names(paths) without a leading slash and did a strstr
- of the table path to the name.
- The assumption was that if there was a difference of one then
- it was a match, however "pressure" would match "/pressure" as
- well as "/pressure1", "/pressure2", etc. Changed logic to remove
- any leading slash and then do a full compare of the name.
-
- (ADB - 2018/01/18, HDFFV-10393)
-
- - h5repack
-
- h5repack failed to handle command line parameters for customer filters.
-
- User defined filter parameter conversions would fail when integers
- were represented on the command line with character strings
- larger than 9 characters. Increased local variable array for storing
- the current command line parameter to prevent buffer overflows.
-
- (ADB - 2018/01/17, HDFFV-10392)
-
- - h5diff
-
- h5diff seg faulted if comparing VL strings against fixed strings.
-
- Reworked solution for HDFFV-8625 and HDFFV-8639. Implemented the check
- for string objects of same type in the diff_can_type function by
- adding an if(tclass1 == H5T_STRING) block. This "if block" moves the
- same check that was added for attributes to this function, which is
- used by all object types. This function handles complex type structures.
- Also added a new test file in h5diffgentest for testing this issue
- and removed the temporary files used in the test scripts.
-
- (ADB - 2018/01/04, HDFFV-8745)
-
-
- C++ API
- -------
- - Removal of memory leaks
-
- A private function was inadvertently called, causing memory leaks. This
- is now fixed.
-
- (BMR - 2018/04/12 - User reported in email)
-
- - Changes in exception classes
-
- Some exception classes are reorganized to reflect the HDF5 object
- hierarchy and allow customization.
- DataSetIException -> LocationException -> Exception
- DataTypeIException -> LocationException -> Exception
- GroupIException -> LocationException -> Exception
- AttributeIException -> LocationException -> Exception
- FileIException -> GroupIException -> LocationException -> Exception
- Member functions in H5Location and H5Object now throw specific exceptions
- associated with the invoking objects.
-
- (BMR - 2018/05/11)
-
- - H5Location::closeObjId is made static
- (BMR - 2018/05/11)
-
- - H5A wrappers in H5Location are removed as they have been in H5Object.
- (BMR - 2018/05/11)
-
-
-Supported Platforms
-===================
-The following platforms are supported and have been tested for this release.
-They are built with the configure process unless specified otherwise.
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (platypus/mayll) Version 4.4.7 20120313
- Versions 4.9.3, 5.3.0, 6.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 17.10-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.4.196 Build 20160721
- MPICH 3.1.4 compiled with GCC 4.9.3
- OpenMPI 2.0.1 compiled with GCC 4.9.3
-
- Linux 2.6.32-573.18.1.el6 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-327.10.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan/jelly Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Versions 4.9.3, 5.3.0, 6.2.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.4.196 Build 20170411
- MPICH 3.1.4 compiled with GCC 4.9.3
- NAG Fortran Compiler Release 6.1(Tozai) Build 6116
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Visual Studio 2015 w/ Intel C, Fortran 2017 (cmake)
- Visual Studio 2015 w/ MSMPI 8 (cmake)
-
- Windows 10 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Visual Studio 2017 w/ Intel Fortran 18 (cmake)
-
- Mac OS X Mavericks 10.9.5 Apple LLVM version 6.0 (clang-600.0.57)
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (wren/quail) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Yosemite 10.10.5 Apple LLVM version 6.1 (clang-602.0.53)
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X El Capitan 10.11.6 Apple LLVM version 7.3.0 (clang-703.0.29)
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (VM osx1011dev/osx1011test) Intel icc/icpc/ifort version 16.0.2
-
- Mac OS Sierra 10.12.6 Apple LLVM version 8.1 (clang-802.0.42)
- 64-bit gfortran GNU Fortran (GCC) 7.1.0
- (kite) Intel icc/icpc/ifort version 17.0.2
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-SunOS 5.11 32-bit n y/y n y y y
-SunOS 5.11 64-bit n y/y n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y n y y y
-Windows 7 Cygwin n y/n n y y y
-Windows 7 x64 Cygwin n y/n n y y y
-Windows 10 y y/y n y y y
-Windows 10 x64 y y/y n y y y
-Mac OS X Yosemite 10.10.5 64-bit n y/y n y y y
-Mac OS X El Capitan 10.11.6 64-bit n y/y n y y y
-Mac OS Sierra 10.12.6 64-bit n y/y n y y y
-AIX 6.1 32- and 64-bit n y/n n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel n y/y n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI n y/y n y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y/y y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel n y/y n y y y
-Linux 2.6.32-573.18.1.el6.ppc64 n y/n n y y y
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-SunOS 5.11 32-bit y y y y
-SunOS 5.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 7 x64 Cygwin n n n y
-Windows 10 y y y y
-Windows 10 x64 y y y y
-Mac OS X Yosemite 10.10.5 64-bit y n y y
-Mac OS X El Capitan 10.11.6 64-bit y n y y
-Mac OS Sierra 10.12.6 64-bit y n y y
-AIX 6.1 32- and 64-bit y n n y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel y y y y
-Linux 2.6.32-573.18.1.el6.ppc64 y y y y
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.32-573.22.1.el6 g95 (GCC 4.0.3 (g95 0.94!)
- #1 SMP x86_64 GNU/Linux
- (mayll)
-
- Debian8.4.0 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1 x86_64 GNU/Linux
- gcc (Debian 4.9.2-10) 4.9.2
- GNU Fortran (Debian 4.9.2-10) 4.9.2
- (cmake and autotools)
-
- Fedora24 4.7.2-201.fc24.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 6.1.1 20160621 (Red Hat 6.1.1-3)
- GNU Fortran (GCC) 6.1.1 20160621 (Red Hat 6.1.1-3)
- (cmake and autotools)
-
- CentOS 7.2 3.10.0-327.28.2.el7.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4)
- GNU Fortran (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4)
- (cmake and autotools)
-
- Ubuntu 16.04 4.4.0-38-generic #62-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0
- GNU Fortran (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0
- (cmake and autotools)
-
-
-Known Problems
-==============
-
- The dynamically loaded plugin test libraries require undefined references
- to HDF5 functions to be resolved at runtime in order to function properly.
- With autotools on CYGWIN this results in build errors, and we have not
- found a solution that satisfies both. Therefore the dynamically loaded
- plugin tests have been disabled on CYGWIN.
-
- Mac OS X 10.13 added additional subdirectory structure in .libs for shared
- libraries. Consequently "make check" will fail testing java and dynamically
- loaded plugin test libraries attempting to copy files from the previous
- locations in .libs directories. This will be addressed in the next release
- when support for the Mac OS X 10.13 platform is added.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-%%%%1.8.20%%%%
-
-
-HDF5 version 1.8.20 released on 2017-11-28
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.19 and
-HDF5-1.8.20, and contains information on the platforms tested and
-known problems in HDF5-1.8.20.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.20 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- https://support.hdfgroup.org/HDF5/
-
-The HDF5 1.8.20 release can be obtained from:
-
- https://support.hdfgroup.org/HDF5/release/obtain518.html
-
-User documentation for 1.8.20 can be accessed directly at this location:
-
- https://support.hdfgroup.org/HDF5/doc1.8/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- https://support.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.20 (current
-release) versus Release 1.8.19
-
- https://support.hdfgroup.org/HDF5/doc1.8/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.20
-- Supported Platforms
-- Supported Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-New Features
-============
-
- Tools
- -----
- - h5diff
-
- h5diff has new option enable-error-stack.
-
- Updated h5diff with the --enable-error-stack argument, which
- enables the display of the hdf5 error stack. This completes the
- improvement to the main tools; h5copy, h5diff, h5dump, h5ls and
- h5repack.
-
- (ADB - 2017/08/30, HDFFV-9774)
-
-
- C++ API
- -------
- - The following C++ API wrappers have been added to the C++ Library:
-
- // Creates a binary object description of this datatype.
- void DataType::encode() - C API H5Tencode()
-
- // Returns the decoded type from the binary object description.
- DataType::decode() - C API H5Tdecode()
- ArrayType::decode() - C API H5Tdecode()
- CompType::decode() - C API H5Tdecode()
- DataType::decode() - C API H5Tdecode()
- EnumType::decode() - C API H5Tdecode()
- FloatType::decode() - C API H5Tdecode()
- IntType::decode() - C API H5Tdecode()
- StrType::decode() - C API H5Tdecode()
- VarLenType::decode() - C API H5Tdecode()
-
- // Three overloaded functions to retrieve information about an object
- H5Location::getObjectInfo() - H5Oget_info()/H5Oget_info_by_name()
-
- (BMR - 2017/10/17, HDFFV-10175)
-
- - New constructors to open existing datatypes added in ArrayType,
- CompType, DataType, EnumType, FloatType, IntType, StrType, and
- VarLenType.
-
- (BMR - 2017/10/17, HDFFV-10175)
-
- - A document is added to the HDF5 C++ API Reference Manual to show the
- mapping from a C API to C++ wrappers. It can be found from the main
- page of the C++ API Reference Manual.
-
- (BMR - 2017/10/17, HDFFV-10151)
-
-
- High-Level APIs
- ---------------
- - H5DOread_chunk
-
- Users wanted to read compressed data directly from a file without any
- processing by the HDF5 data transfer pipeline, just as they were able
- to write it directly to a file with H5DOwrite_chunk.
-
- New API function, corresponding to existing function H5DOwrite_chunk.
- H5DOread_chunk reads a raw data chunk directly from a chunked dataset
- in the file into the application buffer, bypassing the library’s internal
- data transfer pipeline, including filters.
-
- (VC - 2017/05/02, HDFFV-9934)
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
-
- - Added NAG compiler
-
-
-Bug Fixes since HDF5-1.8.19
-===========================
-
- Configuration
- -------------
- - cmake
-
- The hdf5 library used shared szip and zlib, which needlessly required
- applications to link with the same szip and zlib libraries.
-
- Changed the target_link_libraries commands to use the static libs.
- Removed improper link duplication of szip and zlib.
- Adjusted the link dependencies and the link interface values of
- the target_link_libraries commands.
-
- (ADB - 2017/11/14, HDFFV-10329)
-
- - cmake MPI
-
- CMake implementation for MPI was problematic and would create incorrect
- MPI library references in the hdf5 libraries.
-
- Reworked the CMake MPI code to properly create CMake targets.Also merged
- the latest CMake FindMPI.cmake changes to the local copy. This is necessary
- until HDF changes the CMake minimum to 3.9 or greater.
-
- (ADB - 2017/11/02, HDFFV-10321)
-
-
- - Fixed Fortran linker flags when using the NAG Fortran compiler (autotools).
-
- (HDFFV-10037, MSB, 2017/10/21)
-
- - cmake
-
- Too many commands for POST_BUILD step caused command line to be
- too big on windows.
-
- Changed foreach of copy command to use a custom command with the
- use of the HDFTEST_COPY_FILE macro.
-
- (ADB - 2017/07/12, HDFFV-10254)
-
-
- Library
- -------
- - filter plugin handling in H5PL.c and H5Z.c
-
- It was discovered that the dynamic loading process used by
- filter plugins had issues with library dependencies.
-
- CMake build process changed to use LINK INTERFACE keywords, which
- allowed HDF5 C library to make dependent libraries private. The
- filter plugin libraries no longer require dependent libraries
- (such as szip or zlib) to be available.
- (ADB - 2017/11/16, HDFFV-10328)
-
- - Fix rare object header corruption bug
-
- In certain cases, such as when converting large attributes to dense
- storage, an error could occur which would either fail an assertion or
- cause file corruption. Fixed and added test.
-
- (NAF - 2017/11/14, HDFFV-10274)
-
- - H5Zfilter_avail in H5Z.c
-
- The public function checked for plugins, while the private
- function did not.
-
- Modified H5Zfilter_avail and private function, H5Z_filter_avail.
- Moved check for plugin from public to private function. Updated
- H5P__set_filter due to change in H5Z_filter_avail. Updated tests.
-
- (ADB - 2017/10/10, HDFFV-10297, HDFFV-10319)
-
- - Fix H5Sencode bug when num points selected is >2^32
-
- Modified to fail if the 32 bit limit is exceeded when encoding either
- offsets or counts in the selection.
-
- (HDFFV-10323, VC, 2017/09/07)
-
- - Fix H5HL_offset_into()
-
- (1) Fix H5HL_offset_into() to return error when offset exceeds heap data
- block size.
- (2) Fix other places in the library that call this routine to detect
- error routine.
-
- (HDFFV-10216, VC, 2017/09/05)
-
-
- Tools
- -----
- - h5repack
-
- h5repack failed to copy a dataset with existing filter.
-
- Reworked code for h5repack and h5diff code in tools library. Added
- improved error handling, cleanup of resources and checks of calls.
- Modified H5Zfilter_avail and private function, H5Z_filter_avail.
- Moved check for plugin from public to private function. Updated
- H5P__set_filter due to change in H5Z_filter_avail. Updated tests.
- Note, h5repack output display has changed to clarify the individual
- steps of the repack process. The output indicates if an operation
- applies to all objects. Lines with notation and no information
- have been removed.
-
- (ADB - 2017/10/10, HDFFV-10297, HDFFV-10319)
-
- - h5repack
-
- h5repack always set the User Defined filter flag to H5Z_FLAG_MANDATORY.
-
- Added another parameter to the 'UD=' option to set the flag by default
- to '0' or H5Z_FLAG_MANDATORY, the other choice is '1' or H5Z_FLAG_OPTIONAL.
-
- (ADB - 2017/08/31, HDFFV-10269)
-
- - h5ls
-
- h5ls generated error on stack when it encountered a H5S_NULL
- dataspace.
-
- Adding checks for H5S_NULL before calling H5Sis_simple (located
- in the h5tools_dump_mem function) fixed the issue.
-
- (ADB - 2017/08/17, HDFFV-10188)
-
- - h5dump
-
- h5dump segfaulted on output of XML file.
-
- Function that escape'd strings used the full buffer length
- instead of just the length of the replacement string in a
- strncpy call. Using the correct length fixed the issue.
-
- (ADB - 2017/08/01, HDFFV-10256)
-
- - h5diff
-
- h5diff segfaulted on compare of a NULL variable length string.
-
- Improved h5diff compare of strings by adding a check for
- NULL strings and setting the lengths to zero.
-
- (ADB - 2017/07/25, HDFFV-10246)
-
- - h5import
-
- h5import crashed trying to import data from a subset of a dataset.
-
- Improved h5import by adding the SUBSET keyword. h5import understands
- to use the Count times the Block as the size of the dimensions.
- Added INPUT_B_ORDER keyword to old-style configuration files.
- The import from h5dump function expects the binary files to use native
- types (FILE '-b' option) in the binary file.
-
- (ADB - 2017/06/15, HDFFV-10219)
-
-
- C++ API
- -------
- - Marked the following functions deprecated because they were moved to
- class H5Object:
- H5Location::createAttribute()
- H5Location::openAttribute()
- H5Location::attrExists()
- H5Location::removeAttr()
- H5Location::renameAttr()
- H5Location::getNumAttrs()
-
- (BMR - 2017/10/17)
-
-
-Supported Platforms
-===================
-The following platforms are supported and have been tested for this release.
-They are built with the configure process unless specified otherwise.
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (platypus/mayll) Version 4.4.7 20120313
- Versions 4.9.3, 5.3.0, 6.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 16.10-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.0.196 Build 20160721
- MPICH 3.1.4 compiled with GCC 4.9.3
- OpenMPI 2.0.1 compiled with GCC 4.9.3
-
- Linux 2.6.32-573.18.1.el6 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-327.10.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan/jelly Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Versions 4.9.3, 5.3.0, 6.2.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.4.196 Build 20170411
- MPICH 3.1.4 compiled with GCC 4.9.3
- NAG Fortran Compiler Release 6.1(Tozai) Build 6116
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Visual Studio 2015 w/ Intel C, Fortran 2017 (cmake)
- Visual Studio 2015 w/ MSMPI 8 (cmake)
- Cygwin(CYGWIN_NT-6.1 2.8.0(0.309/5/3)
- gcc and gfortran compilers (GCC 5.4.0)
- (cmake and autotools)
-
- Windows 10 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Cygwin(CYGWIN_NT-6.1 2.8.0(0.309/5/3)
- gcc and gfortran compilers (GCC 5.4.0)
- (cmake and autotools)
-
- Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Mac OS X Mavericks 10.9.5 Apple LLVM version 6.0 (clang-600.0.57)
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (wren/quail) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Yosemite 10.10.5 Apple LLVM version 6.1 (clang-602.0.53)
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X El Capitan 10.11.6 Apple LLVM version 7.3.0 (clang-703.0.29)
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (VM osx1011dev/osx1011test) Intel icc/icpc/ifort version 16.0.2
-
- Mac OS Sierra 10.12.6 Apple LLVM version 8.1 (clang-802.0.42)
- 64-bit gfortran GNU Fortran (GCC) 7.1.0
- (kite) Intel icc/icpc/ifort version 17.0.2
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-SunOS 5.11 32-bit n y/y n y y y
-SunOS 5.11 64-bit n y/y n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y n y y y
-Windows 7 Cygwin n y/n n y y y
-Windows 7 x64 Cygwin n y/n n y y y
-Windows 10 y y/y n y y y
-Windows 10 x64 y y/y n y y y
-Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
-Mac OS X Yosemite 10.10.5 64-bit n y/y n y y y
-Mac OS X El Capitan 10.11.6 64-bit n y/y n y y y
-Mac OS Sierra 10.12.6 64-bit n y/y n y y y
-AIX 6.1 32- and 64-bit n y/n n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel n y/y n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI n y/y n y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y/y y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel n y/y n y y y
-Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-SunOS 5.11 32-bit y y y y
-SunOS 5.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 7 x64 Cygwin n n n y
-Windows 10 y y y y
-Windows 10 x64 y y y y
-Mac OS X Mavericks 10.9.5 64-bit y n y y
-Mac OS X Yosemite 10.10.5 64-bit y n y y
-Mac OS X El Capitan 10.11.6 64-bit y n y y
-Mac OS Sierra 10.12.6 64-bit y n y y
-AIX 6.1 32- and 64-bit y n n y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel y y y y
-Linux 2.6.32-431.11.2.el6.ppc64 y y y y
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.32-573.22.1.el6 g95 (GCC 4.0.3 (g95 0.94!)
- #1 SMP x86_64 GNU/Linux
- (mayll)
-
- Debian8.4.0 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1 x86_64 GNU/Linux
- gcc (Debian 4.9.2-10) 4.9.2
- GNU Fortran (Debian 4.9.2-10) 4.9.2
- (cmake and autotools)
-
- Fedora24 4.7.2-201.fc24.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 6.1.1 20160621 (Red Hat 6.1.1-3)
- GNU Fortran (GCC) 6.1.1 20160621 (Red Hat 6.1.1-3)
- (cmake and autotools)
-
- CentOS 7.2 3.10.0-327.28.2.el7.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4)
- GNU Fortran (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4)
- (cmake and autotools)
-
- Ubuntu 16.04 4.4.0-38-generic #62-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0
- GNU Fortran (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0
- (cmake and autotools)
-
-
-Known Problems
-==============
-
- The dynamically loaded plugin test libraries require undefined references
- to HDF5 functions to be resolved at runtime in order to function properly.
- With autotools on CYGWIN this results in build errors, and we have not
- found a solution that satisfies both. Therefore the dynamically loaded
- plugin tests have been disabled on CYGWIN.
-
- Mac OS X 10.13 added additional subdirectory structure in .libs for shared
- libraries. Consequently "make check" will fail testing java and dynamically
- loaded plugin test libraries attempting to copy files from the previous
- locations in .libs directories. This will be addressed in the next release
- when support for the Mac OS X 10.13 platform is added.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-%%%%1.8.19%%%%
-
-
-HDF5 version 1.8.19 released on 2017-06-15
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.18 and
-HDF5-1.8.19, and contains information on the platforms tested and
-known problems in HDF5-1.8.19.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.19 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- https://support.hdfgroup.org/HDF5/
-
-The HDF5 1.8.19 release can be obtained from:
-
- https://support.hdfgroup.org/HDF5/release/obtain518.html
-
-User documentation for 1.8.19 can be accessed directly at this location:
-
- https://support.hdfgroup.org/HDF5/doc1.8/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- https://support.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.19 (current
-release) versus Release 1.8.18
-
- https://support.hdfgroup.org/HDF5/doc1.8/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.19
-- Supported Platforms
-- Supported Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- --------------
- - CMake in the Tools
-
- User-defined filters on Windows require that tools be built
- with shared libraries.
-
- CMake command code added to build tools with
- shared libraries as well as with static libraries.
-
- (ADB - 2017/02/07, HDFFV-10123)
-
-
- Library
- -------
- - H5PL package
-
- Users would like to be able to set the plugin path programmatically
- instead of through the environment variable.
-
- H5PL package obtained new APIs for manipulating the entries of
- the plugin path table. The new APIs are;
- H5PLappend - Insert a plugin path at the end of the list.
- H5PLprepend - Insert a plugin path at the beginning of the list.
- H5PLreplace - Replace the path at the specified index.
- H5PLinsert - Insert a plugin path at the specified index, moving
- other paths after the index.
- H5PLremove - Remove the plugin path at the specified index and
- compacting the list.
- H5PLget - Query the plugin path at the specified index.
- H5PLsize - Query the size of the current list of plugin paths.
-
- (ADB - 2017/04/04, HDFFV-10143)
-
- - H5Dget_chunk_storage_size
-
- The storage size of a chunk in the file is needed to determine the size
- of the buffer to be allocated for reading a chunk directly from a file.
-
- New API function gets the size in bytes currently allocated within a
- file for a raw data chunk in a dataset. This function was added to get
- the chunk size in support of the implementation of H5DOread_chunks, but
- may also be useful for other purposes.
-
- (VC - 2017/05/02, HDFFV-9934)
-
- C++ API
- -------
- - The following C++ API wrappers have been added to the C++ Library:
- // Determines if a name exists.
- H5Location::nameExists() - C API H5Lexists()
-
- // Checks if an ID is valid.
- IdComponent::isValid() - C API H5Iis_valid()
-
- // Sets the number of soft or user-defined links that can be
- // traversed before a failure occurs.
- LinkAccPropList::setNumLinks() - C API H5Pset_nlinks()
-
- // Gets the number of soft or user-defined link traversals allowed
- LinkAccPropList::getNumLinks() - C API H5Pget_nlinks()
-
- // Returns a copy of the creation property list of a datatype.
- DataType::getCreatePlist() - C API H5Tget_create_plist()
-
- // Opens an object within a location, regardless its type.
- H5Location::openObjId() - C API H5Oopen()
- H5Location::openObjId() - C API H5Oopen()
-
- // Closes an object opened by openObjId().
- H5Location::closeObjId() - C API H5Oclose()
-
- // Gets general information about a file.
- H5File::getFileInfo() - C API H5Fget_info()
-
- // Returns the header version of an HDF5 object.
- H5Object::objVersion() - C API H5Oget_info()
-
- (BMR, 2017/05/13, HDFFV-10004, HDFFV-10156)
-
- - New class LinkAccPropList is added for link access property list
-
- (BMR, 2017/05/13, HDFFV-10156)
-
- High-Level APIs
- ---------------
- - H5DOread_chunk
-
- Users wanted to read compressed data directly from a file without any
- processing by the HDF5 data transfer pipeline, just as they were able
- to write it directly to a file with H5DOwrite_chunk.
-
- New API function, corresponding to existing function H5DOwrite_chunk.
- H5DOread_chunk reads a raw data chunk directly from a chunked dataset
- in the file into the application buffer, bypassing the library’s internal
- data transfer pipeline, including filters.
-
- (VC - 2017/05/02, HDFFV-9934)
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
-
- - Added OpenMPI 2.0.1 compiled with GCC 4.9.3
-
-
-Bug Fixes since HDF5-1.8.18
-===========================
-
- Configuration
- -------------
- - Support for Fortran shared libraries on OS X with autotools now
- works. Cmake builds still disables Fortran shared libraries on OS X.
- (MSB - 2017/04/30, HDFFV-2772)
-
-
- Library
- -------
- - bitfield datatypes
-
- bitfield datatypes did not fully support endianness of the data.
-
- Improved the endianness of bitfield datatypes by adding missing functional
- code. This code used integer types as a template.
-
- (ADB - 2017/05/12, HDFFV-10186)
-
- - Newly created datasets with H5D_COMPACT layout failed to open after
- several H5Dopen/H5Dclose cycles.
-
- The layout "dirty" flag for a compact dataset is now properly reset
- before flushing the message.
-
- (VC - 2017/05/11, HDFFV-10051)
- - Missing #ifdef __cplusplus macros were added to the generated H5Epubgen.h file.
-
- (DER - 2017/04/25, HDFFV-9638)
-
-
- Tools
- -----
- - h5repack
-
- h5repack did not maintain the creation order flag of the root
- group.
-
- Improved h5repack by reading the creation order and applying the
- flag to the new root group. Also added arguments to set the
- order and index direction, which applies to the traversing of the
- original file, on the command line.
-
- (ADB - 2017/05/26, HDFFV-8611)
-
- - h5diff
-
- h5diff failed to account for strpad type and null terminators
- of char strings. Also, h5diff failed to account for string length
- differences and would give a different result depending on file
- order in the command line.
-
- Improved h5diff compare of strings and arrays by adding a check for
- string lengths and if the strpad was null filled.
-
- (ADB - 2017/05/18, HDFFV-9055, HDFFV-10128)
-
- - h5diff
-
- h5diff help text about epsilon comparison was confusing.
-
- Changed h5diff help text to indicate that the 'a' refers to the
- datapoint in file1 and 'b' refers to the datapoint value in file2.
-
- (ADB - 2017/05/16, HDFFV-9995)
-
- - h5diff
-
- h5diff did not report user-defined filter data differences correctly.
-
- Improved h5diff compare of user-defined filter data by reporting an
- error if the user-defined filter plugin cannot be found.
-
- (ADB - 2017/01/18, HDFFV-9994)
- C++ API
- -------
- - The class hierarchy is revised to better reflect the HDF5 model.
- Class H5File is now derived from class Group instead of H5Location.
- Class Attribute is now derived from H5Location instead of IdComponent.
- Wrappers of H5A APIs in H5Location are now duplicated in H5Object,
- the original wrappers in H5Location will be deprecated in future
- releases.
-
- (BMR - 2017/05/15, HDFFV-10156)
-
-
-
-Supported Platforms
-===================
-The following platforms are supported and have been tested for this release.
-They are built with the configure process unless specified otherwise.
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (platypus/mayll) Version 4.4.7 20120313
- Versions 4.9.3, 5.2.0, 6.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 16.10-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.0.098 Build 20160721
- MPICH 3.1.4 compiled with GCC 4.9.3
- OpenMPI 2.0.1 compiled with GCC 4.9.3
-
- Linux 2.6.32-573.18.1.el6 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-327.10.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Versions 4.9.3, 5.3.0, 6.2.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 17.0.4.196 Build 20170411
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
- Windows 7 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Visual Studio 2015 w/ Intel C, Fortran 2017 (cmake)
- Visual Studio 2015 w/ MSMPI 8 (cmake)
- Cygwin(CYGWIN_NT-6.1 2.8.0(0.309/5/3)
- gcc and gfortran compilers (GCC 5.4.0)
- (cmake and autotools)
-
- Windows 10 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Cygwin(CYGWIN_NT-6.1 2.8.0(0.309/5/3)
- gcc and gfortran compilers (GCC 5.4.0)
- (cmake and autotools)
-
- Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Mac OS X Mt. Lion 10.8.5 Apple LLVM version 5.1 (clang-503.0.40)
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (swallow/kite) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Mavericks 10.9.5 Apple LLVM version 6.0 (clang-600.0.57)
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (wren/quail) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Yosemite 10.10.5 Apple LLVM version 6.1 (clang-602.0.53)
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X El Capitan 10.11.4 Apple LLVM version 7.3.0 (clang-703.0.29)
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (VM osx1011dev/osx1011test) Intel icc/icpc/ifort version 16.0.2
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-SunOS 5.11 32-bit n y/y n y y y
-SunOS 5.11 64-bit n y/y n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y n y y y
-Windows 7 Cygwin n y/n n y y y
-Windows 7 x64 Cygwin n y/n n y y y
-Windows 10 y y/y n y y y
-Windows 10 x64 y y/y n y y y
-Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
-Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
-Mac OS X Yosemite 10.10.5 64-bit n y/y n y y y
-AIX 6.1 32- and 64-bit n y/n n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel n y/y n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI n y/y n y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y/y y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel n y/y n y y y
-Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-SunOS 5.11 32-bit y y y y
-SunOS 5.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 7 x64 Cygwin n n n y
-Windows 10 y y y y
-Windows 10 x64 y y y y
-Mac OS X Mountain Lion 10.8.5 64-bit y n y y
-Mac OS X Mavericks 10.9.5 64-bit y n y y
-Mac OS X Yosemite 10.10.5 64-bit y n y y
-AIX 6.1 32- and 64-bit y n n y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel y y y y
-Linux 2.6.32-431.11.2.el6.ppc64 y y y y
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.32-573.22.1.el6 g95 (GCC 4.0.3 (g95 0.94!)
- #1 SMP x86_64 GNU/Linux
- (mayll)
-
- Debian8.4.0 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1 x86_64 GNU/Linux
- gcc (Debian 4.9.2-10) 4.9.2
- GNU Fortran (Debian 4.9.2-10) 4.9.2
- (cmake and autotools)
-
- Fedora24 4.7.2-201.fc24.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 6.1.1 20160621 (Red Hat 6.1.1-3)
- GNU Fortran (GCC) 6.1.1 20160621 (Red Hat 6.1.1-3)
- (cmake and autotools)
-
- CentOS 7.2 3.10.0-327.28.2.el7.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4)
- GNU Fortran (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4)
- (cmake and autotools)
-
- Ubuntu 16.04 4.4.0-38-generic #62-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0
- GNU Fortran (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0
- (cmake and autotools)
-
-
-Known Problems
-==============
-
- The dynamically loaded plugin test libraries require undefined references
- to HDF5 functions to be resolved at runtime in order to function properly.
- With autotools on CYGWIN this results in build errors, and we have not
- found a solution that satisfies both. Therefore the dynamically loaded
- plugin tests have been disabled on CYGWIN.
-
- Known problems in previous releases can be found in the HISTORY*.txt files
- in the HDF5 source. Please report any new problems found to
- help@hdfgroup.org.
-
-
-%%%%1.8.18%%%%
-
-
-HDF5 version 1.8.18 released on 2016-11-14
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.17 and
-HDF5-1.8.18, and contains information on the platforms tested and
-known problems in HDF5-1.8.18.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.18 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- https://support.hdfgroup.org/HDF5/
-
-The HDF5 1.8.18 release can be obtained from:
-
- https://support.hdfgroup.org/HDF5/release/obtain518.html
-
-User documentation for 1.8.18 can be accessed directly at this location:
-
- https://support.hdfgroup.org/HDF5/doc1.8/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- https://support.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.18 (current
-release) versus Release 1.8.17
-
- https://support.hdfgroup.org/HDF5/doc1.8/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.17
-- Supported Platforms
-- Supported Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
-
- - CMake: Added NAMESPACE hdf5:: to package configuration files to allow
- projects using installed HDF5 binaries built with CMake to link with
- them without specifying the HDF5 library location via IMPORTED_LOCATION.
-
- (ADB, 2016/10/17, HDFFV-10003)
-
-
- - CMake: Changed the CTEST_BUILD_CONFIGURATION option to
- CTEST_CONFIGURATION_TYPE as recommended by the CMake documentation.
-
- (ADB, 2016/10/17, HDFFV-9971)
-
- - CMake: Added support for GIT
-
- (ADB, 2016/07/12)
-
-
- Library
- -------
- - None
-
-
- Parallel Library
- ----------------
- - None
-
-
- Tools
- -----
- - None
-
-
- High-Level APIs
- ---------------
- - None
-
-
- Fortran API
- -----------
- - None
-
-
- C++ API
- -------
- - None
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
-
-
-
-Bug Fixes since HDF5-1.8.17
-===========================
-
- Configuration
- -------------
-
- - Fixed a problem preventing HDF5 to be built on 32-bit CYGWIN by
- condensing cygwin configuration files into a single file and
- removing outdated compiler settings.
-
- (ABD, 2016/07/12, HDFFV-9946)
-
-
- - CMake: Fixed a command length overflow error by converting custom
- commands inside CMakeTest.cmake files into regular dependencies and
- targets.
-
- (ABD, 2016/07/12, HDFFV-9939)
-
-
- - CMake: Fixed a timeout error that would occasionally occur when running
- the virtual file driver tests simultaneously due to test directory and file
- name collisions.
-
- (ABD, 2016/09/19, HDFFV-9431)
-
-
- Library
- -------
-
- - Fixed a memory leak that would occur when the library allocated memory
- for an external file prefix (H5Pset_efile_prefix) and failed to free it.
-
- (DER, 2016/04/29)
-
-
- - Fixed an error that would occur when calling H5Adelete on an attribute
- which is attached to an externally linked object in the target file and
- whose datatype is a committed datatype in the main file.
-
- (VC, 2016-07-04, HDFFV-9940)
-
-
- - Fixed a problem where a plugin compiled into a DLL in the default plugin
- directory could not be found by the HDF5 library at runtime on Windows
- when the HDF5_PLUGIN_PATH environment variable was not set.
-
- (ABD, 2016/08/01, HDFFV-9706)
-
-
- - Fixed an issue where H5Pset_alignment could result in misaligned blocks
- with some input combinations, causing an assertion failure in debug mode.
-
- (NAF, 2016/08/11, HDFFV-9948)
-
-
- - A number of issues were fixed when reading/writing from/to corrupted
- files to ensure that the library fails gracefully in these cases:
-
- * Writing to a corrupted file that has an object message which is
- incorrectly marked as shareable on disk results in a buffer overflow /
- invalid write instead of a clean error message.
-
- * Decoding data from a corrupted file with a dataset encoded with the
- H5Z_NBIT decoding can result in a code execution vulnerability under
- the context of the application using the HDF5 library.
-
- * When decoding an array datatype from a corrupted file, the HDF5 library
- fails to return an error in production if the number of dimensions
- decoded is greater than the maximum rank.
-
- * When decoding an "old style" array datatype from a corrupted file, the
- HDF5 library fails to return an error in production if the number of
- dimensions decoded is greater than the maximum rank.
-
- (NAF, 2016/10/06, HDFFV-9950, HDFFV-9951, HDFFV-9992, HDFFV-9993)
-
-
- - Fixed an error that would occur when copying an object with an attribute
- which is a compound datatype consisting of a variable length string.
-
- (VC, 2016-10-17, HDFFV-7991)
-
-
- Parallel Library
- ----------------
-
- - Fixed a bug that could occur when allocating a chunked dataset in parallel
- with an alignment set and an alignment threshold greater than the chunk
- size but less than or equal to the raw data aggregator size.
-
- (NAF, 2016/08/11, HDFFV-9969)
-
-
- Performance
- -------------
- - None
-
-
- Tools
- -----
-
- - Fixed an error in the compiler wrapper scripts (h5cc, h5fc, et al.)
- in which they would erroneously drop the file argument specified via
- the -o flag when the -o flag was specified before the -c flag on the
- command line, resulting in a failure to compile.
-
- (LRK, 2016/06/08, HDFFV-9938, HDFFV-9530)
-
-
- - h5repack User Defined (UD) filter parameters were not parsed correctly.
-
- The UD filter parameters were not being parsed correctly. Reworked coding
- section to parse the correct values and verify number of parameters.
-
- (ADB, 2016/10/19, HDFFV-9996, HDFFV-9974, HDFFV-9515, HDFFV-9039)
-
-
- Fortran API
- -----------
-
- - Fortran library fails to compile and fails tests with NAG compiler.
-
- * Removed the non-standard assumption that KIND=SIZEOF, in the HDF5
- configure programs.
- * Removed Fortran 66 character/integer conversions from tests.
- * Removed the use of C_SIZEOF in the test programs
- * Changed to using STORAGE_SIZE in the test programs if available. Otherwise,
- uses C_SIZEOF or SIZEOF.
-
- (MSB, 2016/9/22, HDFFV-9973)
-
-
- - Fortran segfaults for F03 tests with NAG compiler
-
- * Removed INTENT(OUT) from 'fillvalue' in F2003 interface
- for H5Pget_fill_value_f.
-
- (MSB, 2016/9/22, HDFFV-9980)
-
-
- C++ API
- -------
-
- - The macro H5_NO_NAMESPACE is deprecated from the HDF5 C++ API library.
- In future releases, the macros H5_NO_STD and OLD_HEADER_FILENAME may
- also be removed.
-
- (BMR, 2016/10/27, HDFFV-9532)
-
-
- High-Level APIs:
- ---------------
-
- - The high-level API Packet Table (PT) did not write data correctly when
- the datatype is a compound type that has string type as one of the
- members. This problem started in 1.8.15, after the fix of HDFFV-9042
- was applied, which caused the Packet Table to use native type to access
- the data. It should be up to the application to specify whether the
- buffer to be read into memory in the machine’s native architecture.
- Thus, the PT is fixed to not use native type but to make a copy of the
- user's provided datatype during creation or the packet table's datatype
- during opening. If an application wishes to use native type to read the
- data, then the application will request that. However, the Packet Table
- doesn't provide a way to specify memory datatype in this release. This
- feature will be available in future releases, HDFFV-10023.
-
- (BMR, 2016/10/27, HDFFV-9758)
-
-
- Fortran High-Level APIs:
- ------------------------
- - None
-
-
- Testing
- -------
- - None
-
-
-Supported Platforms
-===================
-The following platforms are supported and have been tested for this release.
-They are built with the configure process unless specified otherwise.
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (platypus/mayll) Version 4.4.7 20120313
- Versions 4.8.4, 4.9.3, 5.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 15.7-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 15.0.3.187 Build 20150407
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- Linux 2.6.32-573.18.1.el6 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-327.10.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Versions 4.9.3, 5.2.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 15.0.3.187 Build 20150407
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Cygwin(CYGWIN_NT-6.1 2.2.1(0.289/5/3) gcc(4.9.3) compiler and gfortran)
- (cmake and autotools)
-
- Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 10 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 10 x64 Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Mac OS X Mt. Lion 10.8.5 Apple LLVM version 5.1 (clang-503.0.40)
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (swallow/kite) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Mavericks 10.9.5 Apple LLVM version 6.0 (clang-600.0.57)
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (wren/quail) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Yosemite 10.10.5 Apple LLVM version 6.1 (clang-602.0.53)
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X El Capitan 10.11.4 Apple LLVM version 7.3.0 (clang-703.0.29)
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (VM osx1011dev/osx1011test) Intel icc/icpc/ifort version 16.0.2
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-SunOS 5.11 32-bit n y/y n y y y
-SunOS 5.11 64-bit n y/y n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y n y y y
-Windows 7 Cygwin n y/y n y y n
-Windows 10 n y/y n y y y
-Windows 10 x64 n y/y n y y y
-Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
-Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
-Mac OS X Yosemite 10.10.5 64-bit n y/y n y y y
-AIX 6.1 32- and 64-bit n y/n n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel n y/y n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI n y/y n y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y/y y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel n y/y n y y y
-Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-SunOS 5.11 32-bit y y y y
-SunOS 5.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 10 y y y y
-Windows 10 x64 y y y y
-Mac OS X Mountain Lion 10.8.5 64-bit y n y y
-Mac OS X Mavericks 10.9.5 64-bit y n y y
-Mac OS X Yosemite 10.10.5 64-bit y n y y
-AIX 6.1 32- and 64-bit y n n y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel y y y y
-Linux 2.6.32-431.11.2.el6.ppc64 y y y y
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.32-573.22.1.el6 g95 (GCC 4.0.3 (g95 0.94!)
- #1 SMP x86_64 GNU/Linux
- (platypus)
-
- Debian8.4.0 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1 x86_64 GNU/Linux
- gcc (Debian 4.9.2-10) 4.9.2
- GNU Fortran (Debian 4.9.2-10) 4.9.2
- (cmake and autotools)
-
- Fedora24 4.7.2-201.fc24.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 6.1.1 20160621 (Red Hat 6.1.1-3)
- GNU Fortran (GCC) 6.1.1 20160621 (Red Hat 6.1.1-3)
- (cmake and autotools)
-
- CentOS 7.2 3.10.0-327.28.2.el7.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4)
- GNU Fortran (GCC) 4.8.5 20150623 (Red Hat 4.8.5-4)
- (cmake and autotools)
-
- Ubuntu 16.04 4.4.0-38-generic #62-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0
- GNU Fortran (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0
- (cmake and autotools)
-
-
-Known Problems
-==============
-* On windows platforms in debug configurations, the VFD flush1 tests will fail
- with the split and multi VFD drivers. These tests will display a modal debug
- dialog which must be answered or wait for the test timeout to expire.
- (ADB - 2014/06/23 - HDFFV-8851)
-
-* CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
- catches some undefined behavior in the alignment algorithm of the macro DETECT_I
- in H5detect.c (Issue 8147). Since the algorithm is trying to detect the alignment
- of integers, ideally the flag -fcatch-undefined-behavior shouldn't to be used for
- H5detect.c. In the future, we can separate flags for H5detect.c from the rest of
- the library. (SLU - 2013/10/16)
-
-* Make provided by Solaris fails in "make check". Solaris users should use
- gmake to build and install the HDF5 software. (AKC - 2013/10/08 - HDFFV-8534)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
- native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
- ports (and probably gcc releases after that).
- (QAK - 2012/10/19)
-
-* The following h5dump test case fails in BG/P machines (and potentially other
- machines that use a command script to launch executables):
-
- h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
- tno-subset.h5
-
- This is due to the embedded spaces in the dataset name being interpreted
- by the command script launcher as meta-characters, thus passing three
- arguments to h5dump's -d flag. The command passes if run by hand, just
- not via the test script.
- (AKC - 2012/05/03)
-
-* The STDIO VFD does not work on some architectures, possibly due to 32/64
- bit or large file issues. The basic STDIO VFD test is known to fail on
- 64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
- 10.7.0. The STDIO VFD test has been disabled while we investigate and
- a fix should appear in a future release.
- (DER - 2011/10/14 - HDFFV-8235)
-
-* h5diff can report inconsistent results when comparing datasets of enum type
- that contain invalid values. This is due to how enum types are handled in
- the library and will be addressed in a future release.
- (DER - 2011/10/14 - HDFFV-7527)
-
-* The links test can fail under the stdio VFD due to some issues with external
- links. This will be investigated and fixed in a future release.
- (DER - 2011/10/14 - HDFFV-7768)
-
-* After the shared library support was fixed for some bugs, it was discovered
- that "make prefix=XXX install" no longer works for shared libraries. It
- still works correctly for static libraries. Therefore, if you want to
- install the HDF5 shared libraries in a location such as /usr/local/hdf5,
- you need to specify the location via the --prefix option during configure
- time. E.g, ./configure --prefix=/usr/local/hdf5 ...
- (AKC - 2011/05/07 - HDFFV-7583)
-
-* The parallel test, t_shapesame, in testpar/, may run for a long time and may
- be terminated by the alarm signal. If that happens, one can increase the
- alarm seconds (default is 1200 seconds = 20 minutes) by setting the
- environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
- (60 minutes). Note that the t_shapesame test may fail in some systems
- (see the "While working on the 1.8.6 release..." problem below). If
- it does, it will waste more time if $HDF5_ALARM_SECONDS is set
- to a larger value.
- (AKC - 2011/05/07)
-
-* Shared Fortran libraries are not quite working on AIX. While they are
- generated when --enable-shared is specified, the fortran and hl/fortran
- tests fail. the issue. HL and C++ shared libraries should now be
- working as intended, however.
- (MAM - 2011/04/20)
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or file systems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
- (NAF - 2011/01/19)
-
-* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added in. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug in 1.8 library. Because there's only one user
- complaining about it, we (Elena, Quincey, and I) decided to leave it as
- it is (see bug report #1279). Quincey will make a plan for 1.10.
- (SLU - 2010/02/02)
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
- (MAM - 2009/11/04)
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- (SLU - 2005/06/30)
-
-
-%%%%1.8.17%%%%
-
-
-HDF5 version 1.8.17 released on 2016-05-10
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.16 and
-HDF5-1.8.17-*, and contains information on the platforms tested and
-known problems in HDF5-1.8.17-*.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.17 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.17 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.17 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.17 (current
-release) versus Release 1.8.16
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.16
-- Supported Platforms
-- Supported Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-
-New Features
-============
-
- Configuration
- -------------
- - Cmakehdf5: Added Ability to Run Multiple Make Commands
-
- Added option --njobs to specify up to how many jobs to launch during
- build (cmake) and testing (ctest).
-
- (AKC - 2015/12/13, HDFFV-9612)
-
- - Cmakehdf5: Added Szip Support and Verbose Option
-
- Added --with-szlib to support the Szip library; and
- --enable/disable-verbose to display all CMake process output.
-
- (AKC - 2015/11/16, HDFFV-8932 and DAILYTEST-195)
-
- - CMake minimum is now 3.1.0. (ADB - 2015/11/14)
-
- - Large File System (LFS) Support has Changed in the Autotools
-
- We assume that fseeko and ftello exist.
-
- The *64 I/O functions and types are no longer explicitly used.
- We now rely on a mapping provided by _FILE_OFFSET_BITS (or its
- equivalent).
-
- _LARGEFILE(64)_SOURCE is no longer exposed via AM_CPPFLAGS.
-
- (DER - 2016/03/29, HDFFV-9626 and HDFFV-9541)
-
-
-
- Library
- -------
- - New API Calls for Searching for External Dataset Storage
-
- API calls that determine the search path for dataset external
- storage were added. H5Pset/get_efile_prefix() API calls were added
- to the library. These functions give control over the search path
- for dataset external storage that has been configured with
- H5Pset_external().
-
- Additionally, the HDF5_EXTFILE_PREFIX environment variable can be
- used to control the search path.
-
- (DER - 2016/04/20, HDFFV-8740)
-
-
-
- Parallel Library
- ----------------
- - None
-
-
-
- Tools
- -----
- - None
-
-
-
- High-Level APIs
- ---------------
-
- C Packet Table API
- ------------------
- - Replacement of a Public Function with H5PTcreate
-
- The existing function H5PTcreate_fl limits applications so they
- can use the deflate compression only. The public function
- H5PTcreate has been added to replace H5PTcreate_fl. H5PTcreate
- takes a property list identifier to provide flexibility on
- creation properties. This also removes the following warning:
- "deprecated conversion from string constant to "char*"
- [-Wwrite-strings]".
-
- (BMR - 2016/04/25, HDFFV-9708, HDFFV-8615)
-
- - New Public Functions: H5PTget_dataset and H5PTget_type
-
- Two accessor functions have been added. H5PTget_dataset returns
- the identifier of the dataset associated with the packet table,
- and H5PTget_type returns the identifier of the datatype used by
- the packet table.
-
- (BMR - 2016/04/25, HDFFV-8623 patch 3)
-
- - Regarding #ifdef VLPT_REMOVED
-
- The #ifdef VLPT_REMOVED blocks have been removed from the packet
- table (PT) library source except for the following functions:
- + H5PTis_varlen() has been made available again
- + H5PTfree_vlen_readbuff() is now H5PTfree_vlen_buff()
-
- (BMR - 2016/04/25, HDFFV-442)
-
- C++ Packet Table API
- --------------------
- - New Constructor in FL_PacketTable
-
- An overloaded constructor has been added to FL_PacketTable and
- takes a property list identifier to provide flexibility on
- creation properties such as compression.
-
- FL_PacketTable(hid_t fileID, const char* name, hid_t dtypeID,
- hsize_t chunkSize = 0, hid_t plistID = H5P_DEFAULT)
-
- (BMR - 2016/04/25, HDFFV-8623 patch 5)
-
- - New Member Functions in PacketTable
-
- Two accessor wrappers were added to class PacketTable.
-
- PacketTable::GetDataset() returns the identifier of the dataset
- associated with the packet table, and PacketTable::GetDatatype()
- returns the identifier of the datatype that the packet table uses.
-
- (BMR - 2016/04/25, HDFFV-8623 patch 4)
-
- - New Member Functions with "char*" as an Argument
-
- Overloaded functions were added to provide the "const char*"
- argument; the existing version will be deprecated in future
- releases. This also removes the following warning:
- "deprecated conversion from string constant to "char*"
- [-Wwrite-strings]".
-
- (BMR - 2016/04/25, HDFFV-8623 patch 1, HDFFV-8615)
-
- - Regarding #ifdef VLPT_REMOVED
-
- The #ifdef VLPT_REMOVED blocks have been removed from the packet
- table library source code except for the following functions:
- + VL_PacketTable::IsVariableLength() was moved to PacketTable
- + VL_PacketTable::FreeReadBuff() is now PacketTable::FreeBuff()
-
- (BMR - 2016/04/25, HDFFV-442)
-
-
-
- Fortran API
- -----------
- - None
-
-
-
- C++ API
- -------
- - New Member Function in DSetCreatPropList
-
- DSetCreatPropList::setNbit() was added to setup N-bit compression for
- a dataset.
-
- (BMR - 2016/04/25, HDFFV-8623 patch 7)
-
- - New Overloaded "const" Member Functions in ArrayType
-
- The two following functions were added:
- ArrayType::getArrayNDims() const
- ArrayType::getArrayDims() const
- to provide const version, and the non-const version was marked
- deprecated. In-memory array information, ArrayType::rank and
- ArrayType::dimensions, were removed. This is an implementation
- detail and should not affect applications.
-
- (BMR, 2016/04/25, HDFFV-9725)
-
- - New member function added
-
- The assignment operator ArrayType::operator= is added because ArrayType
- has pointer data members.
-
- (BMR, 2016/03/07, HDFFV-9562)
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - Mac OS X El Capitan 10.11.4 with compilers Apple clang/clang++
- version 7.3.0 from Xcode 7.3, gfortran GNU Fortran (GCC) 5.2.0
- and Intel icc/icpc/ifort version 16.0.2
-
-
-
-Bug Fixes since HDF5-1.8.16
-===========================
-
- Configuration
- -------------
- - Updated Linux Language Level Flags to Match the Autotools. Removed
- Linux-specific Flags from OS X.
-
- An addition to the flags simply being out of sync with the Autotools,
- the Linux flags were used on OS X builds which led to symbols not being
- found. Although this was non-fatal and compilation continued (implicit
- definitions were used by the compiler and the symbols resolved at link
- time), a large number of warnings were raised.
-
- Linux changes:
-
- * CHANGED: _POSIX_C_SOURCE (from 199605 to 200112L)
- * ADDED: _GNU_SOURCE
- * REMOVED: _BSD_SOURCE
- * REMOVED: _DEFAULT_SOURCE
-
- (DER - 2015/12/08, HDFFV-9627)
-
- - The --enable-clear-file-buffers configure Option was Non-functional
- so the Feature was Always Enabled (its default value).
-
- Regardless of the configure flag, the setting was always enabled when
- the Autotools were used to configure HDF5. This was due to the "no"
- option being processed after the "*" option in configure.ac so "*"
- matched first. CMake was unaffected.
-
- The option now works correctly.
-
- NOTE that builders are always advised to leave this option enabled.
- When disabled, buffers that are written to disk may contain the
- memory's previous contents, which may include secure information.
- The performance overhead of the feature (a single memset call per
- allocation) is minimal.
-
- (DER - 2016/02/03, HDFFV-9676)
-
- - Added a patch to remove '"'s from arguments for MPI compilers that
- were causing errors compiling H5lib_settings.c with SGI MPT.
-
- (LRK - 2016/04/20, HDFFV-9439)
-
- Library
- -------
- - Fixed shared file pointer problem which caused a crash when running a
- program provided by a user.
-
- (VC - 2016/04/01, HDFFV-9469)
-
- - Fixed some format string warnings that prevent compiling with
- -Werror=format-security on gcc.
-
- These only appeared in error messages and would not cause problems
- under normal operation.
-
- (DER - 2016/01/13, HDFFV-9640)
-
- - Fixed a library segmentation fault when accessing a corrupted
- file provided by a user.
-
- (MSC - 2016/02/19, HDFFV-9670)
-
-
-
- Parallel Library
- ----------------
- - None
-
-
-
- Performance
- -------------
- - None
-
-
-
- Tools
- -----
- - h5dump: Sub-setting Fixed for Dimensions Greater than Two
-
- When a dataset has more than two dimensions, sub-setting would
- incorrectly calculate the data that needed to be displayed.
- Added in block and stride calculations that account for dimensions
- greater than two. NOTE: lines that have line breaks inserted
- because of display length calculations may have index info that
- is incorrect until the next dimension break.
-
- (ADB - 2016/03/07, HDFFV-9698)
-
- - h5dump: Issue with Argument Segmentation Fault
-
- When an argument with an optional value was at the end of the command
- line with a value, h5dump would crash. Reworked check for remaining
- arguments.
-
- (ADB - 2016/03/07, HDFFV-9570, HDFFV-9684)
-
- - h5dump: Issue with Default Fill Value
-
- Added all default cases of fill value to the display of fill value.
-
- (ADB -, 2016/03/07, HDFFV-9241)
-
- - h5dump: Clarified Help
-
- Clarified usage of -O F option in h5dump utility help.
-
- (ADB - 2016/03/07, HDFFV-9066)
-
- - h5dump: Issue with Double Free Fault
-
- Added a check for filename not null before calling free().
-
- (ADB - 2016/01/27, HDFFV-9639)
-
- - VS2015 Release Changed how Timezone was Handled
-
- Created a function, HDget_timezone, in H5system.c. Replaced
- timezone variable usage with function call.
-
- (ADB - 2015/11/02, HDFFV-9550)
-
-
-
- Fortran API
- -----------
- - None
-
-
-
- C++ API
- -------
- - Removal of Obsolete Methods
-
- The overloaded methods which had parameters that should be const
- but were not have been removed.
-
- (BMR - 2016/01/13, HDFFV-9789)
-
-
-
- High-Level APIs:
- ---------------
- - Fixed Memory Leak in Packet Table API
-
- Applied user's patch to fix memory leak in the creation of a
- packet table.
-
- (BMR - 2016/04/25, HDFFV-9700)
-
-
-
- Fortran High-Level APIs:
- ------------------------
- - None
-
-
-
- Testing
- -------
- - None
-
-
-
-Supported Platforms
-===================
-The following platforms are supported and have been tested for this release.
-They are built with the configure process unless specified otherwise.
-
- AIX 6.1 xlc/xlc_r 10.1.0.5
- (NASA G-ADA) xlC/xlC_r 10.1.0.5
- xlf90/xlf90_r 12.1.0.6
-
- Linux 2.6.32-573.22.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (platypus) Version 4.4.7 20120313
- Version 4.9.3, Version 5.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 15.7-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 15.0.3.187 Build 20150407
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- Linux 2.6.32-504.8.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-229.14.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan) Version 4.8.5 20150623 (Red Hat 4.8.5-4)
- Version 5.2.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 15.0.3.187 Build 20150407
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 (cmake)
- Cygwin(CYGWIN_NT-6.1 2.2.1(0.289/5/3) gcc(4.9.3) compiler and gfortran)
- (cmake and autotools)
-
- Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 (cmake)
-
- Windows 8.1 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Mac OS X Mt. Lion 10.8.5 Apple clang/clang++ version 5.1 from Xcode 5.1
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (swallow/kite) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Mavericks 10.9.5 Apple clang/clang++ version 6.0 from Xcode 6.2
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (wren/quail) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Yosemite 10.10.5 Apple clang/clang++ version 6.1 from Xcode 7.0
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X El Capitan 10.11.4 Apple clang/clang++ version 7.3.0 from Xcode 7.3
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (osx1011dev/ox1011test) Intel icc/icpc/ifort version 16.0.2
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-SunOS 5.11 32-bit n y/y n y y y
-SunOS 5.11 64-bit n y/y n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y n y y y
-Windows 7 Cygwin n y/y n y y n
-Windows 8.1 n y/y n y y y
-Windows 8.1 x64 n y/y n y y y
-Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
-Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
-Mac OS X Yosemeti 10.10.5 64-bit n y/y n y y y
-AIX 6.1 32- and 64-bit n y/n n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel n y/y n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI n y/y n y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y/y y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel n y/y n y y y
-Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-SunOS 5.11 32-bit y y y y
-SunOS 5.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 8.1 y y y y
-Windows 8.1 x64 y y y y
-Mac OS X Mountain Lion 10.8.5 64-bit y n y y
-Mac OS X Mavericks 10.9.5 64-bit y n y y
-Mac OS X Yosemeti 10.10.5 64-bit y n y y
-AIX 6.1 32- and 64-bit y n n y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel y y y y
-Linux 2.6.32-431.11.2.el6.ppc64 y y y y
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.18-431.11.2.el6 g95 (GCC 4.0.3 (g95 0.94!)
- #1 SMP x86_64 GNU/Linux
- (platypus)
-
- Windows 7 Visual Studio 2008 (cmake)
-
- Windows 7 x64 Visual Studio 2008 (cmake)
-
- Windows 10 Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Windows 10 x64 Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Debian7.5.0 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
- gcc (Debian 4.7.2-5) 4.7.2
- GNU Fortran (Debian 4.7.2-5) 4.7.2
- (cmake and autotools)
-
- Fedora20 3.15.3-200.fc20.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
- GNU Fortran (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
- (cmake and autotools)
-
- SUSE 13.1 3.11.10-17-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.8.1
- GNU Fortran (SUSE Linux) 4.8.1
- (cmake and autotools)
-
- Ubuntu 14.04 3.13.0-35-generic #62-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
- GNU Fortran (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
- (cmake and autotools)
-
- hopper.nersc.gov PrgEnv-gnu/5.2.40
- gcc (GCC) 4.9.2 20141030 (Cray Inc.)
- GNU Fortran (GCC) 4.9.2 20141030 (Cray Inc.)
- g++ (GCC) 4.9.2 20141030 (Cray Inc.)
-
-
-Known Problems
-==============
-* On windows platforms in debug configurations, the VFD flush1 tests will fail
- with the split and multi VFD drivers. These tests will display a modal debug
- dialog which must be answered or wait for the test timeout to expire.
- (ADB - 2014/06/23 - HDFFV-8851)
-
-* CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
- catches some undefined behavior in the alignment algorithm of the macro DETECT_I
- in H5detect.c (Issue 8147). Since the algorithm is trying to detect the alignment
- of integers, ideally the flag -fcatch-undefined-behavior shouldn't to be used for
- H5detect.c. In the future, we can separate flags for H5detect.c from the rest of
- the library. (SLU - 2013/10/16)
-
-* Make provided by Solaris fails in "make check". Solaris users should use
- gmake to build and install the HDF5 software. (AKC - 2013/10/08 - HDFFV-8534)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
- native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
- ports (and probably gcc releases after that).
- (QAK - 2012/10/19)
-
-* The following h5dump test case fails in BG/P machines (and potentially other
- machines that use a command script to launch executables):
-
- h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
- tno-subset.h5
-
- This is due to the embedded spaces in the dataset name being interpreted
- by the command script launcher as meta-characters, thus passing three
- arguments to h5dump's -d flag. The command passes if run by hand, just
- not via the test script.
- (AKC - 2012/05/03)
-
-* The STDIO VFD does not work on some architectures, possibly due to 32/64
- bit or large file issues. The basic STDIO VFD test is known to fail on
- 64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
- 10.7.0. The STDIO VFD test has been disabled while we investigate and
- a fix should appear in a future release.
- (DER - 2011/10/14 - HDFFV-8235)
-
-* h5diff can report inconsistent results when comparing datasets of enum type
- that contain invalid values. This is due to how enum types are handled in
- the library and will be addressed in a future release.
- (DER - 2011/10/14 - HDFFV-7527)
-
-* The links test can fail under the stdio VFD due to some issues with external
- links. This will be investigated and fixed in a future release.
- (DER - 2011/10/14 - HDFFV-7768)
-
-* After the shared library support was fixed for some bugs, it was discovered
- that "make prefix=XXX install" no longer works for shared libraries. It
- still works correctly for static libraries. Therefore, if you want to
- install the HDF5 shared libraries in a location such as /usr/local/hdf5,
- you need to specify the location via the --prefix option during configure
- time. E.g, ./configure --prefix=/usr/local/hdf5 ...
- (AKC - 2011/05/07 - HDFFV-7583)
-
-* The parallel test, t_shapesame, in testpar/, may run for a long time and may
- be terminated by the alarm signal. If that happens, one can increase the
- alarm seconds (default is 1200 seconds = 20 minutes) by setting the
- environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
- (60 minutes). Note that the t_shapesame test may fail in some systems
- (see the "While working on the 1.8.6 release..." problem below). If
- it does, it will waste more time if $HDF5_ALARM_SECONDS is set
- to a larger value.
- (AKC - 2011/05/07)
-
-* Shared Fortran libraries are not quite working on AIX. While they are
- generated when --enable-shared is specified, the fortran and hl/fortran
- tests fail. the issue. HL and C++ shared libraries should now be
- working as intended, however.
- (MAM - 2011/04/20)
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or file systems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
- (NAF - 2011/01/19)
-
-* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added in. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug in 1.8 library. Because there's only one user
- complaining about it, we (Elena, Quincey, and I) decided to leave it as
- it is (see bug report #1279). Quincey will make a plan for 1.10.
- (SLU - 2010/02/02)
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
- (MAM - 2009/11/04)
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- (SLU - 2005/06/30)
-
-
-%%%%1.8.16%%%%
-
-
-HDF5 version 1.8.16 released on 2015-11-10
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.15 and
-HDF5-1.8.16, and contains information on the platforms tested and
-known problems in HDF5-1.8.16.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.16 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.16 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.16 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.16 (current
-release) versus Release 1.8.15":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.15
-- Supported Platforms
-- Supported Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-New Features
-============
-
- Configuration and Build
- -------------
- - The thread-safety + high-level library combination has been marked
- as "unsupported" in the Autotools
-
- The global lock used by the thread-safety feature has never been
- raised to the high-level library level, making it possible that
- the library state could change if a context switch were to occur in
- a high-level library call. Because of this, the combination of
- thread-safety and high-level library is officially unsupported by
- The HDF Group.
-
- In the past, although this combination has never been supported, this
- was not enforced by the build systems. These changes will cause an
- Autotools configure step to fail if --enable-threadsafe and
- --enable-hl are combined unless additional options are specified.
- Since the high-level library is built by default, this means that
- these extra configuration options will need to be used any time
- --enable-threadsafe is selected.
-
- To build with --enable-threadsafe, either:
-
- 1) Use --disable-hl to disable the high-level library (recommended)
-
- 2) Use --enable-unsupported to build the high-level library with
- the thread-safety feature.
-
- (DER - 2015/09/10 HDFFV-8719)
-
- - Using CMake now builds both static and shared libraries.
-
- The CMake files have been updated to build both static and shared
- libraries, with tools only built statically. The packaging of the
- libraries and tools will include cmake-config files that allows
- projects to choose either shared or static (default) libraries
- to be found with the find_package command using the COMPONENTS
- keyword and a list of components. The imported libraries will
- include any interface specific settings and dependent libraries.
-
- The default setting for BUILD_SHARED_LIBS has changed from OFF
- to ON, which builds both static and shared libraries. The static
- libraries are always built because of tools requirements.
-
- (ADB - 2015/08/24 HDFFV-5881)
-
- - Inline functions now correctly annotated with Autotools builds.
-
- The method used to detect the appropriate inline markup scheme was
- nonfunctional in Autotools builds. The Autotools have been modified
- to correctly detect the compiler's inline markup symbol and apply it
- to the source. Note that only a very small number of internal
- functions are marked inline so this was not a very big change or
- likely to significantly affect performance.
-
- As a part of this change, the H5_inline symbol no longer appears in
- H5pubconf.h.
-
- (DER - 2015/08/13 HDFFV-9119, HDFFV-9421)
-
- - Removed obsolete/unmaintained files from config/
-
- Several files were removed from the config directory. These files
- represent old operating systems, were no longer necessary, and/or
- were no longer maintained. configure.ac was updated to reflect the
- removed files.
-
- Removed:
-
- craynv
- dec-flags
- hpux11.23
- ia64-linux-gnu
- nec-superux14.1
- sv1-cray
- x86_64-redstorm-linux-gnu
- powerpc-ibm-aix5.x
-
- As a part of this work, a few lines that deal with locating the
- sys/fpu.h header on SGI machines and some OSF/1 configure lines
- were also removed. The Solaris config was also renamed to not have
- a version number since the version number was ignored by configure
- as it applies to all Solaris versions.
-
- (DER - 2015/09/04 HDFFV-9116)
-
- - Removed the FP_TO_INTEGER_OVERFLOW_WORKS macro/defines from the library
-
- This was for working around bugs in the Cray X1 compiler, which is no
- longer supported.
-
- (DER - 2015/09/09 HDFFV-9191)
-
- - Removed the H5_SW_ULONG_TO_FP_BOTTOM_BIT_WORKS and
- H5_FP_TO_ULLONG_BOTTOM_BIT_WORKS symbols and associated code.
-
- H5_SW_ULONG_TO_FP_BOTTOM_BIT_WORKS was a work-around on old 64-bit
- SGI and Solaris systems.
-
- H5_FP_TO_ULLONG_BOTTOM_BIT_WORKS was a work-around for old PGI
- compilers on Linux.
-
- Neither of these were used in any current library code and only appeared
- in the dt_arith test.
-
- (DER - 2015/09/09 HDFFV-9187)
-
- - Removed CONVERT_DENORMAL_FLOAT symbol and associated code from the
- library.
-
- This was only set in configure files for Cray and NEC computers. These
- config files no longer exist so there is no effect on currently
- supported platforms.
-
- (DER - 2015/09/09 HDFFV-9188)
-
- - Removed _BSD_SOURCE and _DEFAULT_SOURCE from configure.ac
-
- These are old BSD-compatibility symbols that are no longer needed by
- the library.
-
- (DER - 2015/09/10 HDFFV-9079)
-
- - Removed HW_FP_TO_LLONG_NOT_WORKS symbol and associated code from the
- library.
-
- This was part of a work-around for the VS.NET 2003 compiler, which is
- no longer supported.
-
- (DER - 2015/09/10 HDFFV-9189)
-
- - Removed the BAD_LOG2_CODE_GENERATED symbol and associated code from the
- library.
-
- This was an IRIX work-around.
-
- (DER - 2015/09/11 HDFFV-9195)
-
- - Decoupled shared object version numbers for wrapper libraries from the
- shared object version number for the HDF5 library. These will be
- maintained on an individual basis according to the interface changes
- specific to these wrapper libraries.
-
- For HDF5 1.8.16 the shared object version numbers were changed from
- 10.0.1 to 10.1.0 for the HDF5 library due to added APIs. For the C++
- wrapper library they were changed from 10.0.1 to 11.0.0 due to changes
- in existing APIs. For all other wrapper libraries the versions were
- changed from 10.0.1 to 10.0.2 because while the APIs had no changes
- there have been changes in code that did not result in changes to their
- interfaces.
-
- (LRK - 2015/10/28)
-
- Library
- -------
-
- - H5F_ACC_DEBUG flag for H5Fopen/create: functionality removed
-
- The symbol was used to emit some extra debugging information
- for HDF Group developers in the multi VFD. The underlying
- functionality has been removed due to disuse. The symbol
- remains defined since it was visible in H5Fpublic.h but it
- has been set to zero and has no effect anywhere in the library.
-
- (DER - 2015-05-02, HDFFV-1074)
-
- - New public API call: H5is_library_threadsafe()
-
- This API call indicates if the library was built with thread-
- safety enabled.
-
- (DER - 2015-09-01, HDFFV-9496)
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - None
-
- High-Level APIs
- ---------------
- - None
-
- Fortran API
- -----------
- - None
-
-
- C++ API
- -------
- - Class H5::ObjCreatPropList is added for the object creation property
- list class.
-
- Class H5::ObjCreatPropList is derived from H5::PropList and is a
- baseclass of H5::DSetCreatPropList. Additional property list classes
- will be derived from H5::ObjCreatPropList when they are added to the
- library in future releases.
-
- (BMR, 2015/10/13, Part of HDFFV-9169)
-
- - New Wrappers for C Functions H5P[s/g]et_attr_phase_change and
- H5P[s/g]et_attr_creation_order.
-
- Wrappers were added to class H5::ObjCreatPropList for the C Functions
- H5Pset_attr_phase_change: H5::ObjCreatPropList::setAttrPhaseChange
- H5Pget_attr_phase_change: H5::ObjCreatPropList::getAttrPhaseChange
- H5Pset_attr_creation_order: H5::ObjCreatPropList::setAttrCrtOrder
- H5Pget_attr_creation_order: H5::ObjCreatPropList::getAttrCrtOrder
-
- (BMR, 2015/10/13, Part of HDFFV-9167 and HDFFV-9169)
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - Added VS2015 with Intel Fortran 16 to supported Windows 7 platforms
-
-
-Bug Fixes since HDF5-1.8.15
-===========================
-
- Configuration
- -------------
-
- - CMake test for long long printf format improved
-
- The CMake configuration test for determining the printf format string
- for printing a long long integer was fixed. The test would crash
- when executed with VS2015.
-
- (ADB - 2015-10-21 HDFFV-9488)
-
- Library
- -------
- - VS2015 removed global variable timezone
-
- The usage of the global variable timezone was modified for VS2015 by
- adding an alias to Windows builds.
-
- (ADB - 2015-10-23 HDFFV-9550)
-
- - Fix potential error in H5Iclear_type
-
- If the ID type's close callback could close another ID of the same type,
- H5Iclear_type could occasionally run into problems due to the inner
- workings of the skip list package. This could potentially cause an
- error on library shutdown without calling H5Iclear_type directly. This
- issue has been fixed.
-
- (NAF - 2015-08-12)
-
- - Fix uninitialized memory in dataspace selection code
-
- When creating a dataspace with H5Screate and setting the extent with
- H5Sextent_copy, the selection offset was not initialized, potentially
- causing invalid I/O. There may be other cases where this happened.
- Modified the library to always initialize the offset.
-
- (NAF - 2015-09-08)
-
- - Truncate file in H5Fflush() if EOA != EOF to avoid file
- corruption in certain scenarios
-
- In the following scenario, the resulting HDF5 file would be
- incorrectly corrupted because the truncate operation
- was at some point wrongly moved out of the flush operation:
- - Create a new file with a single dataset.
- - Write parts of the dataset (make sure that some values at
- the end of the dataset are not initialized).
- - Flush the file.
- - Crash the program.
- - Try to open the file with h5dump or h5debug, but the
- resulting file is corrupted.
-
- (MSC - 2015-06-15 HDFFV-9418)
-
-
- Parallel Library
- ----------------
- -
- (XYZ - YYYY/MM/DD HDFFV-####)
-
- Performance
- -------------
- - None
-
- Tools
- -----
- - VS2015 changed the default format for printing of exponents
-
- VS2015 default format for exponents changed with the elimination
- of the leading '0'. CMake now tests for the VS2015 compiler and
- adjusts which reference files are used by tests.
-
- (ADB - 2015-10-23 HDFFV-9550)
-
- - Fixed h5repack with user-defined filters
-
- h5repack would throw a buffer overrun exception on Windows when
- parsing a user-defined filter ID of 5 digits. A local variable in
- the parse routine was not of sufficient size.
-
- (ADB - 2015/09/01 HDFFV-9515)
-
- Fortran API
- ------------
- - None
-
-
- C++ API
- ------
- - Removed memory leaks
-
- The static global constant objects were changed to constant references
- referencing dynamically allocated objects. This ensures that the clean-up
- process in the C++ library occurs before the termination of the C library
- and prevents memory leaks because the previous global constants were not
- properly deleted before the C library termination.
-
- (BMR, 2015/10/13, HDFFV-9529)
-
- - Fixed the problem about identifiers being closed prematurely.
-
- The C++ library needs to increment the ID's reference counter when it is
- duplicated in the form of C++ objects, but not when the ID is obtained
- from a C function. With this approach, both problems, prematurely
- closing ID's and memory leaks due to ID's not being closed, should be
- eliminated.
-
- (BMR, 2015/10/15, HDFFV-7947)
-
-
- High-Level APIs:
- ------
- - None
-
-
- Fortran High-Level APIs:
- ------------------------
- - None
-
-
- Testing
- -------
- - None
-
-
-Supported Platforms
-===================
-The following platforms are supported and have been tested for this release.
-They are built with the configure process unless specified otherwise.
-
- AIX 6.1 xlc/xlc_r 10.1.0.5
- (NASA G-ADA) xlC/xlC_r 10.1.0.5
- xlf90/xlf90_r 12.1.0.6
-
- Linux 2.6.32-573.3.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (platypus) Version 4.4.7 20120313
- Version 4.8.4, Version 5.2.0
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 15.7-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 15.0.3.187 Build 20150407
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- Linux 2.6.32-504.8.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- Linux 3.10.0-229.14.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (kituo/moohan) Version 4.8.3 20140911 (Red Hat 4.8.3-9)
- Version 5.2.0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 15.0.3.187 Build 20150407
- MPICH 3.1.4 compiled with GCC 4.9.3
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
- Cygwin(CYGWIN_NT-6.1 2.2.1(0.289/5/3) gcc(4.9.3) compiler and gfortran)
- (cmake and autotools)
-
- Windows 7 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Visual Studio 2015 w/ Intel Fortran 16 (cmake)
-
- Windows 8.1 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Mac OS X Mt. Lion 10.8.5 Apple clang/clang++ version 5.1 from Xcode 5.1
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (swallow/kite) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Mavericks 10.9.5 Apple clang/clang++ version 6.0 from Xcode 6.2.0
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (wren/quail) Intel icc/icpc/ifort version 15.0.3
-
- Mac OS X Yosemite 10.10.5 Apple clang/clang++ version 6.0 from Xcode 7.0.0
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.3
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-SunOS 5.11 32-bit n y/y n y y y
-SunOS 5.11 64-bit n y/y n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y n y y y
-Windows 7 Cygwin n y/y n y y n
-Windows 8.1 n y/y n y y y
-Windows 8.1 x64 n y/y n y y y
-Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
-Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
-Mac OS X Yosemeti 10.10.5 64-bit n y/y n y y y
-AIX 6.1 32- and 64-bit n y/n n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel n y/y n y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI n y/y n y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y/y y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel n y/y n y y y
-Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-SunOS 5.11 32-bit y y y y
-SunOS 5.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 8.1 y y y y
-Windows 8.1 x64 y y y y
-Mac OS X Mountain Lion 10.8.5 64-bit y n y y
-Mac OS X Mavericks 10.9.5 64-bit y n y y
-Mac OS X Yosemeti 10.10.5 64-bit y n y y
-AIX 6.1 32- and 64-bit y n n y
-CentOS 6.7 Linux 2.6.32 x86_64 GNU y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 Intel y y y y
-CentOS 6.7 Linux 2.6.32 x86_64 PGI y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 GNU y y y y
-CentOS 7.1 Linux 3.10.0 x86_64 Intel y y y y
-Linux 2.6.32-431.11.2.el6.ppc64 y y y y
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.18-431.11.2.el6 g95 (GCC 4.0.3 (g95 0.94!)
- #1 SMP x86_64 GNU/Linux
- (platypus)
-
- Mac OS X El Capitan 10.11 Apple clang/clang++ version 7.0.0 from Xcode 7.0.1
- 64-bit gfortran GNU Fortran (GCC) 5.2.0
- (VM)
-
- Windows 7 Visual Studio 2008 (cmake)
-
- Windows 7 x64 Visual Studio 2008 (cmake)
-
- Windows 10 Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Windows 10 x64 Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Debian7.5.0 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
- gcc (Debian 4.7.2-5) 4.7.2
- GNU Fortran (Debian 4.7.2-5) 4.7.2
- (cmake and autotools)
-
- Fedora20 3.15.3-200.fc20.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
- GNU Fortran (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
- (cmake and autotools)
-
- SUSE 13.1 3.11.10-17-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.8.1
- GNU Fortran (SUSE Linux) 4.8.1
- (cmake and autotools)
-
- Ubuntu 14.04 3.13.0-35-generic #62-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
- GNU Fortran (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
- (cmake and autotools)
-
- hopper.nersc.gov PrgEnv-gnu/5.2.40
- gcc (GCC) 4.9.2 20141030 (Cray Inc.)
- GNU Fortran (GCC) 4.9.2 20141030 (Cray Inc.)
- g++ (GCC) 4.9.2 20141030 (Cray Inc.)
-
-
-Known Problems
-==============
-* On Windows platforms in debug configurations, the VFD flush1 tests will fail
- with the split and multi VFD drivers. These tests will display a modal debug
- dialog which must be answered or wait for the test timeout to expire.
- (ADB - 2014/06/23 - HDFFV-8851)
-
-* CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
- catches some undefined behavior in the alignment algorithm of the macro DETECT_I
- in H5detect.c (Issue 8147). Since the algorithm is trying to detect the alignment
- of integers, ideally the flag -fcatch-undefined-behavior shouldn't to be used for
- H5detect.c. In the future, we can separate flags for H5detect.c from the rest of
- the library. (SLU - 2013/10/16)
-
-* Make provided by Solaris fails in "make check". Solaris users should use
- gmake to build and install the HDF5 software. (AKC - 2013/10/08 - HDFFV-8534)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
- native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
- ports (and probably gcc releases after that).
- (QAK - 2012/10/19)
-
-* The following h5dump test case fails in BG/P machines (and potentially other
- machines that use a command script to launch executables):
-
- h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
- tno-subset.h5
-
- This is due to the embedded spaces in the dataset name being interpreted
- by the command script launcher as meta-characters, thus passing three
- arguments to h5dump's -d flag. The command passes if run by hand, just
- not via the test script.
- (AKC - 2012/05/03)
-
-* The STDIO VFD does not work on some architectures, possibly due to 32/64
- bit or large file issues. The basic STDIO VFD test is known to fail on
- 64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
- 10.7.0. The STDIO VFD test has been disabled while we investigate and
- a fix should appear in a future release.
- (DER - 2011/10/14 - HDFFV-8235)
-
-* h5diff can report inconsistent results when comparing datasets of enum type
- that contain invalid values. This is due to how enum types are handled in
- the library and will be addressed in a future release.
- (DER - 2011/10/14 - HDFFV-7527)
-
-* The links test can fail under the stdio VFD due to some issues with external
- links. This will be investigated and fixed in a future release.
- (DER - 2011/10/14 - HDFFV-7768)
-
-* After the shared library support was fixed for some bugs, it was discovered
- that "make prefix=XXX install" no longer works for shared libraries. It
- still works correctly for static libraries. Therefore, if you want to
- install the HDF5 shared libraries in a location such as /usr/local/hdf5,
- you need to specify the location via the --prefix option during configure
- time. E.g, ./configure --prefix=/usr/local/hdf5 ...
- (AKC - 2011/05/07 - HDFFV-7583)
-
-* The parallel test, t_shapesame, in testpar/, may run for a long time and may
- be terminated by the alarm signal. If that happens, one can increase the
- alarm seconds (default is 1200 seconds = 20 minutes) by setting the
- environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
- (60 minutes). Note that the t_shapesame test may fail in some systems
- (see the "While working on the 1.8.6 release..." problem below). If
- it does, it will waste more time if $HDF5_ALARM_SECONDS is set
- to a larger value.
- (AKC - 2011/05/07)
-
-* Shared Fortran libraries are not quite working on AIX. While they are
- generated when --enable-shared is specified, the Fortran and HL/Fortran
- tests fail. HL and C++ shared libraries should now be working as intended,
- however.
- (MAM - 2011/04/20)
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or file systems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
- (NAF - 2011/01/19)
-
-* All of the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added in. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug in 1.8 library. Because there's only one user
- complaining about it, we (Elena, Quincey, and I) decided to leave it as
- it is (see bug report #1279). Quincey will make a plan for 1.10.
- (SLU - 2010/02/02)
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
- (MAM - 2009/11/04)
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian systems. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- (SLU - 2005/06/30)
-
-
-%%%%1.8.15%%%%
-
-
-HDF5 version 1.8.15 released on 2015-05-04
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.14 and
-HDF5-1.8.15, and contains information on the platforms tested and
-known problems in HDF5-1.8.15.
-
-Links to the HDF5 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for HDF5 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document at this location:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.14
-- Supported Platforms
-- Supported Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - CMake
-
- Improvements made to the CMake build system.
-
- The default options were changed to align with the Autotools configure
- defaults. CMake configure files now support components when packaged
- with CPack. Windows CPack supports WiX packaging, and will look for
- WiX and NSIS in the standard locations.
-
- The CMake minimum has been changed to 3.1.
-
- (ADB - 2015/04/01 HDFFV-8074, 8968, 9006)
-
- - cmakehdf5 for Cmake building.
- Added configure options to support the building of Fortran or CXX API,
- to enable/disable testings. Use "cmakehdf5 --help" for details.
- (AKC - 2014/12/09 HDFFV-8932)
-
- - Building Shared and Parallel Made Explicit
-
- When --enable-parallel is specified, configure used to disable
- shared by default.
-
- Removed the restriction for building shared when parallel is
- enabled. --disable-shared has to be used explicitly if user
- wishes to disable shared libraries.
-
- (MSC - 2015/02/19 HDFFV-9069)
-
- - Inferring Parallel Compilers
-
- configure was trying to infer if a compiler is a parallel
- compiler with MPI support and enable parallel even if the user
- did not explicitly enable parallel. This should not happen.
-
- Disabled inferring parallel compilers to enable parallel HDF5
- build. --enable-parallel has to be used explicitly to build
- parallel HDF5 regardless of the compiler type being used.
-
- (MSC - 2015/02/19 HDFFV-9068)
-
- - Large File Support Configuration Option
-
- Removed the option to enable or disable large file support. It will
- always be enabled.
-
- (MSC - 2015/02/19 HDFFV-9097)
-
- - Removed Configuration Feature
-
- When configure detected that the CodeWarrior compiler was being used it
- would define a symbol that caused a test in test/tfile.c to be skipped
- due to a broken CodeWarrior open() command.
-
- Since this only masks the problem instead of fixing it and we don't
- support CodeWarrior anyway, this functionality was removed.
-
- (DER - 2015/02/21, HDFFV-9080)
-
- - VMS Build/Test Files Have Been Removed
-
- HDF5 no longer supports VMS, and the files were getting out of date.
- Since we have no access to a VMS machine, there is no way for us to
- maintain them.
-
- A Subversion tag was created at:
-
- https://svn.hdfgroup.uiuc.edu/tags/vms_last_support_1_8
-
- immediately before removing the files.
-
- (DER - 2015-02-26, HDFFV-9147)
-
- - Removal of --with-default-vfd configure Option
-
- In theory, this option was intended to allow setting a default
- VFD that would be used by the library. In practice, the feature
- only accepted the POSIX (SEC2) VFD (already the default) and
- the stdio VFD (a demo VFD not intended for production use). The
- inability to pass key VFD parameters at configure time limits the
- full implementation of this feature, so it was retired.
-
- (DER - 2015-02-26, HDFFV-9081)
-
- - Direct VFD configure Behavior
-
- The configure options for Linux now allow the Direct VFD to build
- without passing additional compiler options/defines like _GNU_SOURCE.
- Passing --enable-direct-vfd is now all that is needed to enable
- the feature.
-
- The Direct VFD is now disabled by default since it is intended for
- specialized audiences. It was previously enabled by default, but the
- configure script did not set correct POSIX levels, etc. making this
- a moot point.
-
- Note that the Direct VFD can only be configured on Linux when
- the O_DIRECT flag to open()/create() and posix_memalign() function
- are available. This is unchanged from previous behavior.
-
- (DER - 2015-02-26, HDFFV-9057, 7567, 9088, 7566)
-
- - _POSIX_C_SOURCE, _GNU_SOURCE, and _BSD_SOURCE No Longer Exported
- to h5cc and Other Compiler Wrappers
-
- The _POSIX_C_SOURCE, _GNU_SOURCE, and _BSD_SOURCE definitions are
- not required for using API functions and may conflict with user
- code requirements.
-
- (DER - 2015-03-08, HDFFV-9152)
-
- - Removed the --enable-filters Option from configure
-
- This option allowed the user to disable selected internal filters,
- presumably to make the library smaller. It has been removed since
- it saved little space (the internal filters are small with respect
- to the overall library size) and was not generally extendible to
- the library at large due to the large number of #ifdefs that would
- be required.
-
- Note that this features applied to internal filters such as shuffle
- and n-bit and not external filters like gzip or Szip. Those are still
- enabled or disabled via their own configure options.
-
- (DER - 2015-03-08, HDFFV-9086)
-
- - Removed Obsolete Time Functionality from configure and the C Library
-
- The library contained some residual functionality from obsolete
- time zone handling code. This has been removed, and the configure
- checks for the time functions have been cleaned up.
-
- * Lumped all the time functionality together in configure.ac.
- This was previously more spread out due to Solaris issues
- with the ordering of certain checks.
-
- * Removed processing that handles __tm_gmtoff members of struct
- tm. (libc-4)
-
- * Removed BSDgettimeofday(). (IRIX 5.3)
-
- * Removed timezone struct handling in gettimeofday() (considered
- harmful).
-
- Note that the HDF5 Library stores timestamps in a platform-independent
- manner, so old files can still be read. This only affects converting
- system time to HDF5 timestamps.
-
- The library currently uses the tm_gmtoff member of the tm struct
- (preferred, if available) or the timezone global variable to
- construct HDF5 timestamps.
-
- (DER - 2015-03-09, HDFFV-9083 and 9085)
-
- - Added -D_DEFAULT_SOURCE to CPPFLAGS on Linux Systems
-
- This is the replacement for -D_BSD_SOURCE in versions of glibc since 2.19.
- Since both are defined, it should work for all versions of glibc. Defining
- both suppresses the warning about defining _BSD_SOURCE.
-
- (NAF - 2015-04-02, HDFFV-9079)
-
- Library
- -------
- - Added Memory Allocation Functions that Use the Library's Allocator
-
- HDF5 filters may need to allocate or resize the buffer that is passed
- to them from the library. If the filter has been compiled separately
- from the library, it and the library may use different memory
- allocation libraries for the (re)allocation and free calls. This can
- cause heap corruption and crashes. This is particularly a problem on
- Windows since each C run-time library is implemented as a separate
- shared library, but can also show up on POSIX systems when debug or
- high-performance allocation libraries are in use.
-
- Two new functions (H5allocate_memory() and H5resize_memory()) were
- added to the HDF5 C library. These functions have the same semantics as
- malloc/calloc and realloc, respectively. Their primary purpose is to
- allow filter authors to allocate or resize memory using the same
- memory allocation library as the HDF5 library. Filter authors are
- highly encouraged to use these new functions in place of malloc,
- calloc, and realloc. They should also use the H5free_memory() call when
- freeing memory.
-
- Note that the filters provided with the library (zlib, szip, etc.) do
- not experience the problems that these new functions are intended to
- fix. This work only applies to third-party filters that are compiled
- separately from the library.
-
- (DER - 2015-04-01, HDFFV-9100)
-
- - H5Pset_istore_k and H5Pset_sym_k
-
- These two functions didn't check the value of the input parameter "ik".
- When 2*ik exceeded 2 bytes of storage, data was lost in the file;
- for example, some chunks would be overwritten.
-
- Added validation of "ik" to not exceed the max v1 btree entries (2 bytes)
- to these two routines.
-
- (VC - 2015-03-24, HDFFV-9173)
-
- - Added Functions to Control the Value of H5PL_no_plugin_g without
- Using an Environment Variable
-
- Sometimes it is necessary for an application to disable the use of
- dynamically loaded plugin libraries without requiring the library to
- be built with plugin support disabled or to set an environment
- variable to disable plugin support globally.
-
- Two new functions (H5PLset_loading_state() and H5PLget_loading_state())
- were added to the HDF5 C Library. These functions require a parameter
- that indicates which type of dynamically loaded plugin is enabled or
- disabled.
-
- (ADB - 2015-03-17, HDFFV-8520)
-
- Parallel Library
- ----------------
- - MPI_Finalize and HDF5 Library Shutdown
-
- Calling HDF5 routines after MPI_Finalize has been closed should
- not be done, since those routines might call MPI functions that
- would not be possible to do after finalizing the MPI library.
-
- Attached an attribute destroy callback to MPI_COMM_SELF that
- shuts down the HDF5 library when MPI_COMM_SELF is destroyed,
- in other words, on MPI_Finalize. This should fix several issues
- that users see when they forget to close HDF5 objects before
- calling MPI_Finalize().
-
- (MSC - 2015/02/25, HDFFV-883)
-
- Tools
- -----
- - None
-
- High-Level APIs
- ---------------
- - None
-
- Fortran API
- -----------
- - Added Global Variables
-
- These new global variables are equivalent to the C definitions
- without the '_F':
-
- H5G_UDLINK_F
- H5G_SAME_LOC_F
- H5O_TYPE_UNKNOWN_F
- H5O_TYPE_GROUP_F
- H5O_TYPE_DATASET_F
- H5O_NAMED_DATATYPE_F
- H5O_TYPE_NTYPES_F
-
- (MSB - 2015/02/03, HDFFV-9040)
-
-
- C++ API
- -------
- - New Wrappers for C Functions H5P[s/g]et_libver_bounds
-
- Wrappers were added to class H5::FileAccPropList for the
- C Functions H5Pget_libver_bounds and H5Pset_libver_bounds.
-
- (BMR, 2015/04/06, Part of HDFFV-9167)
-
- - New Wrappers to Get the Object Header's Version
-
- The following wrappers are added to class H5::CommonFG
- Returns the object header version of an object in a file or group,
- given the object's name.
-
- unsigned childObjVersion(const char* objname) const;
- unsigned childObjVersion(const H5std_string& objname) const;
-
- (BMR, 2015/04/06)
-
- - New DataType Constructor
-
- Added a DataType constructor that takes a PredType object, and this
- constructor will invoke H5Tcopy to generate another datatype id
- from a predefined datatype.
-
- (BMR, 2015/04/06)
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - Support for Linux 3.10.0-123.20.1.el7 added (LK - 2015/04/01)
- - Support for Mac OS X Yosemite 10.10 added (AKC - 2015/03/04, HDFFV-9007)
- - Support for AIX 6.1 added and AIX 5.3 is retired. (AKC - 2015/01/09)
-
-Bug Fixes since HDF5-1.8.14
-===========================
-
- Configuration
- -------------
- - Make uninstall generated "test: argument expected".
- The error is due to $EXAMPLETOPDIR is used without setting a value first.
-
- Fixed by assign it with the proper value.
-
- (AKC - 2015/04/29, HDFFV-9298)
-
- - Windows Installer Incorrect Display of PATH Environment Variable
-
- In the Windows installer, the dialog box where the user can elect to
- add the product's bin path to the %PATH% environment variable displayed
- an incorrect path. This path was missing the C:\Program Files part
- and used the POSIX file separator '/' before the bin (/bin,
- instead of \bin).
-
- The dialog box text was changed to simply say that the product's bin
- path would be added instead of explicitly displaying the path.
- This is in line with most installers. The reason for not fixing the
- displayed path instead is that it is difficult to pass the correct
- path from CPack to the NSIS installer for display.
-
- Note that this was never a code issue - it was just a display
- problem. The installer always did the right thing when updating the
- environment variable.
-
- (DER - 2014/11/14, HDFFV-9016)
-
- Library
- -------
- - Incorrect Usage of List in CMake COMPILE_DEFINITIONS set_property
-
- The CMake command set_property with COMPILE_DEFINITIONS property
- needs a quoted semi-colon separated list of values. CMake will
- transform the list to a series of -D{value} for the compile.
-
- (ADB - 2014/12/09, HDFV-9041)
-
- - Fixed Compile Errors on Windows w/ Visual Studio and CMake When
- UNICODE is Defined
-
- The HDF5 Library could not be built on Windows with Visual Studio when
- UNICODE was defined. This was due to the incorrect use of the TEXT()
- macro and some Win32 API functions that take TCHAR parameters. The faulty
- code was a part of the filter plugin functionality. This was a
- compile-time error that only affected users who build HDF5 from source
- and define UNICODE, usually when HDF5 is being built as a part of a
- larger product. There were no run-time effects.
-
- These errors caused no problems when UNICODE was not defined. HDF5 is
- normally not built with UNICODE defined and the binaries were
- unaffected.
-
- The fix was to remove the TEXT() macro and explicitly use the
- 'A' form of the Win32 API calls, which expect char strings instead of
- wchar_t strings.
-
- Note that HDF5 currently does not support Unicode file paths on Windows.
-
- (DER - 2015/02/22, HDFFV-8927)
-
- - Addition of Error Tracing Functionality to Several C API Calls
-
- A bug in a text processing script caused API calls that return a
- pointer to not receive error tracing macros/functionality.
-
- The bug has been corrected and error tracing functionality has been
- added to the affected API calls. These functions will now correctly
- print trace information when library errors are encountered.
-
- (DER - 2015/02/26, HDFFV-9141)
-
- - H5Rdereference Now Checks for HADDR_UNDEF or Uninitialized References
-
- When passed HADDR_UNDEF or uninitialized references, the previous
- behavior of H5Rdereference was to continue to process the reference
- as a valid address.
-
- H5Rdereference was changed to return immediately (with an error
- message) if the references are HADDR_UNDEF or uninitialized.
-
- (MSB - 2015/3/10, HDFFV-7959)
-
- - Fixed Bugs in H5Sextent_copy
-
- H5Sextent_copy would not free the previous extent, resulting in a memory
- leak. Also, H5Sextent_copy would not update the number of elements
- selected if the selection was "all", causing various problems. These
- issues have been fixed.
-
- (NAF - 2015/04/02)
-
-
- Parallel Library
- ----------------
- - Fixed a Potential Memory Error
-
- Fixed a potential memory error when performing parallel I/O on a
- dataset with a single chunk, and at least one process has nothing
- to do.
-
- (NAF - 2015/02/16)
-
- - Parallel Test Problem Fixed
-
- Fixed problem with parallel tests where they failed beyond a
- certain number of ranks. All tests should work for any arbitrary
- number of ranks.
-
- (MSC - 2014/11/06, HDFFV-1027,8962,8963)
-
- - MPE Support
-
- Enabling MPE was causing HDF5 build to fail. Support for it was
- dropped at some point in time.
-
- Fixed problem with enabling MPE. Users should use the community
- maintained MPE on github (http://git.mpich.org/mpe.git/).
-
- (MSC - 2015/02/20, HDFFV-9135)
-
- Performance
- -------------
- - None
-
- Tools
- -----
- - h5repack crashed on enumerated 8-bit type.
-
- Previous version 1.8.14 introduced an error that caused the reading
- of enumerated 8-bit type nested in compound type to fail.
-
- Fixed library code responsible for reading the particular type.
- (AKC - 2015.03/31, HDFFV-8667)
-
- - h52gif crashed non-8bit images.
-
- h52gif crashed if instructed to convert images other than 8bit images.
-
- h52gif could handle only 8bit images. Added code to detect non-8bit
- images and flag them as failure. Update tool document page to reflect
- the limit.
- (AKC - 2015/03/31, HDFFV-8957)
-
- - perform/benchpar.c retired.
-
- benchpar.c has not been built for a long time and its original purpose
- is not needed any more.
- (AKC - 2014/12/19, HDFFV-8156)
-
- - Source perform/ directory moved to tools/perform.
- The perform directory is moved to tools/perform for easier maintenance.
- (AKC - 2014/12/17, HDFFV-9046)
-
- Fortran API
- ------------
- - Fortran Fails with --enable-fortran2003 and Intel 15.x Compilers
-
- Added BIND(C) to the offending APIs.
-
- The Fortran Library (--enable-fortran2003) now works using Intel 15.x
- without the need for any additional compilers flags.
-
- (MSB - 2015/1/26, HDFFV-9049)
-
- - h5tenum_insert_f Does Not Work with Default 8 Byte Integers
- (xlf compiler)
-
- In the Fortran 90 API, 'value' is no longer cast into the C int type.
- Therefore, if h5tenum_insert_f is passed an 8 byte integer (via -i8)
- then 'value' is written as the same type as the default Fortran
- integer type (which can be 8 bytes).
-
- A new Fortran 2003 API was added which is more in line with the C
- API and users are strongly encouraged to use the Fortran 2003 API
- instead of the Fortran 90 API.
-
- SUBROUTINE h5tenum_insert_f(type_id, name, value, hdferr)
- INTEGER(HID_T) , INTENT(IN) :: type_id
- CHARACTER(LEN=*), INTENT(IN) :: name
- TYPE(C_PTR) , INTENT(IN) :: value
- INTEGER, INTENT(OUT) :: hdferr
-
- (MSB - 2015/2/19, HDFFV-8908)
-
- - Some Fortran APIs Never Returned the Error State
-
- Some Fortran APIs never returned the error state: they
- would always return a positive number. The APIs include
- the following:
-
- h5fget_file_image_f
- h5lget_name_by_idx_f
- h5oget_comment_by_name_f
-
- They were corrected to return a negative number as described in
- the Reference Manual if an error occurred.
-
- (MSB - 2015/3/19, HDF5-239)
-
- - Fixed h5pget_class_f
-
- h5pget_class_f never correlated the class identifier to the property
- list class name as indicated in the HDF5 Reference Manual; it instead
- returned a property list class identifier as an INTEGER. The INTEGER
- needed to be of type INTEGER(HID_T) to be correct.
-
- The h5pget_class_f API was changed to return an INTEGER(HID_T)
- property list class identifier instead of an INTEGER. This mimics the
- intended behavior of the C API.
-
- (MSB - 2015/3/16, HDFFV5-9162)
-
- C++ API
- ------
- - Combined Two H5File::getObjCount Overloaded Methods
-
- The following two methods
-
- ssize_t getObjCount(unsigned types) const;
- ssize_t getObjCount() const;
-
- were combined into one:
-
- ssize_t getObjCount(unsigned types = H5F_OBJ_ALL) const;
-
- (BMR - 2015/04/06)
-
- - Many Warnings Were Removed
-
- Many warnings such as conversion, unused variables, missing base
- class initialization, and initializing base classes in wrong order
- were removed.
-
- (BMR, 2015/04/06)
-
- - Functionality Deprecation
-
- The following two constructors of classes AbstractDs, IdComponent,
- H5Location, and H5Object are no longer appropriate after the data member
- "id" had been moved from IdComponent to the sub-classes in previous
- releases.
-
- (const hid_t h5_id);
- (const & original);
-
- The copy constructors were no-op and removed in 1.8.15. The other
- constructors will be removed from 1.10 release, and then from 1.8.17
- if their removal does not cause any problems.
-
- (BMR, 2015-04-06)
-
-
- High-Level APIs:
- ------
- - Suppress Warnings from Flex/Bison-generated Code
-
- Warning suppression #pragmas, etc. have been added to H5LTparse.c and
- H5LTanalyze.c. We have no control over this code since it's created by
- a generator.
-
- (DER - 2015/03/08 - HDFFV-9149)
-
- - Changed hdf5_hl.h to Include the HDF5 Main Library "hdf5.h"
-
- User's no longer need to include both hdf5_hl.h and hdf5.h
-
- (MSB - 2015/2/14, HDFFV-8685)
-
-
- - H5PTcreate_fl Does Not Convert to Memory Datatype
-
- H5PTcreate_fl now converts to the table's native memory datatype
- to fix the problem of handling BE and LE packet tables.
-
- (MSB - 2015/2/26 - HDFFV-9042)
-
- - Fix for H5LT Attribute Functions
-
- H5LT attribute functions fail to create attributes whose name
- is a substring of an existing attribute.
-
- H5LT attribute functions can now create attributes whose name
- is a substring of an existing attribute.
-
- (MSB - 2015/2/24, HDFFV-9132)
-
-
- Fortran High-Level APIs:
- ------------------------
-
- - Internal Library Fix for Missing Argument Declaration
-
- In Interface block for h5tbmake_table_c, "max_char_size_field_names"
- is listed as an input, but in the argument definitions it is
- "INTEGER :: max_char_size". This caused no known problems with the
- Fortran HL API.
-
- Fixed missing argument definition.
-
- (MSB - 2015/2/18, HDFFV-8559)
-
-
- Testing
- -------
- - None
-
-
-Supported Platforms
-===================
-The following platforms are supported and have been tested for this release.
-They are built with the configure process unless specified otherwise.
-
- AIX 6.1 xlc/xlc_r 10.1.0.5
- (NASA G-ADA) xlC/xlC_r 10.1.0.5
- xlf90/xlf90_r 12.1.0.6
-
- Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP i686 i686 i386 compilers for 32-bit applications;
- (jam) Version 4.1.2 20080704 (Red Hat 4.1.2-55)
- Version 4.8.4, 4.9.2
- PGI C, Fortran, C++ Compilers for 32-bit
- applications;
- Version 14.10-0
- Intel(R) C, C++, Fortran Compiler for 32-bit
- applications;
- Version 15.0.1.133 (Build 20141023)
-
- Linux 2.6.18-371.6.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers for 64-bit applications;
- (koala) Version 4.1.2 20080704 (Red Hat 4.1.2-55)
- Version 4.8.4, 4.9.2
- Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64;
- Version 15.0.1.133 Build 20141023
-
- Linux 2.6.32-431.11.2.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (platypus) Version 4.4.7 20120313
- Version 4.8.2, Version 4.9.2
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 14.10-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 15.0.1.133 Build 20141023
-
- Linux 3.10.0-123.20.1.el7 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (moohan) Version 4.8.2 20140120 (Red Hat 4.8.2-16)
- Intel(R) C Intel(R) 64 Compiler XE for
- applications running on Intel(R) 64,
- Version 15.0.1.133 Build 20141023
-
- Linux 2.6.32-431.29.2.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2008 (cmake)
- Visual Studio 2010 w/ Intel Fortran 14 (cmake)
- Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
- Cygwin(CYGWIN_NT-6.1 1.7.34(0.285/5/3) gcc(4.9.2) compiler and gfortran)
- (cmake and autotools)
-
- Windows 7 x64 Visual Studio 2008 (cmake)
- Visual Studio 2010 w/ Intel Fortran 14 (cmake)
- Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Windows 8.1 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 15 (cmake)
- Visual Studio 2013 w/ Intel Fortran 15 (cmake)
-
- Mac OS X Mt. Lion 10.8.5 Apple clang/clang++ version 5.1 from Xcode 5.1
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (swallow/kite) Intel icc/icpc/ifort version 14.0.2
-
- Mac OS X Mavericks 10.9.5 Apple clang/clang++ version 6.0 from Xcode 6.1.1
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (wren/quail) Intel icc/icpc/ifort version 14.0.2
-
- Mac OS X Yosemite 10.10.2 Apple clang/clang++ version 6.0 from Xcode 6.1.1
- 64-bit gfortran GNU Fortran (GCC) 4.9.2
- (osx1010dev/osx1010test) Intel icc/icpc/ifort version 15.0.1
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-SunOS 5.11 32-bit n y/y n y y y
-SunOS 5.11 64-bit n y/y n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y n y y y
-Windows 7 Cygwin n y/y n y y n
-Windows 8.1 n y/y n y y y
-Windows 8.1 x64 n y/y n y y y
-Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
-Mac OS X Mavericks 10.9.5 64-bit n y/y n y y y
-Mac OS X Yosemeti 10.10.2 64-bit n y/y n y y y
-AIX 6.1 32- and 64-bit n y/n n y y y
-CentOS 5.9 Linux 2.6.18-308 i686 GNU y y/y y y y y
-CentOS 5.9 Linux 2.6.18-308 i686 Intel n y/y n y y y
-CentOS 5.9 Linux 2.6.18-308 i686 PGI n y/y n y y y
-CentOS 5.9 Linux 2.6.18 x86_64 GNU n y/y n y y y
-CentOS 5.9 Linux 2.6.18 x86_64 Intel n y/y n y y y
-CentOS 6.4 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 6.4 Linux 2.6.32 x86_64 Intel n y/y n y y y
-CentOS 6.4 Linux 2.6.32 x86_64 PGI n y/y n y y y
-CentOS 7.0 Linux 3.10.0 x86_64 GNU y y/y y y y y
-CentOS 7.0 Linux 3.10.0 x86_64 Intel n y/y n y y y
-Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-SunOS 5.11 32-bit y y y y
-SunOS 5.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 8.1 y y y y
-Windows 8.1 x64 y y y y
-Mac OS X Mountain Lion 10.8.5 64-bit y n y y
-Mac OS X Mavericks 10.9.5 64-bit y n y y
-Mac OS X Yosemeti 10.10.2 64-bit y n y y
-AIX 6.1 32- and 64-bit y n n y
-CentOS 5.9 Linux 2.6.18-308 i686 GNU y y y y
-CentOS 5.9 Linux 2.6.18-308 i686 Intel y y y n
-CentOS 5.9 Linux 2.6.18-308 i686 PGI y y y n
-CentOS 5.9 Linux 2.6.18 x86_64 GNU y y y y
-CentOS 5.9 Linux 2.6.18 x86_64 Intel y y y n
-CentOS 6.4 Linux 2.6.32 x86_64 GNU y y y n
-CentOS 6.4 Linux 2.6.32 x86_64 Intel y y y n
-CentOS 6.4 Linux 2.6.32 x86_64 PGI y y y n
-CentOS 7.0 Linux 3.10.0 x86_64 GNU y y y n
-CentOS 7.0 Linux 3.10.0 x86_64 Intel y y y n
-Linux 2.6.32-431.11.2.el6.ppc64 y y y n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.18-308.13.1.el5PAE MPICH mpich 3.1.3 compiled with
- #1 SMP i686 i686 i386 gcc 4.9.2 and gfortran 4.9.2
- (jam) g95 (GCC 4.0.3 (g95 0.94!)
-
- Linux 2.6.18-431.11.2.el6 MPICH mpich 3.1.3 compiled with
- #1 SMP x86_64 GNU/Linux gcc 4.9.2 and gfortran 4.9.2
- (platypus) g95 (GCC 4.0.3 (g95 0.94!)
-
- FreeBSD 8.2-STABLE i386 gcc 4.5.4 [FreeBSD] 20110526
- (loyalty) gcc 4.6.1 20110527
- g++ 4.6.1 20110527
- gfortran 4.6.1 20110527
-
- FreeBSD 8.2-STABLE amd64 gcc 4.5.4 [FreeBSD] 20110526
- (freedom) gcc 4.6.1 20110527
- g++ 4.6.1 20110527
- gfortran 4.6.1 20110527
-
- Debian7.5.0 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
- gcc (Debian 4.7.2-5) 4.7.2
- GNU Fortran (Debian 4.7.2-5) 4.7.2
- (cmake and autotools)
-
- Fedora20 3.15.3-200.fc20.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
- GNU Fortran (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
- (cmake and autotools)
-
- SUSE 13.1 3.11.10-17-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.8.1
- GNU Fortran (SUSE Linux) 4.8.1
- (cmake and autotools)
-
- Ubuntu 14.04 3.13.0-35-generic #62-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
- GNU Fortran (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
- (cmake and autotools)
-
- hopper.nersc.gov PrgEnv-gnu/5.2.40
- gcc (GCC) 4.9.2 20141030 (Cray Inc.)
- GNU Fortran (GCC) 4.9.2 20141030 (Cray Inc.)
- g++ (GCC) 4.9.2 20141030 (Cray Inc.)
-
-
-Known Problems
-==============
-* On Windows platforms in debug configurations, the VFD flush1 tests will fail
- with the split and multi VFD drivers. These tests will display a modal debug
- dialog which must be answered or wait for the test timeout to expire.
- (ADB - 2014/06/23 - HDFFV-8851)
-
-* CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
- catches some undefined behavior in the alignment algorithm of the macro DETECT_I
- in H5detect.c (Issue 8147). Since the algorithm is trying to detect the alignment
- of integers, ideally the flag -fcatch-undefined-behavior shouldn't to be used for
- H5detect.c. In the future, we can separate flags for H5detect.c from the rest of
- the library. (SLU - 2013/10/16)
-
-* Make provided by Solaris fails in "make check". Solaris users should use
- gmake to build and install the HDF5 software. (AKC - 2013/10/08 - HDFFV-8534)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
- native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
- ports (and probably gcc releases after that).
- (QAK - 2012/10/19)
-
-* The following h5dump test case fails in BG/P machines (and potentially other
- machines that use a command script to launch executables):
-
- h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
- tno-subset.h5
-
- This is due to the embedded spaces in the dataset name being interpreted
- by the command script launcher as meta-characters, thus passing three
- arguments to h5dump's -d flag. The command passes if run by hand, just
- not via the test script.
- (AKC - 2012/05/03)
-
-* The STDIO VFD does not work on some architectures, possibly due to 32/64
- bit or large file issues. The basic STDIO VFD test is known to fail on
- 64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
- 10.7.0. The STDIO VFD test has been disabled while we investigate and
- a fix should appear in a future release.
- (DER - 2011/10/14 - HDFFV-8235)
-
-* h5diff can report inconsistent results when comparing datasets of enum type
- that contain invalid values. This is due to how enum types are handled in
- the library and will be addressed in a future release.
- (DER - 2011/10/14 - HDFFV-7527)
-
-* The links test can fail under the stdio VFD due to some issues with external
- links. This will be investigated and fixed in a future release.
- (DER - 2011/10/14 - HDFFV-7768)
-
-* After the shared library support was fixed for some bugs, it was discovered
- that "make prefix=XXX install" no longer works for shared libraries. It
- still works correctly for static libraries. Therefore, if you want to
- install the HDF5 shared libraries in a location such as /usr/local/hdf5,
- you need to specify the location via the --prefix option during configure
- time. E.g, ./configure --prefix=/usr/local/hdf5 ...
- (AKC - 2011/05/07 - HDFFV-7583)
-
-* The parallel test, t_shapesame, in testpar/, may run for a long time and may
- be terminated by the alarm signal. If that happens, one can increase the
- alarm seconds (default is 1200 seconds = 20 minutes) by setting the
- environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
- (60 minutes). Note that the t_shapesame test may fail in some systems
- (see the "While working on the 1.8.6 release..." problem below). If
- it does, it will waste more time if $HDF5_ALARM_SECONDS is set
- to a larger value.
- (AKC - 2011/05/07)
-
-* Shared Fortran libraries are not quite working on AIX. While they are
- generated when --enable-shared is specified, the fortran and hl/fortran
- tests fail. the issue. HL and C++ shared libraries should now be
- working as intended, however.
- (MAM - 2011/04/20)
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or file systems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
- (NAF - 2011/01/19)
-
-* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added in. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug in 1.8 library. Because there's only one user
- complaining about it, we (Elena, Quincey, and I) decided to leave it as
- it is (see bug report #1279). Quincey will make a plan for 1.10.
- (SLU - 2010/02/02)
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
- (MAM - 2009/11/04)
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- (SLU - 2005/06/30)
-
-
-%%%%1.8.14%%%%
-
-
-HDF5 version 1.8.14 released on 2014-11-12
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.13 and
-HDF5-1.8.14, and contains information on the platforms tested and
-known problems in HDF5-1.8.14.
-
-All new and modified APIs are listed in the "HDF5 Software Changes
-from Release to Release" document along with details about previous
-releases at:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-Links to the HDF5 1.8.14 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.14 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.14 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.13
-- Supported Platforms
-- Supported Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - bin/cmakehdf5 configures, builds and installs C, C++, Fortran and High
- level API's. (It used to build the C API only).
- (AKC 2014/10/17 HDFFV-8932).
-
- Library
- -------
- - None
-
- Parallel Library
- ----------------
- - Chunk Fill Writes Changed to Collective
-
- Slow performance in chunk fill writes. Chunk fills
- in the past were written independently by rank 0 one block
- at a time.
-
- Optimized the chunk fill write algorithm so that all
- chunk fill values will be written collectively in a single MPI-IO
- call. This should show a great performance improvement when
- creating chunked datasets in parallel when the chunk dimensions
- are fairly small.
-
- (MSC - 2014/08/22, HDFFV-8878)
-
- Tools
- -----
- - None
-
- High-level APIs
- ---------------
- - None
-
- Fortran API
- -----------
- - None
-
- C++ API
- -------
- - Initialization of Object IDs
-
- The data member "id" in classes that represent HDF5 objects were
- initialized to 0, which caused problem for some users.
-
- Replaced 0 with H5I_INVALID_HID to initialize these "id"s. For the
- PropList class, H5P_DEFAULT is used instead of H5I_INVALID_HID.
-
- (BMR - 2014/09/30, HDFFV-4259)
-
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - None
-
-Bug Fixes since HDF5-1.8.13
-===========================
-
- Configuration
- -------------
- - CMake and SVN URLs
-
- The SVN URLs will be different when the HDF Group domain name changes.
-
- Removed the SVN URL references in the cacheinit.cmake and release_docs files.
-
- (ADB - 2014/10/27, HDFFV-8953)
-
- - CMake Packaging
-
- A Fortran module was not generated if the compiler was not F2003
- compliant.
-
- Removed the module name from the package list of Fortran modules because
- that module was never generated. This was only an issue for Fortran
- compilers that are not F2003 compatible.
-
- (ADB - 2014/10/16, HDFFV-8932)
-
- - Shared Library Interface Version Number (soname)
-
- In order to increase the maintainability of HDF5, an architectural
- change was made which required the renaming of several public symbols in
- H5Ppublic.h.
-
- The shared library interface version number ("soname") has been increased
- on account of these changes. For a full list of the changed symbols, see
- the interface compatibility report, which is available as a link off of
- the 'HDF5 Software Changes from Release to Release' document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
- (AKC - 2014/10/03, HDFFV-8937)
-
- - Configure Settings for Mac OSX Need Defaults for PROD_XXX, DEBUG_XXX,
- and PROFILE_XXX
-
- The configure setting files for Mac OSX (config/apple) did not
- have the default settings of PROD_XXX, DEBUG_XXX, PROFILE_XXX.
-
- Added the default settings. Mac platforms now builds library with
- "-O3" optimization when the default clang compiler is used.
-
- (AKC - 2014/10/01, HDFFV-8933)
-
- - CMake ConfigureChecks
-
- Two include files were missing from two C tests.
-
- Propagated the configure test changes to H5_LDOUBLE_TO_INTEGER_WORKS_TEST
- and H5_ULLONG_TO_LDOUBLE_PRECISION_TEST to ConfigureChecks.cmake (added
- stdlib.h and string.h in the HDFTests.c file).
-
- (ADB - 2014/09/02 HDFFV-8845)
-
- - CMake Parallel Test Missing
-
- The source file was removed in the previous release but the parallel
- test t_posix_compliant was not.
-
- Removed the t_posix_compliant parallel test from the library.
-
- (ADB - 2014/8/14 HDFFV-8880)
-
- - Autotools Reconfigure. Bison. Flex.
-
- The Bison and Flex files were out of date.
-
- Bison was upgraded to 2.7, and Flex was upgraded to 2.5.37. The
- bin/reconfigure script now will execute Bison and Flex and update
- the hl/src files.
-
- (ADB - 2014/06/16 HDFFV-8709)
-
- - Autotools Reconfigure. m4.
-
- The m4 macro processor was out of date.
-
- Reconfigured Autotools with m4 upgraded to 1.4.17.
-
- (ADB - 2014/06/12 HDFFV-8743)
-
- - Autotools: Modified configure to add an entry at the beginning of AM_LDFLAGS
- for the hdf5 install directory. Without this entry the relink commands
- invoked by "make install" to create libraries dependent on libhdf5.so added
- a dependency on the first libhdf5.so found in any directory in AM_LDFLAGS
- regardless of its version. (LRK - 2014/10/17 HDFFV-8944)
-
- - Changed Autotools Build Behavior. Fortran High-level Library.
-
- The Fortran high-level (HL) library did not compile if the default
- size of a REAL is DOUBLE PRECISION; the build would fail during
- compilation.
-
- Configure now checks to see if REAL is DOUBLE PRECISION, Fortran is
- enabled, and HL library is enabled. If this is true, then configure
- will stop with an error message.
-
- (MSB - 2014/8/11, HDFFV-8883/HDFFV-889)
-
-
-
- Library
- -------
- - Fixed Identifier Management Code
-
- Opening an object returns an identifier; closing the object should
- free up the identifier. A problem was found where the identifiers
- were not being freed up correctly.
-
- Fixed the problem so that identifiers that have been used can be
- used again after their object has been closed.
-
- (QAK - 2014/10/16, HDFFV-8930)
-
- - Removal of DllMain() from Static Windows Builds
-
- A DllMain() function was added in HDF5 1.8.13 in order to handle
- win32 thread cleanup. The preprocessor #ifdefs around the DllMain
- function allowed it to be compiled when the static library is built,
- which is incorrect behavior that can cause linkage problems in
- clients.
-
- The fix was to change the preprocessor #ifdefs to exclude compiling
- DllMain() in static builds. Our DllMain function is now only
- compiled when the shared, thread-safe library is built on Windows.
-
- (DER - 2014/06/13, HDFFV-8837)
-
- - Enforce Constraint on page_size Parameter in H5Pset_core_write_tracking()
-
- The reference manual states that the page_size parameter cannot be
- zero.
-
- This change checks the page_size parameter to see it is zero and
- returns an error code if it is.
-
- (DER - 2014/08/11, HDFFV-8891)
-
- - H5Ldelete_by_idx() fails on non-existent group name.
- (MSC - 2014/07/31, HDFFV-8888)
-
- - H5Ldelete_by_idx() Seg Fault on Non-existent Group Name
-
- If a non-existent group name was used by H5Ldelete_by_idx(), a
- segmentation fault would result.
-
- Bug was fixed.
-
- (MSC - 2014/07/31, HDFFV-8888)
-
- - Bug in Test When Building Parallel HDF5 on PVFS2
-
- There was a bug in a test when building Parallel HDF5 on PVFS2.
-
- The build now uses MPI_File_get_size() instead of stat().
-
- (MSC - 2014/07/14, HDFFV-8856)
-
- - MPI-IO Driver Tried to Allocate Space for Zero-length Dataset
-
- MPI-IO driver tried to allocate space for zero-length dataset
- and asserts.
-
- Fixed driver and added a regression test.
-
- (MSC - 2014/07/03, HDFFV-8761)
-
-
- Parallel Library
- ----------------
- - None
-
- Performance
- -------------
- - None
-
- Tools
- -----
- - None
-
- Fortran API
- -------
- - SIZEOF Replaced by C_SIZEOF and STORAGE_SIZE.
-
- The intrinsic function SIZEOF is non-standard and should be replaced with a
- standard intrinsic function.
-
- If the F2008 intrinsic C_SIZEOF and STORAGE_SIZE are available, then they will
- be used instead of the non-standard SIZEOF intrinsic, even when the SIZEOF
- function is available.
-
- (MSB - 2014/6/16, HDFFV-8653)
-
- - Non-functional API: h5pget_fill_value_f
-
- The Fortran wrapper h5pget_fill_value_f was calling the wrong C API.
-
- The correct C API, H5Pget_fill_value, is now called by the Fortran
- wrapper.
-
- (MSB - 2014/9/25, HDFFV-8879)
-
- - Interoperability with C HDF5: H5Literate and h5literate_f
-
- h5literate_f assumes the return value for the callback function to
- be of type int (or int_f in C). However, in the C wrapper the return
- value of H5Literate is type herr_t, and this could cause
- interoperability issues.
-
- The callback function should be declared INTEGER(C_INT) for
- portability. The tests were updated accordingly.
-
- (MSB - 2014/9/26, HDFFV-8909)
-
- - Interoperability with C HDF5: Constant INTEGER Parameters with the
- H5FD Interface
-
- Wrong type cast of constant Fortran INTEGER parameters was used.
-
- The following parameter constant types were changed from INTEGER to
- INTEGER(HID_T) to match the C types: H5FD_CORE, H5FD_FAMILY, H5FD_LOG,
- H5FD_MPIO, H5FD_MULTI, H5FD_SEC2, and H5FD_STDIO.
-
- Other internal 'int' types where changed to 'hid_t'; these are
- transparent to the user.
-
- (MSB - 2014/7/18, HDFFV-8748)
-
- C++ API
- ------
- - Memory Leaks
-
- There were several potential memory leaks in the library due to
- dynamically allocated strings not being freed when failure occurs.
-
- Applied user's patches to remove these potential memory leaks.
-
- (BMR - 2014/09/30, HDFFV-8928)
-
- - Disallow H5F_ACC_CREAT
-
- H5F_ACC_CREAT was included in the C++ API but the C library does not
- allow it at this time.
-
- Removed this flag from the functions in H5File class.
-
- (BMR - 2014/09/29, HDFFV-8852)
-
- - Missing Flags in Documentation: H5F_ACC_RDONLY and H5F_ACC_RDWR
-
- The H5F_ACC_RDONLY and H5F_ACC_RDWR flags were missing from the
- documentation of the H5File constructors.
-
- These two flags are now included in the documentation for opening
- files.
-
- (BMR - 2014/09/29, HDFFV-8852)
-
- High-level APIs:
- ------
- - Seg Faults in H5TBread_field_name and H5TBread_field_name_f
-
- When H5TBread_field_name or H5TBread_field_name_f were used to read a
- field and if the name of the field was wrong, a segmentation fault
- would result.
-
- Both C and Fortran APIs were fixed so they no longer seg fault if
- the name of the field is wrong, and both APIs return a negative
- value if the name of the field is wrong.
-
- (MSB - 2014/09/29, HDFFV-8912)
-
- - Possible Buffer Overflow in High-level (HL) APIs
-
- Multiple HL APIs (H5DSis_scale is one example) had issues:
- (1) The datatype from the file was re-used as the memory datatype,
- and
- (2) No effort was made to ensure that strings were actually
- null-terminated.
-
- All of the HL routines now check for NULL pointers, for null-terminated
- strings, and to see if string buffers are short enough not to overflow
- the buffer. The minimum length of the buffers is now used in strncmp
- to avoid overflow.
-
- (MSB - 2014/9/29, HDFFV-8670)
-
- - Behavior Change of H5LTdtype_to_text
-
- If a user buffer was passed in to H5LTdtype_to_text along with the
- length, then the function would not truncate at the end of the
- buffer, but would exceed the end of the user buffer.
-
- H5LTdtype_to_text was changed to truncate the string if the user
- buffer is too small.
-
- (MSB - 2014/9/29, HDFFV-8855)
-
- Fortran High-level APIs:
- ------
- - See entry for HDFFV-8912 above.
-
- Testing
- -------
- - A subtest in parallel h5diff (ph5diff) testing was bypassed for the
- local Linux 32 machine due to unknown issue in the previous version of
- Mpich. The failure no long exists in the current Mpich. Therefore the
- bypass is removed. (AKC - 2014/11/03 HDFFV-8954)
-
- - Fixed incorrect exit code values (was -1) in testframe which is commonly
- used by several test programs. (AKC - 2014/07/22 HDFFV-8881)
-
- - Fixed Incorrect Exit Code Values in Testframe
- The testframe which is commonly used by several test programs
- had some incorrect exit code values. Fixed the incorrect exit code
- values. (AKC - 2014/07/22, HDFFV-8881)
-
-Supported Platforms
-===================
-The following platforms are supported and have been tested for this release.
-They are built with the configure process unless specified otherwise.
-
- AIX 5.3 xlc 10.1.0.5
- (NASA G-ADA) xlC 10.1.0.5
- xlf90 12.1.0.6
-
- Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP i686 i686 i386 compilers for 32-bit applications;
- (jam) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
- Version 4.8.2
- PGI C, Fortran, C++ Compilers for 32-bit
- applications;
- Version 13.7-0
- Intel(R) C, C++, Fortran Compiler for 32-bit
- applications;
- Version 14.0.2 (Build 20140120)
-
- Linux 2.6.18-371.6.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers for 64-bit applications;
- (koala) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
- Version 4.8.2
- Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64;
- Version 14.0.2 (Build 20140120)
-
- Linux 2.6.32-431.11.2.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (platypus) Version 4.4.7 20120313
- Version 4.8.2
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 13.7-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 14.0.2 (Build 20140120)
-
- Linux 2.6.32-431.29.2.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
- IBM XL C/C++ V13.1
- IBM XL Fortran V15.1
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2008 (cmake)
- Visual Studio 2010 w/ Intel Fortran 14 (cmake)
- Visual Studio 2012 w/ Intel Fortran 14 (cmake)
- Visual Studio 2013 w/ Intel Fortran 14 (cmake)
- Cygwin(CYGWIN_NT-6.1 1.7.32(0.274/5/3) gcc(4.8.3) compiler and gfortran)
- (cmake and autotools)
-
- Windows 7 x64 Visual Studio 2008 (cmake)
- Visual Studio 2010 w/ Intel Fortran 14 (cmake)
- Visual Studio 2012 w/ Intel Fortran 14 (cmake)
- Visual Studio 2013 w/ Intel Fortran 14 (cmake)
-
- Windows 8.1 Visual Studio 2012 w/ Intel Fortran 14 (cmake)
- Visual Studio 2013 w/ Intel Fortran 14 (cmake)
-
- Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 14 (cmake)
- Visual Studio 2013 w/ Intel Fortran 14 (cmake)
-
- Mac OS X Lion 10.7.5 Apple clang/clang++ version 3.0 from Xcode 4.6.1
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (duck) Intel icc/icpc/ifort version 13.0.3
-
- Mac OS X Mt. Lion 10.8.5 Apple clang/clang++ version 5.1 from Xcode 5.1
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (swallow/kite) Intel icc/icpc/ifort version 14.0.2
-
- Mac OS X Mavericks 10.9.5 Apple clang/clang++ version 6.0 from Xcode 6.0.1
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (wren) Intel icc/icpc/ifort version 14.0.2
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-Solaris2.11 32-bit n y/y n y y y
-Solaris2.11 64-bit n y/y n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y n y y y
-Windows 7 Cygwin n y/y n y y n
-Windows 8.1 n y/y n y y y
-Windows 8.1 x64 n y/y n y y y
-Mac OS X Lion 10.7.5 64-bit n y/y n y y y
-Mac OS X Mountain Lion 10.8.5 64-bit n y/y n y y y
-Mac OS X Mavericks 10.9.5 64-bit n y/y n y y ?
-AIX 5.3 32- and 64-bit n y/n n y y y
-CentOS 5.9 Linux 2.6.18-308 i686 GNU y y/y y y y y
-CentOS 5.9 Linux 2.6.18-308 i686 Intel n y/y n y y y
-CentOS 5.9 Linux 2.6.18-308 i686 PGI n y/y n y y y
-CentOS 5.9 Linux 2.6.18 x86_64 GNU n y/y n y y y
-CentOS 5.9 Linux 2.6.18 x86_64 Intel n y/y n y y y
-CentOS 6.4 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 6.4 Linux 2.6.32 x86_64 Intel n y/y n y y y
-CentOS 6.4 Linux 2.6.32 x86_64 PGI n y/y n y y y
-Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.11 32-bit y y y y
-Solaris2.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 8.1 y y y y
-Windows 8.1 x64 y y y y
-Mac OS X Lion 10.7.5 64-bit y n y y
-Mac OS X Mountain Lion 10.8.5 64-bit y n y y
-Mac OS X Mavericks 10.9.5 64-bit y n y y
-AIX 5.3 32- and 64-bit y n n y
-CentOS 5.9 Linux 2.6.18-308 i686 GNU y y y y
-CentOS 5.9 Linux 2.6.18-308 i686 Intel y y y n
-CentOS 5.9 Linux 2.6.18-308 i686 PGI y y y n
-CentOS 5.9 Linux 2.6.18 x86_64 GNU y y y y
-CentOS 5.9 Linux 2.6.18 x86_64 Intel y y y n
-CentOS 6.4 Linux 2.6.32 x86_64 GNU y y y n
-CentOS 6.4 Linux 2.6.32 x86_64 Intel y y y n
-CentOS 6.4 Linux 2.6.32 x86_64 PGI y y y n
-Linux 2.6.32-431.11.2.el6.ppc64 y y y n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.18-308.13.1.el5PAE MPICH mpich 3.1.2 compiled with
- #1 SMP i686 i686 i386 gcc 4.9.1 and gfortran 4.9.1
- (jam) g95 (GCC 4.0.3 (g95 0.94!)
-
- Linux 2.6.18-431.11.2.el6 MPICH mpich 3.1.2 compiled with
- #1 SMP x86_64 GNU/Linux gcc 4.9.1 and gfortran 4.9.1
- (platypus) g95 (GCC 4.0.3 (g95 0.94!)
-
- FreeBSD 8.2-STABLE i386 gcc 4.5.4 [FreeBSD] 20110526
- (loyalty) gcc 4.6.1 20110527
- g++ 4.6.1 20110527
- gfortran 4.6.1 20110527
-
- FreeBSD 8.2-STABLE amd64 gcc 4.5.4 [FreeBSD] 20110526
- (freedom) gcc 4.6.1 20110527
- g++ 4.6.1 20110527
- gfortran 4.6.1 20110527
-
- Debian7.5.0 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
- gcc (Debian 4.7.2-5) 4.7.2
- GNU Fortran (Debian 4.7.2-5) 4.7.2
- (cmake and autotools)
-
- Fedora20 3.15.3-200.fc20.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
- GNU Fortran (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
- (cmake and autotools)
-
- SUSE 13.1 3.11.10-17-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.8.1
- GNU Fortran (SUSE Linux) 4.8.1
- (cmake and autotools)
-
- Ubuntu 14.04 3.13.0-35-generic #62-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
- GNU Fortran (Ubuntu/Linaro 4.9.1-0ubuntu1) 4.9.1
- (cmake and autotools)
-
- Cray Linux Environment (CLE) PrgEnv-pgi/4.2.34
- hopper.nersc.gov pgcc 13.6-0 64-bit target on x86-64 Linux -tp istanbul
- pgf90 13.6-0 64-bit target on x86-64 Linux -tp istanbul
- pgCC 13.6-0 64-bit target on x86-64 Linux -tp istanbul
-
-
-Known Problems
-==============
-* On cygwin platforms the feature to load dynamic filter libraries only looks
- for libraries with the a so extension. Support for cygwin cygxxx.dll libraries
- is planned for the next release.
- (ADB - 2014/11/04 - HDFFV-8736)
-
-* On windows platforms in debug configurations, the VFD flush1 tests will fail
- with the split and multi VFD drivers. These tests will display a modal debug
- dialog which must be answered or wait for the test timeout to expire.
- The flush1 and flush2 tests will be skipped under debug for this release.
- (ADB - 2014/06/23 - HDFFV-8851)
-
-* CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
- catches some undefined behavior in the alignment algorithm of the macro DETECT_I
- in H5detect.c (Issue 8147). Since the algorithm is trying to detect the alignment
- of integers, ideally the flag -fcatch-undefined-behavior shouldn't to be used for
- H5detect.c. In the future, we can separate flags for H5detect.c from the rest of
- the library. (SLU - 2013/10/16)
-
-* Make provided by Solaris fails in "make check". Solaris users should use
- gmake to build and install the HDF5 software. (AKC - 2013/10/08 - HDFFV-8534)
-
-* The h5dump and h5diff utilities occasionally produce different output
- between Linux and Windows systems. This is caused by lower-level library
- routines that fail to write fill values to the user's buffer when reading
- unallocated chunks from datasets that have a fill value set to
- H5D_FILL_VALUE_DEFAULT. Due to platform differences the return of
- spurious data values has only been encountered on Windows 32-bit systems.
- (Issue HDFFV-8247; JP - 2013/03/27)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
- native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
- ports (and probably gcc releases after that).
- (QAK - 2012/10/19)
-
-* The STDIO VFD does not work on some architectures, possibly due to 32/64
- bit or large file issues. The basic STDIO VFD test is known to fail on
- 64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
- 10.7.0. The STDIO VFD test has been disabled while we investigate and
- a fix should appear in a future release.
- (DER - 2011/10/14 - HDFFV-8235)
-
-* h5diff can report inconsistent results when comparing datasets of enum type
- that contain invalid values. This is due to how enum types are handled in
- the library and will be addressed in a future release.
- (DER - 2011/10/14 - HDFFV-7527)
-
-* The links test can fail under the stdio VFD due to some issues with external
- links. This will be investigated and fixed in a future release.
- (DER - 2011/10/14 - HDFFV-7768)
-
-* After the shared library support was fixed for some bugs, it was discovered
- that "make prefix=XXX install" no longer works for shared libraries. It
- still works correctly for static libraries. Therefore, if you want to
- install the HDF5 shared libraries in a location such as /usr/local/hdf5,
- you need to specify the location via the --prefix option during configure
- time. E.g, ./configure --prefix=/usr/local/hdf5 ...
- (AKC - 2011/05/07 - HDFFV-7583)
-
-* The parallel test, t_shapesame, in testpar/, may run for a long time and may
- be terminated by the alarm signal. If that happens, one can increase the
- alarm seconds (default is 1200 seconds = 20 minutes) by setting the
- environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
- (60 minutes). Note that the t_shapesame test may fail in some systems
- (see the "While working on the 1.8.6 release..." problem below). If
- it does, it will waste more time if $HDF5_ALARM_SECONDS is set
- to a larger value.
- (AKC - 2011/05/07)
-
-* Shared Fortran libraries are not quite working on AIX. While they are
- generated when --enable-shared is specified, the fortran and hl/fortran
- tests fail. We are looking into the issue. HL and C++ shared libraries
- should now be working as intended, however.
- (MAM - 2011/04/20)
-
-* The --with-mpe configure option does not work with Mpich2.
- (AKC - 2011/03/10)
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or file systems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
- (NAF - 2011/01/19)
-
-* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added in. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug in 1.8 library. Because there's only one user
- complaining about it, we (Elena, Quincey, and I) decided to leave it as
- it is (see bug report #1279). Quincey will make a plan for 1.10.
- (SLU - 2010/02/02)
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
- (MAM - 2009/11/04)
-
-* Parallel tests failed with 16 processes with data inconsistency at testphdf5
- / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
- collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
- with MPI IO.
- (CMC - 2009/04/28)
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- (SLU - 2005/06/30)
-
-
-%%%%1.8.13%%%%
-
-
-HDF5 version 1.8.13 released on 2014-05-05
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.12 and
-HDF5-1.8.13, and contains information on the platforms tested and
-known problems in HDF5-1.8.13.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.13 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.13 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.13 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.13 (current
-release) versus Release 1.8.12":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.12
-- Supported Platforms
-- Supported Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - Autotools: Automake updated to 1.14.1 (ADB - 2014/04/08)
-
- - CMake: Moved minimum CMake version to 2.8.11 which enables better library
- include processing. (ADB - 2014/03/26)
-
- - When configuring a thread-safe HDF5 Library it is no longer necessary
- to specify --enable-threadsafe with --with-pthreads if the Pthreads
- library is in a standard location. (DER - 2014/04/11 HDFFV-8693)
-
- Library
- -------
- - Added an H5free_memory API call. This should be used to free memory
- that has been allocated by HDF5 API calls. H5Tget_member_name and
- H5Pget_class_name are two examples. The main motivation for this call
- is Windows, where it is common for application code and the HDF5 Library
- to be using different C run-time libraries (CRT). Using the new call
- ensures that the same CRT handles both the allocation and free. This
- new function can also be useful in any case where the library uses a
- different memory manager than the application, such as when a debug
- memory manager is in use or when the HDF5 Library is wrapped for use
- in a managed language like Python or Java. Fixes HDFFV-7710, 8519,
- and 8851. (DER - 2014/04/11)
-
- - The Core VFD (aka Memory VFD) can now be configured to track dirty
- regions in the file and only write out the changed regions on
- flush/close. Additionally, a "page aggregation" size can be set that
- will aggregate small writes into larger writes. For example, setting
- a 1 MiB page aggregation size will logically partition the the
- in-memory file into 1 MiB pages that will be written out in their
- entirety if even a single byte is dirtied. The feature is controlled
- via the new H5Pset/get_core_write_tracking() API call. A new
- "core_paged" target has been added to the check-vfd target in
- test/Makefile.am that exercises the feature over all HDF5 VFD-aware
- tests. (DER - 2014/04/12)
-
- Parallel Library
- ----------------
- - Removed MPI-POSIX VFD, as it wasn't helping anyone and was just
- generating support questions. Application developers performing
- parallel I/O should always use the MPI-IO VFD.
- (QAK - 2014/03/28 HDFFV-8659)
-
- - Improved parallel I/O support to allow collective I/O on point
- selections. (QAK - 2014/03/15)
-
- Tools
- -----
- - None
-
- High-Level APIs
- ---------------
- - None
-
- Fortran API
- -----------
- - Wrappers h5pset_file_image_f and h5pget_file_image_f were added to the
- library. (MSB - 2014/1/2014)
-
- C++ API
- -------
- - The following new features are added:
- + Wrappers to class H5Object to get an object's name (HDFFV-8548).
- ssize_t getObjName(char *obj_name, size_t buf_size = 0)
- ssize_t getObjName(H5std_string& obj_name, size_t len = 0)
- H5std_string getObjName()
- + Wrappers to class H5CommonFG to get a child object's type from a
- group or file (HDFFV-8367).
- H5O_type_t childObjType(const H5std_string& objname)
- H5O_type_t childObjType(const char* objname)
- H5O_type_t childObjType(hsize_t index,
- H5_index_t index_type=H5_INDEX_NAME,
- H5_iter_order_t order=H5_ITER_INC, const char* objname=".")
- + Wrappers to class DSetMemXferPropList for setting/getting a transform
- property list (HDFFV-7907).
- DSetMemXferPropList(const char* expression);
- void setDataTransform(const char* expression)
- void setDataTransform(const H5std_string& expression)
- ssize_t getDataTransform(char* exp, size_t buf_size=0)
- H5std_string getDataTransform()
- + Wrapper to CompType for setting size to compound datatype (HDFFV-8642).
- void setSize(size_t size)
- + Overloaded functions to provide prototypes that declare constant
- arguments const (HDFFV-3384). These include:
- DataSet::fillMemBuf
- DataSet::getVlenBufSize
- DataSpace::extentCopy
- DataType::commit
- FileAccPropList::setSplit
- H5File::getVFDHandle
- + Additional overload to class H5Location to get a comment as a char*
- ssize_t getComment(const char* name, size_t buf_size, char* comment)
- + Additional overloads to class Attribute to get an attribute's name for
- convenience:
- ssize_t getName(char* attr_name, size_t buf_size=0)
- ssize_t getName(H5std_string& attr_name, size_t buf_size=0)
- (BMR, 2014/04/15)
- + A static wrapper to Exception for printing the error stack without an
- instance of Exception
- static void printErrorStack(FILE* stream = stderr,
- hid_t err_stack = H5E_DEFAULT);
- (BMR, 2014/04/25)
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- Mac OS X 10.6 Snow Leopard is not supported by Apple any more. In view of
- the added support of Mac OS X 10.9, Mac OS X 10.6 is retired from HDF5
- supported platforms. (AKC - 2014/03/14 HDFFV-8704)
-
- Mac OS X 10.9 Mavericks is supported. (AKC - 2014/03/04 HDFFV-8694)
-
-
-Bug Fixes since HDF5-1.8.12
-===========================
-
- Configuration
- -------------
- - CMake: When CMake commands are executed individually on the command line
- and the external filters are being built, the CMAKE_BUILD_TYPE define
- must be set to the same value as the configuration
- (-DCMAKE_BUILD_TYPE:STRING=Release if using -C Release). This is needed
- by the the szip and zlib filter build commands. (ADB - HDFFV-8695)
-
- - CMake: Removed use of the XLATE_UTILITY program.
- (ADB - 2014/03/28 HDFFV-8640)
-
- - CMake: Added missing quotes in setting the CMAKE_EXE_LINKER_FLAGS for the
- MPI option. (ADB - 2014/02/27 HDFFV-8674)
-
- - CMake: Configuration of the HDF5 C++ or Fortran libraries with the
- thread-safety feature.
-
- C++ and/or Fortran + thread-safe is enforced as a non-supported
- configuration. This matches the autotools. (DER - 2014/04/11)
-
- - CMake: Configuration of static HDF5 C library with the thread-safety
- feature.
-
- Static + thread-safe + Win32 threads is not a supported configuration
- due to the inability to automatically clean up thread-local storage.
- This is expected to be fixed in a future release. In the meantime, a
- work-around that uses internal functionality may allow the combination
- to be used without resource leaks. Contact the help desk for more
- information. (DER - 2014/04/11)
-
- - Autotools: Several changes were done to configure and installcheck.
-
- An export of LD_LIBRARY_PATH= was
- removed from configure; make installcheck was revised to run
- scripts installed in share/hdf5_examples to use the installed h5cc, etc.
- to compile and run example source files also installed there.
-
- Make installcheck will now fail when a shared szip or other external lib
- file cannot be found in the same manner that executables compiled and
- linked with h5cc will fail to run when those lib files cannot be found
- after install. Make installcheck should pass after setting
- LD_LIBRARY_PATH to the szip location. (LRK - 2014/04/16)
-
- Library
- -------
- - A Gnu Make directive (.NOTPARALLEL) is added to fortran/test/Makefile.
-
- AIX native make does not support this directive and would fail if
- parallel make (e.g. make -j4) is used to build the library. AIX users
- either do not use parallel make or install Gnu Make to build the library.
- (AKC 2014/04/08 HDFFV-8738)
-
- - H5R.c: H5Rget_name gave an assertion failure if the "name" parameter
- was NULL.
-
- Fixed H5Rget_name to return the size of the buffer needed to read a
- name of the referenced object in this case. The size doesn't include
- the NULL terminator. H5Rget_name returns negative on failure.
- (MSB - 2014/01/22 HDFFV-8620)
-
- - H5Z.c: H5Zfilter_avail didn't check if a filter was available as a
- dynamically loaded filter. The error manifested itself in the h5repack
- tool when removing user-defined dynamically loaded filter.
-
- Added a code to find the filter among the dynamically loaded filters
- after the function fails to find it among the registered filters.
- (ADB - 2014/03/03 HDFFV-8629)
-
- - Memory leak: a memory leak was observed in conjunction to the
- H5TS_errstk_key_g thread-local variable allocated in the H5E_get_stack
- function in H5E.c.
-
- The shared HDF5 thread-safe library now no longer leaks thread-local
- storage resources on Windows with Win32 threads. Currently, there is
- no solution for this problem when HDF5 is statically built. We
- disabled the build of the static HDF5 thread-safe library with
- Win32 threads. (DER - 2014/04/11 HDFFV-8518)
-
- - H5Dio.c: Improved handling of NULL pointers to H5Dread/H5Dwrite
- calls. Credit to Jason Newton (nevion@gmail.com) for the original patch.
-
- H5Dwrite/read failed when a NULL pointer was passed for a data buffer
- and 0 elements were selected. Fixed. (QAK - 2014/04/16 HDFFV-8705)
-
- - Deprecated API (1_6 API): Improved handling of closing the library and
- re-accessing it with a deprecated routine.
-
- When a program used a deprecated API (for example, H5Gcreate1),
- closed the library, and reopened it again to access a group, dataset,
- datatype, dataspace, attribute, or property list, HDF5 failed to
- provide an identifier for the object. Fixed.
- (NAF, QAK - 2014/04/16 HDFFV-8232)
-
- Parallel Library
- ----------------
- - Fixed a missing H5F_Provisional module in HDF5mpio.f90
- (MSB - 2014/2/7 HDFFV-8651)
-
- Performance
- -------------
- - None
-
- Tools
- -----
- - The h5diff tool would report that a datafile compared with an exact
- copy of the same datafile had differences. This was due to the issue
- below of reading un-written chunks. This problem is also fixed.
- (AKC - 2014/05/01 HDFFV-8637)
-
- - The h5dump and h5diff utilities occasionally produced different output
- between Linux and Windows systems. This has been fixed.
-
- This happened to datasets that used chunked storage, with default fill
- values, and some of the chunks had not been written.
- When the dataset was read, the library failed to write the default fill
- values to parts of the use buffer that were associated with the unwritten
- chunks. (JP - 2014/05/01 HDFFV-8247)
-
- - The compress option is retired from bin/release.
- (AKC - 2014/04/25 HDFFV-8755)
-
- - bin/release has a new option "zip" that produces a release zip file for
- the Windows platform. (AKC - 2014/04/24 HDFFV-8433)
-
- - h5diff: Several failures relating to handling of strings attributes
- are fixed.
-
- The tool crashed or gave an error message when one of the strings had
- fixed size type and another variable-length size type. h5diff now flags such
- strings as "not comparable". We plan to enhance the tool to handle
- strings of the different types in the future releases.
- (AKC - 2014/04/18 HDFFV-8625, 8639, 8745)
-
- - h5repack: h5repack would not remove user-defined filters.
- Fixed by modifying h5repack to check if the filter is registered or
- can be dynamically loaded. (ADB - 2014/03/03 HDFFV-8629)
-
- F90 API
- -------
- - H5D_CHUNK_CACHE_NSLOTS_DFLT_F and H5D_CHUNK_CACHE_NBYTES_DFLT_F were
- changed from the default KIND for INTEGER to INTEGER of KIND size_t.
- (MSB - 2014/3/31 HDFFV-8689)
-
- C++ API
- ------
- - Added throw() to all exception destructors. Credit to Jason Newton
- (nevion@gmail.com) for the patch. (BMR - 2014/4/15 HDFFV-8623)
- - Changed the default value for H5Location::getComment from 256 to 0
- to conform to C function and because it makes more sense.
- (BMR - 2014/4/15)
-
- High-Level APIs:
- ------
- - None
-
- Fortran High-Level APIs:
- ------
- - None
-
- Testing
- -------
- - testhdf5 now exits with EXIT_SUCCESS(0) if no errors, else
- EXIT_FAILURE(1). (AKC - 2014/01/27 HDFFV-8572)
-
- - The big test now pays attention to the HDF5_DRIVER environment variable.
- Previously, it would run all tests with the family, stdio, and sec2
- virtual file drivers (VFDs) for each VFD in the check-vfd make target,
- regardless of the variable setting. It now checks the variable and
- either runs the appropriate VFD-specific tests or skips as needed.
- This saves much testing time. Fixes HDFFV-8554. (DER - 2014/04/11)
-
-Supported Platforms
-===================
-The following platforms are supported and have been tested for this release.
-They are built with the configure process unless specified otherwise.
-
- AIX 5.3 xlc 10.1.0.5
- (NASA G-ADA) xlC 10.1.0.5
- xlf90 12.1.0.6
- gmake v3.82
-
- Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP i686 i686 i386 compilers for 32-bit applications;
- (jam) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
- Version 4.8.2
- PGI C, Fortran, C++ Compilers for 32-bit
- applications;
- Version 13.7-0
- Intel(R) C, C++, Fortran Compiler for 32-bit
- applications;
- Version 14.0.2 (Build 20140120)
-
- Linux 2.6.18-371.6.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers for 64-bit applications;
- (koala) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
- Version 4.8.2
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 13.7-0
- Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64;
- Version 14.0.2 (Build 20140120)
-
- Linux 2.6.32-431.11.2.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (platypus) Version 4.4.7 20120313
- Version 4.8.2
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 13.7-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 14.0.2 (Build 20140120)
-
- Linux 2.6.32-431.11.2.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
- IBM XL C/C++ V11.1
- IBM XL Fortran V13.1
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2008 w/ Intel Fortran 14 (cmake)
- Visual Studio 2010 w/ Intel Fortran 14 (cmake)
- Visual Studio 2012 w/ Intel Fortran 14 (cmake)
- Cygwin(CYGWIN_NT-6.1 1.7.28(0.271/5/3) gcc(4.8.2) compiler and gfortran)
- (cmake and autotools)
-
- Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 14 (cmake)
- Visual Studio 2010 w/ Intel Fortran 14 (cmake)
- Visual Studio 2012 w/ Intel Fortran 14 (cmake)
-
- Windows 8.1 Visual Studio 2012 w/ Intel Fortran 14 (cmake)
-
- Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 14 (cmake)
-
- Mac OS X Lion 10.7.3 Apple clang/clang++ version 3.0 from Xcode 4.6.1
- 64-bit gfortran GNU Fortran (GCC) 4.6.2
- (duck) Intel icc/icpc/ifort version 13.0.3
-
- Mac OS X Mt. Lion 10.8.5 Apple clang/clang++ version 5.0 from Xcode 5.0.2
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (swallow/kite) Intel icc/icpc/ifort version 14.0.2
-
- Mac OS X Mavericks 10.9.2 Apple clang/clang++ version 5.1 from Xcode 5.1
- 64-bit gfortran GNU Fortran (GCC) 4.8.2
- (wren/quail) Intel icc/icpc/ifort version 14.0.2
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-Solaris2.11 32-bit n y/y n y y y
-Solaris2.11 64-bit n y/y n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y n y y y
-Windows 7 Cygwin n y/y n y y y
-Windows 8.1 n y/y n y y y
-Windows 8.1 x64 n y/y n y y y
-Mac OS X Lion 10.7.3 64-bit n y/y n y y y
-Mac OS X Mountain Lion 10.8.1 64-bit n y/y n y y y
-Mac OS X Mavericks 10.9.1 64-bit n y/y n y y y
-AIX 5.3 32- and 64-bit n y/n n y y y
-CentOS 5.9 Linux 2.6.18-308 i686 GNU y y/y y y y y
-CentOS 5.9 Linux 2.6.18-308 i686 Intel n y/y n y y y
-CentOS 5.9 Linux 2.6.18-308 i686 PGI n y/y n y y y
-CentOS 5.9 Linux 2.6.18 x86_64 GNU n y/y n y y y
-CentOS 5.9 Linux 2.6.18 x86_64 Intel n y/y n y y y
-CentOS 6.4 Linux 2.6.32 x86_64 GNU y y/y y y y y
-CentOS 6.4 Linux 2.6.32 x86_64 Intel n y/y n y y y
-CentOS 6.4 Linux 2.6.32 x86_64 PGI n y/y n y y y
-Linux 2.6.32-431.11.2.el6.ppc64 n y/n n y y y
-OpenVMS IA64 V8.4 n y/n n y y n
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.11 32-bit y y y y
-Solaris2.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 8.1 y y y y
-Windows 8.1 x64 y y y y
-Mac OS X Lion 10.7.3 64-bit y n y y
-Mac OS X Mountain Lion 10.8.1 64-bit y n y y
-Mac OS X Mavericks 10.9.1 64-bit y n y y
-AIX 5.3 32- and 64-bit y n n y
-CentOS 5.9 Linux 2.6.18-308 i686 GNU y y y y
-CentOS 5.9 Linux 2.6.18-308 i686 Intel y y y n
-CentOS 5.9 Linux 2.6.18-308 i686 PGI y y y n
-CentOS 5.9 Linux 2.6.18 x86_64 GNU y y y y
-CentOS 5.9 Linux 2.6.18 x86_64 Intel y y y n
-CentOS 6.4 Linux 2.6.32 x86_64 GNU y y y n
-CentOS 6.4 Linux 2.6.32 x86_64 Intel y y y n
-CentOS 6.4 Linux 2.6.32 x86_64 PGI y y y n
-Linux 2.6.32-431.11.2.el6.ppc64 y y y n
-OpenVMS IA64 V8.4 n n n n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.18-308.13.1.el5PAE MPICH mpich 3.1 compiled with
- #1 SMP i686 i686 i386 gcc 4.8.2 and gfortran 4.8.2
- (jam) g95 (GCC 4.0.3 (g95 0.94!)
-
- Linux 2.6.18-431.11.2.el6 MPICH mpich 3.1 compiled with
- #1 SMP x86_64 GNU/Linux gcc 4.8.2 and gfortran 4.8.2
- (platypus) g95 (GCC 4.0.3 (g95 0.94!)
-
- FreeBSD 8.2-STABLE i386 gcc 4.5.4 [FreeBSD] 20110526
- (loyalty) gcc 4.6.1 20110527
- g++ 4.6.1 20110527
- gfortran 4.6.1 20110527
-
- FreeBSD 8.2-STABLE amd64 gcc 4.5.4 [FreeBSD] 20110526
- (freedom) gcc 4.6.1 20110527
- g++ 4.6.1 20110527
- gfortran 4.6.1 20110527
-
- Debian7.1.0 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
- gcc (Debian 4.7.2-5) 4.7.2
- GNU Fortran (Debian 4.7.2-5) 4.7.2
- (cmake and autotools)
-
- Fedora20 3.11.10-301.fc20.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.8.2 20131212 (Red Hat 4.8.2-7)
- GNU Fortran (GCC) 4.8.2 20130603 (Red Hat 4.8.2-7)
- (cmake and autotools)
-
- SUSE 13.1 3.11.6-4-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.8.1
- GNU Fortran (SUSE Linux) 4.8.1
- (cmake and autotools)
-
- Ubuntu 13.10 3.11.0-13-generic #20-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.8.1-10ubuntu8) 4.8.1
- GNU Fortran (Ubuntu/Linaro 4.8.1-10ubuntu8) 4.8.1
- (cmake and autotools)
-
- Cray Linux Environment (CLE) PrgEnv-pgi/4.0.46
- hopper.nersc.gov pgcc 12.5-0 64-bit target on x86-64 Linux -tp shanghai
- pgf90 12.5-0 64-bit target on x86-64 Linux -tp shanghai
- pgCC 12.5-0 64-bit target on x86-64 Linux -tp shanghai
-
-
-Known Problems
-==============
-* When reading or writing a dataset (H5Dread/H5Dwrite) with a large selection
- size (e.g., 2GB ~= 500 million of 4 bytes integers or floating point
- numbers), some I/O systems may not be able to process it correctly.
- We advise users to find out system limits before using large selections. If
- I/O size limits exist, application should use HDF5 partial I/O capabilities
- (e.g., H5Sselect_hyperslab(...)) to divide large requests into smaller sizes.
- In this case we also advise users not to use chunk storage sizes larger that
- 2GB since the HDF5 library performs I/O on the entire chunk. We will work
- on the HDF5 library to divide large data requests to smaller I/O requests.
- (AKC 2014/05/02 HDFFV-8479)
-
-* Due to an Intel compiler bug introduced in version 14.0.1, the HDF5 FORTRAN
- wrappers do not work with configure option --enable-fortran2003.
- However, the option --enable-fortran works with Intel 14.0.1. The compiler
- bug was fixed in Intel version 14.0.2 and resolved the issue.
- (MSB - 2014/4/15)
-
-* Due to a PGI compiler bug introduced in versions before 13.3 and versions
- after 14.2, the FORTRAN test 'Testing get file image' will fail.
- (MSB - 2014/4/15)
-
-* On CYGWIN, when building the library dynamically, testing will fail on
- dynamically loaded filters. The test process will build dynamic filter
- libraries with the *.dll.a extension, and the HDF5 Library will be looking
- for *.so libraries. Entered as issue HDFFV-8736. (ADB - 2014/04/14)
-
-* A Gnu Make directive (.NOTPARALLEL) is added to fortran/test/Makefile.
- AIX native make does not support this directive and would fail if
- parallel make (e.g. make -j4) is used to build the library. AIX users
- either do not use parallel make or install Gnu Make to build the library.
- (AKC 2014/04/08 HDFFV-8738)
-
-* CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
- catches some undefined behavior in the alignment algorithm of the macro
- DETECT_I in H5detect.c. Since the algorithm is trying to detect the alignment
- of integers, ideally the flag -fcatch-undefined-behavior should not to be
- used for H5detect.c. In the future, we can separate flags for H5detect.c
- from the rest of the library. (SLU - 2013/10/16 HDFFV-8147)
-
-* Make provided by Solaris fails in "make check". Solaris users should use
- gmake to build and install the HDF5 software. (AKC - 2013/10/08 - HDFFV-8534)
-
-* On OpenVMS, two soft conversion functions (H5T__conv_i_f and H5T__conv_f_i)
- have bugs. They convert data between floating-point numbers and integers.
- But the library's default is hard conversion. The user should avoid
- explicitly enabling soft conversion between floating-point numbers and
- integers. (Issue VMS-8; SLU - 2013/09/19)
-
-* On OpenVMS, ZLIB 1.2.8 library doesn't work properly. ZLIB 1.2.5 works
- fine. So please use ZLIB 1.2.5 to build HDF5 library. (Issue VMS-5;
- SLU 2013/09/19)
-
-* When building using the Cray compilers on Cray machines, HDF5
- configure mistakenly thinks the compiler is an intel compiler and
- sets the -std=c99 flag which breaks configure on Cray. To build HDF5
- properly on a Cray machine, please consult with the instructions in
- INSTALL_parallel for building on Hopper.
- (MSC - 2013/04/26 - HDFFV-8429)
-
-* The 5.9 C++ compiler on Sun failed to compile a C++ test ttypes.cpp. It
- complains with this message:
- "/home/hdf5/src/H5Vprivate.h", line 130: Error: __func__ is not defined.
-
- The reason is that __func__ is a predefined identifier in C99 standard. The
- HDF5 C library uses it in H5private.h. The test ttypes.cpp includes
- H5private.h (H5Tpkg.h<-H5Fprivate.h<-H5Vprivate.h<-H5private.h). Sun's 5.9
- C++ compiler doesn't support __func__, thus fails to compile the C++ test.
- But Sun's 5.11 C++ compiler does. To check whether your Sun C++ compiler
- knows this identifier, try to compile the following simple C++ program:
- #include
-
- int main(void)
- {
- printf("%s\n", __func__);
- return 0;
- }
- (SLU - 2012/11/5)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
- native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
- ports (and probably gcc releases after that).
- (QAK - 2012/10/19)
-
-* The following h5dump test case fails in BG/P machines (and potentially other
- machines that use a command script to launch executables):
-
- h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
- tno-subset.h5
-
- This is due to the embedded spaces in the dataset name being interpreted
- by the command script launcher as meta-characters, thus passing three
- arguments to h5dump's -d flag. The command passes if run by hand, just
- not via the test script.
- (AKC - 2012/05/03)
-
-* On hopper, the build failed when RUNSERIAL and RUNPARALLEL are set
- to aprun -np X, because the H5lib_settings.c file was not generated
- properly. Not setting those environment variables works, because
- configure was able to automatically detect that it's a Cray system
- and used the proper launch commands when necessary.
- (MSC - 2012/04/18)
-
-* The data conversion test dt_arith.c fails in "long double" to integer
- conversion on Ubuntu 11.10 (3.0.0.13 kernel) with GCC 4.6.1 if the library
- is built with optimization -O3 or -O2. The older GCC (4.5) or newer kernel
- (3.2.2 on Fedora) doesn't have the problem. Users should lower the
- optimization level (-O1 or -O0) by defining CFLAGS in the command line of
- "configure" like:
-
- CFLAGS=-O1 ./configure
-
- This will overwrite the library's default optimization level.
- (SLU - 2012/02/07 - HDFFV-7829)
- This issue is no longer present on Ubuntu 12.10 (3.5.0 kernel) with
- gcc 4.7.2.
-
-* The STDIO VFD does not work on some architectures, possibly due to 32/64
- bit or large file issues. The basic STDIO VFD test is known to fail on
- 64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
- 10.7.0. The STDIO VFD test has been disabled while we investigate and
- a fix should appear in a future release.
- (DER - 2011/10/14 - HDFFV-8235)
-
-* h5diff can report inconsistent results when comparing datasets of enum type
- that contain invalid values. This is due to how enum types are handled in
- the library and will be addressed in a future release.
- (DER - 2011/10/14 - HDFFV-7527)
-
-* The links test can fail under the stdio VFD due to some issues with external
- links. This will be investigated and fixed in a future release.
- (DER - 2011/10/14 - HDFFV-7768)
-
-* After the shared library support was fixed for some bugs, it was discovered
- that "make prefix=XXX install" no longer works for shared libraries. It
- still works correctly for static libraries. Therefore, if you want to
- install the HDF5 shared libraries in a location such as /usr/local/hdf5,
- you need to specify the location via the --prefix option during configure
- time. E.g, ./configure --prefix=/usr/local/hdf5 ...
- (AKC - 2011/05/07 - HDFFV-7583)
-
-* The parallel test, t_shapesame, in testpar/, may run for a long time and may
- be terminated by the alarm signal. If that happens, one can increase the
- alarm seconds (default is 1200 seconds = 20 minutes) by setting the
- environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
- (60 minutes). Note that the t_shapesame test may fail in some systems
- (see the "While working on the 1.8.6 release..." problem below). If
- it does, it will waste more time if $HDF5_ALARM_SECONDS is set
- to a larger value.
- (AKC - 2011/05/07)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD.
- (QAK - 2011/04/26)
-
-* Shared Fortran libraries are not quite working on AIX. While they are
- generated when --enable-shared is specified, the fortran and hl/fortran
- tests fail. We are looking into the issue. HL and C++ shared libraries
- should now be working as intended, however.
- (MAM - 2011/04/20)
-
-* The --with-mpe configure option does not work with Mpich2.
- (AKC - 2011/03/10)
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or file systems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
- (NAF - 2011/01/19)
-
-* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added in. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug in 1.8 library. Because there's only one user
- complaining about it, we (Elena, Quincey, and I) decided to leave it as
- it is (see bug report #1279). Quincey will make a plan for 1.10.
- (SLU - 2010/02/02)
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
- (MAM - 2009/11/04)
-
-* Parallel tests failed with 16 processes with data inconsistency at testphdf5
- / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
- collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
- with MPI IO.
- (CMC - 2009/04/28)
-
-* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- (SLU - 2005/06/30)
-
-
-%%%%1.8.12%%%%
-
-
-HDF5 version 1.8.12 released on 2013-11-04
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.11 and
-HDF5-1.8.12, and contains information on the platforms tested and
-known problems in HDF5-1.8.12.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.12 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.12 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.12 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.12 (current
-release) versus Release 1.8.11":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.11
-- Supported Platforms
-- Supported Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - Added a configuration option to change the default plugin path.
- The configure option is --with-default-plugindir=location.
- The cmake option is -DH5_DEFAULT_PLUGINDIR:PATH=location.
- HDFFV-8513. (ADB 2013/09/04)
- - Renamed FFLAGS to FCFLAGS in configure. (ADB 2013/08/13)
- - CMake can now package a compressed examples file, the default for
- Windows binaries from HDF Group. (ADB - 2013/07/22)
-
- Library
- -------
- - None
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - h5repack: Added the ability to use plugin filters to read and write
- files. The option uses the filter number. HDFFV-8345
- (ADB - 2013/09/04).
- - h5dump: Added the option -N --any_path, which searches the file for
- paths that match the search path. HDFFV-7989 (ADB - 2013/08/12).
- - h5dump: Added the optional arg 0 to -A, which excludes attributes
- from display. HDFFV-8134 (ADB - 2013/08/01).
-
- High-Level APIs
- ---------------
- - None
-
- Fortran API
- -----------
- - None
-
- C++ API
- -------
- - Added tutorial examples to C++/examples. They can be installed by
- "make install-examples" and, in the installed directory, they can be
- executed by running the script file run-c++-ex.sh. (BMR - 2013/09/28)
- - A new class, H5::H5Location, is added to represent the location concept
- in the C library. It is a base class to H5::H5File and H5::H5Ojbect,
- whose member functions are moved into H5::H5Location. H5::H5File can
- now inherent those functions. As a result, an H5::H5File object can have
- an attribute. (BMR - 2013/09/27)
- - Added wrappers for H5Rget_obj_type2 to retrieve the type of the object
- that an object reference points to. (BMR - 2013/09/27)
- H5O_type_t H5Location::getRefObjType(void *ref, H5R_type_t ref_type)
- - Added wrappers for H5Aexist to check whether an attribute exists given
- a name. (BMR - 2013/09/27)
- bool H5::H5Location::attrExists(const char* name)
- bool H5::H5Location::attrExists(const H5std_string& name)
- - Added a number of overloaded functions for convenience. (BMR - 2013/09/27)
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - None
-
-Bug Fixes since HDF5-1.8.11
-===========================
-
- Configuration
- -------------
- - Modified H5detect.c to scan floating point types for padding bits before
- analyzing the type further. This should fix problems with gcc 4.8.
- (NAF - 2013/09/19 - HDFFV-8523/HDFFV-8500)
- - HDF5 rpaths are no longer encoded in the library files when configured
- with --disable-sharedlib-rpath. (LRK-2013-09-23 - HDFFV-8276)
-
- Library
- -------
- - Added const qualifier to source buffer parameters in H5Dgather and
- H5D_scatter_func_t (H5Dscatter callback). (NAF - 2013/7/09)
-
- - CMake now creates *.so.{lt_version} files with the same version as
- configure. (ADB - 2013/06/05 HDFFV-8437)
-
- Parallel Library
- ----------------
- - None
-
- Performance
- -------------
- - None
-
- Tools
- -----
- - h5dump: Added the option -N --any_path, which searches the file for
- paths that match the search path. HDFFV-7989 (ADB - 2013/08/12).
- - h5dump: Added the optional arg 0 to -A, which excludes attributes
- from display. HDFFV-8134 (ADB - 2013/08/01).
- - h5dump correctly exports subsetted data to a file, using the --output
- option. (ADB - 2013/06/07 HDFFV-8447)
- - h5cc and other compile scripts now default to linking shared libraries
- when HDF5 is configured with the --disable-static option.
- (LRK - 2013-09-23 - HDFFV-8141)
-
- F90 API
- -------
- - None
-
- C++ API
- ------
- - None
-
- High-Level APIs:
- ------
- - None
-
- Fortran High-Level APIs:
- ------
- - None
-
- Testing
- -------
- - test/big sometimes failed with the message of "file selection+offset not
- within extent". This has been fixed. (AKC - 2013/09/28 HDFFV-8271).
- - tools/h5diff/testh5diff.sh is run in every "make check", even after it
- has passed in the previous run. It should not run again if there are no
- code changes. Fixed. (AKC - 2013/07/19 HDFFV-8392)
-
-Supported Platforms
-===================
-The following platforms are supported and have been tested for this release.
-They are built with the configure process unless specified otherwise.
-
- AIX 5.3 xlc 10.1.0.5
- (NASA G-ADA) xlC 10.1.0.5
- xlf90 12.1.0.6
-
- Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP i686 i686 i386 compilers for 32-bit applications;
- (jam) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
- Version 4.8.1
- PGI C, Fortran, C++ Compilers for 32-bit
- applications;
- Version 13.7-0
- Intel(R) C, C++, Fortran Compiler for 32-bit
- applications;
- Version 13.1.3 (Build 20130607)
-
- Linux 2.6.18-308.16.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers for 64-bit applications;
- (koala) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
- Version 4.8.1
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 13.7-0
- Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64;
- Version 13.1.3 (Build 20130607)
-
- Linux 2.6.32-358.18.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (platypus) Version 4.4.7 20120313
- Version 4.8.1
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 13.7-0
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 13.1.3 (Build 20130607)
-
- Linux 2.6.32-358.18.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
- IBM XL C/C++ V11.1
- IBM XL Fortran V13.1
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2008 w/ Intel Fortran 11 (cmake)
- Visual Studio 2010 w/ Intel Fortran 12 (cmake)
- Visual Studio 2012 w/ Intel Fortran 13 (cmake)
- Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
- (cmake and autotools)
-
- Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11 (cmake)
- Visual Studio 2010 w/ Intel Fortran 12 (cmake)
- Visual Studio 2012 w/ Intel Fortran 13 (cmake)
-
- Windows 8.1 Visual Studio 2012 w/ Intel Fortran 13 (cmake)
-
- Windows 8.1 x64 Visual Studio 2012 w/ Intel Fortran 13 (cmake)
-
- Mac OS X Snow Leopard 10.6.8 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 3.2.6
- Darwin Kernel Version 10.8.0 g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 3.2.6
- 64-bit gfortran GNU Fortran (GCC) 4.6.2
- (fred) Intel C (icc), Fortran (ifort), C++ (icpc)
- 12.1 Build 20120928
-
- Mac OS X Lion 10.7.3 Apple clang/clang++ version 3.0 from Xcode 4.6.1
- 64-bit gfortran GNU Fortran (GCC) 4.6.2
- (duck) Intel icc/icpc/ifort version 13.0.3
-
- Mac OS X Mountain Lion 10.8.1 Apple clang/clang++ version 4.2 from Xcode 4.6.1
- 64-bit gfortran GNU Fortran (GCC) 4.6.2
- (wren) Intel icc/icpc/ifort version 13.0.3
-
- OpenVMS IA64 V8.4 HP C V7.3-018
- HP Fortran V8.2-104939-50H96
- HP C++ V7.4-004
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-Solaris2.11 32-bit n y/y n y y y
-Solaris2.11 64-bit n y/y n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y n y y y
-Windows 7 Cygwin n y/n n y y y
-Windows 8.1 n y/y n y y y
-Windows 8.1 x64 n y/y n y y y
-Mac OS X Snow Leopard 10.6.8 64-bit n y/y n y y y
-Mac OS X Lion 10.7.3 64-bit n y/y n y y y
-Mac OS X Mountain Lion 10.8.1 64-bit n y/y n y y y
-AIX 5.3 32- and 64-bit n y/n n y y y
-CentOS 5.9 Linux 2.6.18-308 i686 GNU y y/y y y y y
-CentOS 5.9 Linux 2.6.18-308 i686 Intel n y/y n y y y
-CentOS 5.9 Linux 2.6.18-308 i686 PGI n y/y n y y y
-CentOS 5.9 Linux 2.6.18 x86_64 GNU y y/y y y y y
-CentOS 5.9 Linux 2.6.18 x86_64 Intel n y/y n y y y
-CentOS 5.9 Linux 2.6.18 x86_64 PGI n y/y n y y y
-CentOS 6.4 Linux 2.6.32 x86_64 GNU n y/y n y y y
-CentOS 6.4 Linux 2.6.32 x86_64 Intel n y/y n y y y
-Linux 2.6.32-358.2.1.el6.ppc64 n y/n n y y y
-OpenVMS IA64 V8.4 n y/n n y y n
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.11 32-bit y y y y
-Solaris2.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 8.1 y y y y
-Windows 8.1 x64 y y y y
-Mac OS X Snow Leopard 10.6.8 64-bit y n y n
-Mac OS X Lion 10.7.3 64-bit y n y y
-Mac OS X Mountain Lion 10.8.1 64-bit y n y y
-AIX 5.3 32- and 64-bit y n n y
-CentOS 5.9 Linux 2.6.18-308 i686 GNU y y y y
-CentOS 5.9 Linux 2.6.18-308 i686 Intel y y y n
-CentOS 5.9 Linux 2.6.18-308 i686 PGI y y y n
-CentOS 5.9 Linux 2.6.18 x86_64 GNU y y y y
-CentOS 5.9 Linux 2.6.18 x86_64 Intel y y y n
-CentOS 5.9 Linux 2.6.18 x86_64 PGI y y y n
-CentOS 6.4 Linux 2.6.32 x86_64 GNU y y y n
-CentOS 6.4 Linux 2.6.32 x86_64 Intel y y y n
-Linux 2.6.32-358.2.1.el6.ppc64 y y y n
-OpenVMS IA64 V8.4 n n n n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.18-308.13.1.el5PAE MPICH mpich2-1.4.1p1 compiled with
- #1 SMP i686 i686 i386 gcc 4.1.2 and gfortran 4.1.2
- (jam) g95 (GCC 4.0.3 (g95 0.94!)
-
- Linux 2.6.18-308.16.1.el5 MPICH mpich2-1.4.1p1 compiled with
- #1 SMP x86_64 GNU/Linux gcc 4.1.2 and gfortran 4.1.2
- (koala) g95 (GCC 4.0.3 (g95 0.94!)
-
- FreeBSD 8.2-STABLE i386 gcc 4.5.4 [FreeBSD] 20110526
- (loyalty) gcc 4.6.1 20110527
- g++ 4.6.1 20110527
- gfortran 4.6.1 20110527
-
- FreeBSD 8.2-STABLE amd64 gcc 4.5.4 [FreeBSD] 20110526
- (freedom) gcc 4.6.1 20110527
- g++ 4.6.1 20110527
- gfortran 4.6.1 20110527
-
- Debian7.1.0 3.2.0-4-amd64 #1 SMP Debian 3.2.46-1 x86_64 GNU/Linux
- gcc (Debian 4.7.2-5) 4.7.2
- GNU Fortran (Debian 4.7.2-5) 4.7.2
- (cmake and autotools)
-
- Fedora19 3.11.1-200.fc19.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.8.1 20130603 (Red Hat 4.8.1-1)
- GNU Fortran (GCC) 4.8.1 20130603 (Red Hat 4.8.1-1)
- (cmake and autotools)
-
- SUSE 12.3 3.7.10-1.16-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.7.2
- GNU Fortran (SUSE Linux) 4.7.2
- (cmake and autotools)
-
- Ubuntu 13.04 3.8.0-30-generic #44-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.7.3-1ubuntu1) 4.7.3
- GNU Fortran (Ubuntu/Linaro 4.7.3-1ubuntu1) 4.7.3
- (cmake and autotools)
-
- Cray Linux Environment (CLE) PrgEnv-pgi/4.0.46
- hopper.nersc.gov pgcc 12.5-0 64-bit target on x86-64 Linux -tp shanghai
- pgf90 12.5-0 64-bit target on x86-64 Linux -tp shanghai
- pgCC 12.5-0 64-bit target on x86-64 Linux -tp shanghai
-
-
-Known Problems
-==============
-* Several HDF5 command-line tools and tests leave behind generated files
- that are not cleaned up with "make clean" or "make distclean" when software
- is built in place. The issue will be addressed in the 1.8.13 release. We
- recommend to use build directory to compile and test HDF5 as described
- in the INSTALL file, section 4.2.
-
-* Source directory names with spaces in them will cause failures in configure
- or make on Mac (HDFFV-8152), Linux, and probably all other platforms. If a
- configure command with a space is run from a build directory, it will exit
- with an error message: "checking whether build environment is sane...
- configure: error: unsafe srcdir value: '/scr/lrknox/hdf5 v1.8.12'". If
- configure is run inside or below the directory with the space in the name,
- libtool will get the directory path from the system, put the part of the
- path before the space in the libdir variable in .../src/libhdf5.la, and
- then fail to find the nonexistent directory. This is a known libtool issue
- and the suggested workaround is to rename the directory without spaces.
- (LRK - 2013/10/22)
-
-* CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
- catches some undefined behavior in the alignment algorithm of the macro
- DETECT_I in H5detect.c (HDFFV-8147). This issue will be addressed in the
- next release. (SLU - 2013/10/16)
-
-* Running make check for the tools can fail in the tools tests if make was not
- run prior. The tests for the tools use other tools in the tests, therefore
- all the tools should be built before testing the tools. (ADB - 2013/10/09)
-
-* Make provided by Solaris fails in "make check". Solaris users should use
- gmake to build and install HDF5 software. (AKC - 2013/10/08 - HDFFV-8534)
-
-* On OpenVMS, two soft conversion functions (H5T__conv_i_f and H5T__conv_f_i)
- have bugs. They convert data between floating-point numbers and integers.
- But the library's default is hard conversion. The user should avoid
- explicitly enabling soft conversion between floating-point numbers and
- integers. (Issue VMS-8; SLU - 2013/09/19)
-
-* On OpenVMS, ZLIB 1.2.8 library doesn't work properly. ZLIB 1.2.5 works
- fine. So please use ZLIB 1.2.5 to build HDF5 library. (Issue VMS-5;
- SLU 2013/09/19)
-
-* When building using the Cray compilers on Cray machines, HDF5
- configure mistakenly thinks the compiler is an intel compiler and
- sets the -std=c99 flag which breaks configure on Cray. To build HDF5
- properly on a Cray machine, please consult with the instructions in
- INSTALL_parallel for building on Hopper.
- (MSC - 2013/04/26 - HDFFV-8429)
-
-* The h5dump and h5diff utilities occasionally produce different output
- between Linux and Windows systems. This is caused by lower-level library
- routines that fail to write fill values to the user's buffer when reading
- unallocated chunks from datasets that have a fill value set to
- H5D_FILL_VALUE_DEFAULT. Due to platform differences the return of
- spurious data values has only been encountered on Windows 32-bit systems.
- (Issue HDFFV-8247; JP - 2013/03/27)
-
-* The 5.9 C++ compiler on Sun failed to compile a C++ test ttypes.cpp. It
- complains with this message:
- "/home/hdf5/src/H5Vprivate.h", line 130: Error: __func__ is not defined.
-
- The reason is that __func__ is a predefined identifier in C99 standard. The
- HDF5 C library uses it in H5private.h. The test ttypes.cpp includes
- H5private.h (H5Tpkg.h<-H5Fprivate.h<-H5Vprivate.h<-H5private.h). Sun's 5.9
- C++ compiler doesn't support __func__, thus fails to compile the C++ test.
- But Sun's 5.11 C++ compiler does. To check whether your Sun C++ compiler
- knows this identifier, try to compile the following simple C++ program:
- #include
-
- int main(void)
- {
- printf("%s\n", __func__);
- return 0;
- }
- (SLU - 2012/11/5)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
- native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
- ports (and probably gcc releases after that).
- (QAK - 2012/10/19)
-
-* The following h5dump test case fails in BG/P machines (and potentially other
- machines that use a command script to launch executables):
-
- h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
- tno-subset.h5
-
- This is due to the embedded spaces in the dataset name being interpreted
- by the command script launcher as meta-characters, thus passing three
- arguments to h5dump's -d flag. The command passes if run by hand, just
- not via the test script.
- (AKC - 2012/05/03)
-
-* On hopper, the build failed when RUNSERIAL and RUNPARALLEL are set
- to aprun -np X, because the H5lib_settings.c file was not generated
- properly. Not setting those environment variables works, because
- configure was able to automatically detect that it is a Cray system
- and used the proper launch commands when necessary.
- (MSC - 2012/04/18)
-
-* The data conversion test dt_arith.c fails in "long double" to integer
- conversion on Ubuntu 11.10 (3.0.0.13 kernel) with GCC 4.6.1 if the library
- is built with optimization -O3 or -O2. The older GCC (4.5) or newer kernel
- (3.2.2 on Fedora) do not have the problem. Users should lower the
- optimization level (-O1 or -O0) by defining CFLAGS in the command line of
- "configure" like:
-
- CFLAGS=-O1 ./configure
-
- This will overwrite the library's default optimization level.
- (SLU - 2012/02/07 - HDFFV-7829)
- This issue is no longer present on Ubuntu 12.10 (3.5.0 kernel) with
- gcc 4.7.2.
-
-* The STDIO VFD does not work on some architectures, possibly due to 32/64
- bit or large file issues. The basic STDIO VFD test is known to fail on
- 64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
- 10.7.0. The STDIO VFD test has been disabled while we investigate and
- a fix should appear in a future release.
- (DER - 2011/10/14 - HDFFV-8235)
-
-* h5diff can report inconsistent results when comparing datasets of enum type
- that contain invalid values. This is due to how enum types are handled in
- the library and will be addressed in a future release.
- (DER - 2011/10/14 - HDFFV-7527)
-
-* The links test can fail under the stdio VFD due to some issues with external
- links. This will be investigated and fixed in a future release.
- (DER - 2011/10/14 - HDFFV-7768)
-
-* After the shared library support was fixed for some bugs, it was discovered
- that "make prefix=XXX install" no longer works for shared libraries. It
- still works correctly for static libraries. Therefore, if you want to
- install the HDF5 shared libraries in a location such as /usr/local/hdf5,
- you need to specify the location via the --prefix option during configure
- time. E.g, ./configure --prefix=/usr/local/hdf5 ...
- (AKC - 2011/05/07 - HDFFV-7583)
-
-* The parallel test, t_shapesame, in testpar/, may run for a long time and may
- be terminated by the alarm signal. If that happens, one can increase the
- alarm seconds (default is 1200 seconds = 20 minutes) by setting the
- environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
- (60 minutes). Note that the t_shapesame test may fail in some systems
- (see the "While working on the 1.8.6 release..." problem below). If
- it does, it will waste more time if $HDF5_ALARM_SECONDS is set
- to a larger value.
- (AKC - 2011/05/07)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD.
- (QAK - 2011/04/26)
-
-* Shared Fortran libraries are not quite working on AIX. While they are
- generated when --enable-shared is specified, the fortran and hl/fortran
- tests fail. We are looking into the issue. HL and C++ shared libraries
- should now be working as intended, however.
- (MAM - 2011/04/20)
-
-* The --with-mpe configure option does not work with Mpich2.
- (AKC - 2011/03/10)
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or file systems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
- (NAF - 2011/01/19)
-
-* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added in. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug in 1.8 library. Because there's only one user
- complaining about it, we (Elena, Quincey, and I) decided to leave it as
- it is (see bug report #1279). Quincey will make a plan for 1.10.
- (SLU - 2010/02/02)
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
- (MAM - 2009/11/04)
-
-* Parallel tests failed with 16 processes with data inconsistency at testphdf5
- / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
- collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
- with MPI IO.
- (CMC - 2009/04/28)
-
-* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- (SLU - 2005/06/30)
-
-
-%%%%1.8.11%%%%
-
-
-HDF5 version 1.8.11 released on 2013-05-08
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.10 and
-HDF5-1.8.11-*, and contains information on the platforms tested and
-known problems in HDF5-1.8.11-*.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.11 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.11 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.11 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.11 (current
-release) versus Release 1.8.10":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.10
-- Supported Platforms
-- Supported Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - Libtool version number is changed to 8.0.0 because there are API
- changes. See below for details. (AKC - 2013/05/07 HDFFV-8435)
- - Mac OS X 10.7 (Lion) and 10.8 (Mountain Lion) uses clang/clang++ as the
- default C and C++ compilers. (AKC - 2013/04/19 HDFFV-8245)
- - CMake minimum is now 2.8.10. (ADB 2013/1/14)
- - A new tool, cmakehdf5, which is a build command script similar to
- buildhdf5 is added and is available in the bin directory.
- (AKC - 2013/01/16 HDFFV-8336)
-
- Library
- -------
- - The library can load filter libraries dynamically during runtime. Users
- can set the search path through environment variable HDF5_PLUGIN_PATH
- and call H5Pset_filter to enable a dynamic filter. (SLU - 2013/04/08)
- - Added new API functions H5Dscatter and H5Dgather to scatter data to and
- and gather data from a selection within a memory buffer.
- (NAF - 2013/02/05)
- - The library now supports the data conversion from enumeration to numeric
- (integer and floating-point number) datatypes. See Issue HDFFV-8221.
- (SLU - 2012/10/23)
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - h5dump: added new option -O or -ddl to output the ddl text to a file. This
- is a complement to the -o or --output option, which redirects the data to
- a file. HDFFV-8229 (ADB - 2013/2/25)
-
- High-Level APIs
- ---------------
- - A new API function, H5DOwrite_chunk. This function writes a data chunk
- directly into a file, bypassing hyperslab selection, data conversion,
- and the filter pipeline. The user must be careful with the function and
- clearly understand the I/O process of the library. (SLU - 2013/2/11)
-
- Fortran API
- -----------
- - New API functions added (MSB - 2013/3/23):
-
- h5odecr_refcount_f, h5oexists_by_name_f, h5oget_comment_f,
- h5oget_comment_by_name_f, h5oincr_refcount_f, h5oopen_by_idx_f,
- h5oset_comment_f, h5oset_comment_by_name_f, h5oset_comment_by_name_f
-
- F2003: h5oget_info_f, h5oget_info_by_idx_f, h5ovisit_by_name_f
-
-
- C++ API
- -------
- - None
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - SunOS 5.11 (emu) 32-bit and 64-bit with Sun C/C++ 5.12 compiler and
- Sun Fortran 95 8.6 compiler.
- - Visual Studio 2012 w/ Intel Fortran 13 on Windows 7
- - g95 released new version recently and is tested in this release.
-
-Bug Fixes since HDF5-1.8.10
-==========================
-
- Configuration
- -------------
- - Fixed Thread-safe configure failure for the AIX platform.
- (AKC - 2013/04/19 HDFFV-8390)
- - Configure will check the result of header searches before searching for
- the library.
- Fixes HDFFV-8257 (ADB 2013/03/04)
- - HDF does not support building SHARED Fortran libraries on OSX. Added
- CMake code to check for this condition.
- Fixes HDFFV-8227 (ADB 2013/03/04)
- - CMake builds on Windows will no longer use legacy naming for libraries.
- The "dll" tag will no longer be added to the name of *.lib and *.dll.
- The option HDF_LEGACY_NAMING is now OFF by default.
- Fixes HDFFV-8292 (ADB 2013/01/30)
-
- Library
- -------
- - The library now behaves correctly when performing large I/O operations
- on Mac OS-X. Previously, single I/O operations > 2 GB would fail
- since the Darwin read/write calls cannot handle the number of bytes
- that their parameter types imply.
- Fixes HDFFV-7975 and HDFFV-8240 (DER 2013/01/07)
- - Fixed a bug in the core VFD that causes failures when opening files
- > 2 GB.
- Fixes HDFFV-8124 and HDFFV-8158 (DER 2013/01/07)
- - Fixed a bug where uninitialized memory was read during variable-length
- type conversion. This caused segfaults in netCDF. Fixes HDFFV-8159.
- (DER 2013/03/30)
- - Removed the H5Pset/get_dxpl_multi functions from the library. The
- intended functionality for them was never fully implemented, and they
- have always been fundamentally broken. NOTE: This does not affect
- setting the multi VFD or any expected VFD functionality. Multi VFD
- usage remains unchanged.
- Fixes HDFFV-8296. (DER 2013/03/30)
-
- Parallel Library
- ----------------
- - None
-
- Performance
- -------------
- - None
-
- Tools
- -----
- - h5redeploy is changed to do this by default:
- Installation directories:
- prefix architecture-independent files.
- exec_prefix architecture-dependent files, default is .
- libdir libraries, default is /lib.
- includedir header files, default is .
- This allows users to just change the first line of prefix=<...> and the
- effect will change libdir and includedir too. (AKC 2013/04/05 HDFFV-8358)
- - h5repack: Fixed failure to convert the layout of a small chunked
- dataset (size < 1K) to contiguous layout. HDFFV-8214 (JKM 2013/03/26)
- - h5dump: Fixed displaying compression ratio for unknown or user-defined
- filters. HDFFV-8344 (XCAO 2013/03/19)
- - h5dump: Changed UNKNOWN_FILTER to USER_DEFINED_FILTER for user defined
- filter. HDFFV-8346 (XCAO 2013/03/19)
- - h5diff: Fixed to return the correct exit code 1 when the program
- detects a unique extra attribute. Prior to this fix, h5diff returned
- exit code 0 indicating the two files are identical.
- HDFFV-7643 (JKM 2013/02/15)
- - h5dump: Fixed writing nulls to a binary file when exporting a dataset
- with compound string datatype. HDFFV-8169 (ADB 2013/1/31)
- - The following h5stat test case failed in BG/P machines (and potentially
- other machines that display extra output if an MPI task returns with a
- non-zero code.)
- Testing h5stat notexist.h5
- The test script was fixed to ignore the extra output. HDFFV-8233
- (AKC - 2012/11/30)
- - h5diff: Improved speed when comparing HDF5 files with lots of
- attributes. Much slower performance was identified with release versions
- from 1.8.7 to 1.8.10 compared to 1.8.6. (JKM 2012/10/19)
-
- F90 API
- -------
- - The integer type of the 'offset' argument in h5pset_external_f and
- h5pget_external_f was changed to INTEGER(KIND=OFF_T) to support 8-byte
- integers, matching the C type definition of off_t. (MSB - 2013/3/23)
- - h5fc updated to recognize .f95, .f03 and .f08 file extensions.
-
- C++ API
- ------
- - The C++ wrappers DSetMemXferPropList::setMulti/getMulti were removed
- because the C functions H5Pset/get_dxpl_multi functions are removed
- from the library. Fixes HDFFV-8296 by DER. (BMR 2013/03/30)
- - An exception thrown by an internal function was not propagating to the
- test program during stack unwinding, so it couldn't be caught by the
- test, and the program terminated "without an active exception." It
- seemed that the problem happened when c_str() was used to generate
- an equivalent const char* from a std::string and the resulting string
- was passed to the internal function. As a work-around, we added a
- try/catch around the the call to the internal function and when the
- exception is caught there, it is re-thrown. Fixes HDFFV-8067.
- (BMR 2013/03/30)
-
- High-Level APIs:
- ------
- - Fixed a problem with H5DSget_scale_name including the NULL terminator
- in the size calculation returned by the function. The API was changed
- to NOT include the NULL terminator in the size of name returned
- (MSB- 2013/2/10)
-
- Fortran High-Level APIs:
- ------
- - None
-
- Testing
- -------
- - In some Mac systems, testlibinfo.sh failed with this error:
- Check file ../src/.libs/libhdf5.7.dylib
- strings: object: ../src/.libs/libhdf5.7.dylib malformed object \
- (unknown load command 15)
- The strings command of Mac systems inspects library files, and older
- versions of strings may not know newer library formats, resulting
- in errors. Fixed by sending the library file as stdin to the strings
- command to avoid this problem. (AKC - 2013/03/08 HDFFV-8305)
- - Fixed a typo in the ERROR macro in test/testhdf5.h. It segmentation
- faulted when used before. (AKC - 2013/02/12 HDFFV-8267)
-
-Supported Platforms
-===================
-The following platforms are supported and have been tested for this release.
-They are built with the configure process unless specified otherwise.
-
- AIX 5.3 xlc 10.1.0.5
- (NASA G-ADA) xlC 10.1.0.5
- xlf90 12.1.0.6
-
- Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP i686 i686 i386 compilers for 32-bit applications;
- (jam) Version 4.1.2 20080704 (Red Hat 4.1.2-54)
- Version 4.6.3
- PGI C, Fortran, C++ Compilers for 32-bit
- applications;
- Version 11.9-0
- Version 12.5-0
- Intel(R) C, C++, Fortran Compiler for 32-bit
- applications;
- Version 12.1 (Build 20110811)
- Version 12.1 (Build 20120212)
-
- Linux 2.6.18-308.16.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers for 64-bit applications;
- (koala) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
- Version 4.6.3
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 11.9-0
- Version 12.5-0
- Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64;
- Version 12.1 (Build 20110811)
- Version 12.1 (Build 20120212)
-
- Linux 2.6.32-358.2.1.el6 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers:
- (platypus) Version 4.4.7 20120313
- Intel(R) C (icc), C++ (icpc), Fortran (icc)
- compilers:
- Version 12.1 20120212
-
- Linux 2.6.32-358.2.1.el6.ppc64 gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
- (ostrich) GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
- IBM XL C/C++ V11.1
- IBM XL Fortran V13.1
-
- SunOS 5.11 32- and 64-bit Sun C 5.12 SunOS_sparc
- (emu) Sun Fortran 95 8.6 SunOS_sparc
- Sun C++ 5.12 SunOS_sparc
-
- Windows 7 Visual Studio 2008 w/ Intel Fortran 11 (cmake)
- Visual Studio 2010 w/ Intel Fortran 12 (cmake)
- Visual Studio 2012 w/ Intel Fortran 13 (cmake)
- Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
- (cmake and autotools)
-
- Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11 (cmake)
- Visual Studio 2010 w/ Intel Fortran 12 (cmake)
- Visual Studio 2012 w/ Intel Fortran 13 (cmake)
- Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
- (cmake and autotools)
-
- Mac OS X Snow Leopard 10.6.8 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 3.2.6
- Darwin Kernel Version 10.8.0 g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 3.2.6
- 64-bit gfortran GNU Fortran (GCC) 4.6.2
- (fred) Intel C (icc), Fortran (ifort), C++ (icpc)
- 12.1 Build 20120928
-
- Mac OS X Lion 10.7.3 Apple clang/clang++ version 3.0 from Xcode 4.6.1
- 64-bit gfortran GNU Fortran (GCC) 4.6.2
- (duck) Intel icc/icpc/ifort version 13.0
-
- Mac OS X Mountain Lion 10.8.1 Apple clang/clang++ version 4.2 from Xcode 4.6.1
- 64-bit gfortran GNU Fortran (GCC) 4.6.2
- (wren) Intel icc/icpc/ifort version 13.0.1.119
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-Solaris2.11 32-bit n y/y n y y y
-Solaris2.11 64-bit n y/n n y y y
-Windows 7 y y/y n y y y
-Windows 7 x64 y y/y n y y y
-Windows 7 Cygwin n y/n n y y y
-Windows 7 x64 Cygwin n y/n n y y y
-Mac OS X Snow Leopard 10.6.8 64-bit n y/y n y y y
-Mac OS X Lion 10.7.3 64-bit n y/y n y y y
-Mac OS X Mountain Lion 10.8.1 64-bit n y/y n y y y
-AIX 5.3 32- and 64-bit n y/n n y y y
-CentOS 5.9 Linux 2.6.18-308 i686 GNU y y/y y y y y
-CentOS 5.9 Linux 2.6.18-308 i686 Intel n y/y n y y y
-CentOS 5.9 Linux 2.6.18-308 i686 PGI n y/y n y y y
-CentOS 5.9 Linux 2.6.18 x86_64 GNU y y/y y y y y
-CentOS 5.9 Linux 2.6.18 x86_64 Intel n y/y n y y y
-CentOS 5.9 Linux 2.6.18 x86_64 PGI n y/y n y y y
-CentOS 6.4 Linux 2.6.32 x86_64 GNU n y/n n y y y
-CentOS 6.4 Linux 2.6.32 x86_64 Intel n y/y n y y y
-Linux 2.6.32-358.2.1.el6.ppc64 n y/n n y y y
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.11 32-bit y y y y
-Solaris2.11 64-bit y y y y
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Windows 7 Cygwin n n n y
-Windows 7 x64 Cygwin n n n y
-Mac OS X Snow Leopard 10.6.8 64-bit y n y n
-Mac OS X Lion 10.7.3 64-bit y n y y
-Mac OS X Mountain Lion 10.8.1 64-bit y n y y
-AIX 5.3 32- and 64-bit y n n y
-CentOS 5.9 Linux 2.6.18-308 i686 GNU y y y y
-CentOS 5.9 Linux 2.6.18-308 i686 Intel y y y n
-CentOS 5.9 Linux 2.6.18-308 i686 PGI y y y n
-CentOS 5.9 Linux 2.6.18 x86_64 GNU y y y y
-CentOS 5.9 Linux 2.6.18 x86_64 Intel y y y n
-CentOS 5.9 Linux 2.6.18 x86_64 PGI y y y n
-CentOS 6.4 Linux 2.6.32 x86_64 GNU y y y n
-CentOS 6.4 Linux 2.6.32 x86_64 Intel y y y n
-Linux 2.6.32-358.2.1.el6.ppc64 y y y n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- Linux 2.6.18-308.13.1.el5PAE MPICH mpich2-1.4.1p1 compiled with
- #1 SMP i686 i686 i386 gcc 4.1.2 and gfortran 4.1.2
- (jam) g95 (GCC 4.0.3 (g95 0.94!)
-
- Linux 2.6.18-308.16.1.el5 MPICH mpich2-1.4.1p1 compiled with
- #1 SMP x86_64 GNU/Linux gcc 4.1.2 and gfortran 4.1.2
- (koala) g95 (GCC 4.0.3 (g95 0.94!)
-
- FreeBSD 8.2-STABLE i386 gcc 4.2.1 [FreeBSD] 20070719
- (loyalty) gcc 4.6.1 20110422
- g++ 4.6.1 20110422
- gfortran 4.6.1 20110422
-
- FreeBSD 8.2-STABLE amd64 gcc 4.2.1 [FreeBSD] 20070719
- (freedom) gcc 4.6.1 20110422
- g++ 4.6.1 20110422
- gfortran 4.6.1 20110422
-
- Debian6.0.7 2.6.32-5-amd64 #1 SMP x86_64 GNU/Linux
- gcc (Debian 4.4.5-8) 4.4.5
- GNU Fortran (Debian 4.4.5-8) 4.4.5
- (cmake and autotools)
-
- Fedora18 3.7.9-205.fc18.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.7.2 20121109 (Red Hat 4.7.2-8)
- GNU Fortran (GCC) 4.7.2 20120507 (Red Hat 4.7.2-8)
- (cmake and autotools)
-
- SUSE 12.3 3.7.10-1.1-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.7.2
- GNU Fortran (SUSE Linux) 4.7.2
- (cmake and autotools)
-
- Ubuntu 12.10 3.5.0-25-generic #39-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2
- GNU Fortran (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2
- (cmake and autotools)
-
- Cray Linux Environment (CLE) PrgEnv-pgi/4.0.46
- hopper.nersc.gov pgcc 12.5-0 64-bit target on x86-64 Linux -tp shanghai
- pgf90 12.5-0 64-bit target on x86-64 Linux -tp shanghai
- pgCC 12.5-0 64-bit target on x86-64 Linux -tp shanghai
-
-
-Known Problems
-==============
-
-* When building using the Cray compilers on Cray machines, HDF5
- configure mistakenly thinks the compiler is an intel compiler and
- sets the -std=c99 flag which breaks configure on Cray. To build HDF5
- properly on a Cray machine, please consult with the instructions in
- INSTALL_parallel for building on Hopper.
- (MSC - 2013/04/26 - HDFFV-8429)
-
-* The h5dump and h5diff utilities occasionally produce different output
- between Linux and Windows systems. This is caused by lower-level library
- routines that fail to write fill values to the user's buffer when reading
- unallocated chunks from datasets that have a fill value set to
- H5D_FILL_VALUE_DEFAULT. Due to platform differences the return of
- spurious data values has only been encountered on Windows 32-bit systems.
- (Issue HDFFV-8247; JP - 2013/03/27)
-
-* The 5.9 C++ compiler on Sun failed to compile a C++ test ttypes.cpp. It
- complains with this message:
- "/home/hdf5/src/H5Vprivate.h", line 130: Error: __func__ is not defined.
-
- The reason is that __func__ is a predefined identifier in C99 standard. The
- HDF5 C library uses it in H5private.h. The test ttypes.cpp includes
- H5private.h (H5Tpkg.h<-H5Fprivate.h<-H5Vprivate.h<-H5private.h). Sun's 5.9
- C++ compiler doesn't support __func__, thus fails to compile the C++ test.
- But Sun's 5.11 C++ compiler does. To check whether your Sun C++ compiler
- knows this identifier, try to compile the following simple C++ program:
- #include
-
- int main(void)
- {
- printf("%s\n", __func__);
- return 0;
- }
- (SLU - 2012/11/5)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
- native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
- ports (and probably gcc releases after that).
- (QAK - 2012/10/19)
-
-* The following h5dump test case fails in BG/P machines (and potentially other
- machines that use a command script to launch executables):
-
- h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
- tno-subset.h5
-
- This is due to the embedded spaces in the dataset name being interpreted
- by the command script launcher as meta-characters, thus passing three
- arguments to h5dump's -d flag. The command passes if run by hand, just
- not via the test script.
- (AKC - 2012/05/03)
-
-* On hopper, the build failed when RUNSERIAL and RUNPARALLEL are set
- to aprun -np X, because the H5lib_settings.c file was not generated
- properly. Not setting those environment variables works, because
- configure was able to automatically detect that it's a Cray system
- and used the proper launch commands when necessary.
- (MSC - 2012/04/18)
-
-* The data conversion test dt_arith.c fails in "long double" to integer
- conversion on Ubuntu 11.10 (3.0.0.13 kernel) with GCC 4.6.1 if the library
- is built with optimization -O3 or -O2. The older GCC (4.5) or newer kernel
- (3.2.2 on Fedora) doesn't have the problem. Users should lower the
- optimization level (-O1 or -O0) by defining CFLAGS in the command line of
- "configure" like:
-
- CFLAGS=-O1 ./configure
-
- This will overwrite the library's default optimization level.
- (SLU - 2012/02/07 - HDFFV-7829)
- This issue is no longer present on Ubuntu 12.10 (3.5.0 kernel) with
- gcc 4.7.2.
-
-* The STDIO VFD does not work on some architectures, possibly due to 32/64
- bit or large file issues. The basic STDIO VFD test is known to fail on
- 64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
- 10.7.0. The STDIO VFD test has been disabled while we investigate and
- a fix should appear in a future release.
- (DER - 2011/10/14 - HDFFV-8235)
-
-* h5diff can report inconsistent results when comparing datasets of enum type
- that contain invalid values. This is due to how enum types are handled in
- the library and will be addressed in a future release.
- (DER - 2011/10/14 - HDFFV-7527)
-
-* The links test can fail under the stdio VFD due to some issues with external
- links. This will be investigated and fixed in a future release.
- (DER - 2011/10/14 - HDFFV-7768)
-
-* After the shared library support was fixed for some bugs, it was discovered
- that "make prefix=XXX install" no longer works for shared libraries. It
- still works correctly for static libraries. Therefore, if you want to
- install the HDF5 shared libraries in a location such as /usr/local/hdf5,
- you need to specify the location via the --prefix option during configure
- time. E.g, ./configure --prefix=/usr/local/hdf5 ...
- (AKC - 2011/05/07 - HDFFV-7583)
-
-* The parallel test, t_shapesame, in testpar/, may run for a long time and may
- be terminated by the alarm signal. If that happens, one can increase the
- alarm seconds (default is 1200 seconds = 20 minutes) by setting the
- environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
- (60 minutes). Note that the t_shapesame test may fail in some systems
- (see the "While working on the 1.8.6 release..." problem below). If
- it does, it will waste more time if $HDF5_ALARM_SECONDS is set
- to a larger value.
- (AKC - 2011/05/07)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD.
- (QAK - 2011/04/26)
-
-* Shared Fortran libraries are not quite working on AIX. While they are
- generated when --enable-shared is specified, the fortran and hl/fortran
- tests fail. We are looking into the issue. HL and C++ shared libraries
- should now be working as intended, however.
- (MAM - 2011/04/20)
-
-* The --with-mpe configure option does not work with Mpich2.
- (AKC - 2011/03/10)
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or file systems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
- (NAF - 2011/01/19)
-
-* The library's test dt_arith.c showed a compiler's rounding problem on
- Cygwin when converting from unsigned long long to long double. The
- library's own conversion works fine. We defined a macro for Cygwin to
- skip this test until we can solve the problem.
- (SLU - 2010/05/05 - HDFFV-1264)
-
-* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added in. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug in 1.8 library. Because there's only one user
- complaining about it, we (Elena, Quincey, and I) decided to leave it as
- it is (see bug report #1279). Quincey will make a plan for 1.10.
- (SLU - 2010/02/02)
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
- (MAM - 2009/11/04)
-
-* Parallel tests failed with 16 processes with data inconsistency at testphdf5
- / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
- collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
- with MPI IO.
- (CMC - 2009/04/28)
-
-* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- (SLU - 2005/06/30)
-
-
-%%%%1.8.10-patch1%%%%
-
-
-HDF5 version 1.8.10-patch1 released on 2013-01-22
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.9 and
-HDF5 1.8.10, and contains information on the platforms tested and
-known problems in HDF5-1.8.10.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.10 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.10 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.10 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.10 (current
-release) versus Release 1.8.9":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.10
-- Bug Fixes since HDF5-1.8.9
-- Supported Platforms
-- Supported Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - A new tool, cmakehdf5, which is a build command script similar to
- buildhdf5 is added and is available in the bin directory.
- (AKC - 2013/01/21)
-
- Library
- -------
- - Updated to latest autotools and changed all hard *.sh scripts to
- configure managed *.sh.in files. Removed overloading of autotools
- TESTS variable by examples and tests. Renamed configure.in to
- configure.ac. (ADB - 2012/08/23 - HDFFV-8129)
- - The data sieve buffer size was set for all the datasets in the file. It
- could waste memory if any dataset size is smaller than the sieve buffer
- size. Now the library picks the smaller one between the dataset size
- and the sieve buffer size from the file access property. See Issue 7934.
- (SLU - 2012/4/11)
-
- Parallel Library
- ----------------
- - Added the H5Pget_mpio_no_collective_cause() function that retrieves
- reasons why the collective I/O was broken during read/write IO access.
- (JKM - 2012/08/30 HDFFV-8143)
-
- - Added H5Pget_mpio_actual_io_mode_f (MSB - 2012/09/27)
-
- Tools
- -----
- - h5import: Changed to allow the use of h5dump output as input files to
- h5import. h5dump must include the "-p" option to print the properties;
- configuration file is captured output of h5dump. The restrictions are
- that only one dataset with a simple datatype (integer, floating-point,
- or string) can be processed. Integers and floating-point imports from
- h5dump must use the "binary" option for the data file. The string version
- uses the h5dump "-y --width=1" options to disable the indexing printouts,
- print single columns, and obviously NOT use the "binary" option.
- (ADB - 2012/07/19 HDFFV-721)
-
- High-Level APIs
- ---------------
- - None
-
- Fortran API
- -----------
- - Fixed a typo in return value of the nh5dread_f_c function (was 1
- instead of 0 on success); fixed the return value to make it consistent
- with other Fortran functions; cleaned debug statements from the code.
- (EIP - 2012/06/23)
-
- C++ API
- -------
- - None
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - None
-
-Bug Fixes since HDF5-1.8.10
-===========================
- Library
- -------
- - The library now behaves correctly when performing large I/O operations on
- Mac OS-X. Previously, single I/O operations > 2 GB would fail since the
- Darwin read/write calls cannot handle the number of bytes that their
- parameter types imply.
- Fixes HDFFV-7975 and HDFFV-8240 (DER - 07 JAN 2013)
- - Fixed a bug in the core VFD that cause failures when opening files > 2 GB.
- Fixes HDFFV-8124 and HDFFV-8158 (DER - 07 JAN 2013)
-
- Tools
- -----
- - The following h5stat test case failed in BG/P machines (and potentially
- other machines that display extra output if an MPI task returns with a
- non-zero code.)
- Testing h5stat notexist.h5
- The test script was fixed to ignore the extra output.
- HDFFV-8233 (AKC - 2012/12/17)
- - h5diff: Fixed slowness when comparing HDF5 files with many attributes.
- Much slower performance was identified with later release version
- (from 1.8.7 to 1.8.10) compared to 1.8.6. The issue was introduced
- from fixing an attribute related bug for 1.8.7 release in the past.
- HDFFV-8145 (JKM 2012/12/13)
-
- Testing
- -------
- - None
-
-Bug Fixes since HDF5-1.8.9
-==========================
-
- Configuration
- -------------
- - Fixed configure --enable-production to not use -O optimization for Lion
- and Mountain Lion systems when gcc (i686-apple-darwin11-llvm-gcc-4.2
- (GCC) 4.2.1) is used. Somehow the -O optimization will cause some of
- the hard conversion code in test/dt_arith.c to fail. HDFFV-8017.
- (AKC - 2012/10/10)
- - Fixed AIX Fortran compiler flags to use appropriate settings for
- debugging, profiling, and optimization situations. HDFFV-8069.
- (AKC 2012/09/27)
-
- Library
- -------
- - Fixed a memory leak exposed when inserting/removing a property
- from a property list several times. HDFFV-8022. (MSC 2012/05/18)
- - The file_image test will fail in the "initial file image and callbacks in
- the core VFD" sub-test if the source directory is read-only as the test
- fails to create its test files in the build directory. This has been
- fixed. HDFFV-8009 (AKC - 2012/07/06)
-
-
- Parallel Library
- ----------------
- - The MPI-POSIX VFD was updated to include the POSIX and Windows
- correctness features added that had already been added to the other VFDs.
- HDFFV-8058/7845. (DER 2012/09/17)
-
- Performance
- -------------
- - Removed program perform/benchpar from the enable-build-all list. The
- program will be retired or moved to another location. HDFFV-8156
- (AKC 2012/10/01)
- - Retired program perform/mpi-perf. Its purpose has been incorporated
- into h5perf. (AKC 2012/09/21)
-
- Tools
- -----
- - h5repack: "h5repack -f NONE file1.h5 out.h5" command failed if
- source file contains chunked dataset and a chunk dim is bigger than
- the dataset dim. Another issue is that the command changed max dims
- if chunk dim is smaller than the dataset dim. These issue occurred
- when dataset size is smaller than 64k (compact size limit) Fixed both.
- HDFFV-8012 (JKM 2012/09/24)
- - h5diff: Fixed the counter in verbose mode (-v, -r) so that it will no
- longer add together the differences between datasets and the differences
- between attributes of those datasets. This change makes the output of
- verbose mode consistent for datasets, groups, and committed datatypes.
- HDFFV-5919 (JKM 2012/09/10)
- - h5diff: Fixed the incorrect result when comparing attribute data
- values and the data type has the same class but different sizes.
- HDFFV-7942 (JKM 2012/08/15)
- - h5dump: Replaced single element fwrite with block writes.
- HDFFV-1208 (ADB 2012/08/13)
- - h5diff: Fixed test failure for "make check" due to failure of
- copying test files when performed in HDF5 source tree. Also applied
- to other tools. HDFFV-8107 (JKM 2012/08/01)
- - ph5diff: Fixed intermittent hang issue on a certain operation in
- parallel mode. It was detected by daily test for comparing
- non-comparable objects, but it could have occurred in other
- operations depending on machine condition. HDFFV-8003 (JKM 2012/08/01)
- - h5diff: Fixed the function COPY_TESTFILES_TO_TESTDIR() of testh5diff.sh
- to better report when there is an error in the file copying.
- HDFFV-8105 (AKC 2012/07/22)
- - h5dump: Fixed the sort by name display to maintain correct parent/child
- relationships between ascending/descending order.
- HDFFV-8095 (ADB 2012/07/12)
- - h5dump: Fixed the display by creation order when using option -n
- (print contents).
- HDFFV-5942 (ADB 2012/07/09)
- - h5dump: Changed to allow H5T_CSET_UTF8 to be displayed in h5dump output.
- Used technique similar to what was done in h5ls (matches library
- options).
- HDFFV-7999 (ADB 2012/05/23)
- - h5diff: Fixed the tool so that it will not check and display the status
- of dangling links without setting the --follow-symlinks option. This
- also improved performance when comparing lots of external links without
- the --follow-symlinks option.
- HDFFV-7998 (JKM 2012/04/26)
-
- F90 API
- -------
-
- - Fixed a typo in return value of the nh5dread_f_c function (was 1
- instead of 0 on success); fixed the return value to make it consistent
- with other Fortran functions; cleaned debug statements from the code.
- (EIP - 2012/06/23)
-
- - Fixed a problem writing/reading control characters to a dataset; writing
- a string containing alerts, backspace, carriage_return, form_feed,
- horizontal_tab, vertical_tab, or new_line is now tested and working.
- (MSB - 2012/09/01)
-
- - Corrected the integer type of H5S_UNLIMITED_F to HSIZE_T (MSB - 2012/09/01)
-
- - Corrected the number of continuation lines in the src files
- to be less than 32 lines for F95 compliance. (MSB - 2012/10/01)
-
- C++ API
- ------
- - None
-
- High-Level APIs:
- ------
-
- - Fixed problem with H5TBdelete_record destroying all data following the
- deletion of a row. (MSB- 2012/7/26)
-
- - Fixed H5LTget_attribute_string not closing an object identifier when an
- error occurs. (MSB- 2012/7/21)
-
- - Corrected the return type of H5TBAget_fill from herr_t to htri_t to
- reflect that a return value of 1 indicates that a fill value is
- present, 0 indicates a fill value is not present, and <0 indicates an
- error.
-
- Fortran High-Level APIs:
- ------
- - None
-
-Supported Platforms
-===================
- AIX 5.3 xlc 10.1.0.5
- (NASA G-ADA) xlC 10.1.0.5
- xlf90 12.1.0.6
-
- Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP i686 i686 i386 compilers for 32-bit applications;
- (jam) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
- Version 4.6.3
- PGI C, Fortran, C++ Compilers for 32-bit
- applications;
- Version 11.9-0
- Intel(R) C, C++, Fortran Compiler for 32-bit
- applications;
- Version 12.1
- MPICH mpich2-1.4.1p1 compiled with
- gcc 4.1.2 and gfortran 4.1.2
-
- Linux 2.6.18-308.16.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers for 32-bit applications;
- (koala) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
- Version 4.6.3
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 11.9-0
- Version 12.5-0
- Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64;
- Version 12.1 (Build 20110811)
- Version 12.1 (Build 20120212)
- MPICH mpich2-1.4.1p1 compiled with
- gcc 4.1.2 and gfortran 4.1.2
-
- Linux 2.6.32-220.7.1.el6.ppc64 gcc (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.6 20110731
- (ostrich) GNU Fortran (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)
-
- Linux 2.6.32-220.23.1.1chaos Intel C, C++, Fortran Compilers
- ch5.x86_64 GNU/Linux Version 12.1.5.339
- (LLNL Aztec)
-
- IBM Blue Gene/P XL C for Blue Gene/P, bgxlc V9.0
- (LLNL uDawn) XL C++ for Blue Gene/P, bgxlC V9.0
- XL Fortran for Blue Gene/P, bgxlf90 V11.1
-
- SunOS 5.10 32- and 64-bit Sun C 5.9 Sun OS_sparc Patch 124867-16
- (linew) Sun Fortran 95 8.3 Sun OS_sparc Patch 127000-13
- Sun C++ 5.9 Sun OS_sparc Patch 124863-26
- Sun C 5.11 SunOS_sparc
- Sun Fortran 95 8.5 SunOS_sparc
- Sun C++ 5.11 SunOS_sparc
-
- Windows XP Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
-
- Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
-
- Windows 7 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 w/ Intel Fortran 12 (cmake)
- Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
- (cmake and autotools)
-
- Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 w/ Intel Fortran 12 (cmake)
- Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
- (cmake and autotools)
-
- Mac OS X Snow Leopard 10.6.8 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 3.2.6
- Darwin Kernel Version 10.8.0 g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 3.2.6
- (fred) gfortran GNU Fortran (GCC) 4.6.2
- Intel C (icc), Fortran (ifort), C++ (icpc)
- 12.1.0.038 Build 20110811
-
- Mac OS X Snow Leopard 10.6.8 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 3.2.6
- Darwin Kernel Version 10.8.0 g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 3.2.6
- Intel 32-bit gfortran GNU Fortran (GCC) 4.6.1
- (tejeda) Intel C (icc), Fortran (ifort), C++ (icpc)
- 12.1.0.038 Build 20110811
-
- Mac OS X Lion 10.7.3 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 4.2.1
- 32- and 64-bit g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 4.2.1
- (duck) gfortran GNU Fortran (GCC) 4.6.2
-
- Mac OS X Mountain Lion 10.8.1 cc Apple clang version 4.0 from Xcode 4.5.1
- (owl) c++ Apple clang version 4.0 from Xcode 4.5.1
- gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 4.5.1
- g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 4.5.1
- gfortran GNU Fortran (GCC) 4.6.2
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-Solaris2.10 32-bit n y/y n y y y
-Solaris2.10 64-bit n y/n n y y y
-Windows 7 y y/n n y y y
-Windows 7 x64 y y/n n y y y
-Mac OS X Snow Leopard 10.6.8 32-bit n y/y n y y n
-Mac OS X Snow Leopard 10.6.8 64-bit n y/y n y y y
-Mac OS X Lion 10.7.3 32-bit n y/y n y y n
-Mac OS X Lion 10.7.3 64-bit n y/y n y y y
-Mac OS X Mountain Lion 10.8.1 64-bit n y/n n y y n
-AIX 5.3 32- and 64-bit y y/n y y y y
-CentOS 5.5 Linux 2.6.18-308 i686 GNU y y/y y y y y
-CentOS 5.5 Linux 2.6.18-308 i686 Intel n y/y n y y y
-CentOS 5.5 Linux 2.6.18-308 i686 PGI n y/y n y y y
-CentOS 5.5 Linux 2.6.18 x86_64 GNU y y/y y y y y
-CentOS 5.5 Linux 2.6.18 x86_64 Intel n y/y n y y y
-CentOS 5.5 Linux 2.6.18 x86_64 PGI n y/y n y y y
-Linux 2.6.32-220.7.1.el6.ppc64 n y/n n y y y
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.10 32-bit y y y y
-Solaris2.10 64-bit n n n n
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Mac OS X Snow Leopard 10.6.8 32-bit y n y n
-Mac OS X Snow Leopard 10.6.8 64-bit y n y n
-Mac OS X Lion 10.7.3 32-bit y n y y
-Mac OS X Lion 10.7.3 64-bit y n y y
-Mac OS X Mountain Lion 10.8.1 64-bit y n y y
-AIX 5.3 32- and 64-bit n n n y
-CentOS 5.5 Linux 2.6.18-308 i686 GNU y y y y
-CentOS 5.5 Linux 2.6.18-308 i686 Intel y y y n
-CentOS 5.5 Linux 2.6.18-308 i686 PGI y y y n
-CentOS 5.5 Linux 2.6.18 x86_64 GNU y y y y
-CentOS 5.5 Linux 2.6.18 x86_64 Intel y y y n
-CentOS 5.5 Linux 2.6.18 x86_64 PGI y y y n
-Linux 2.6.32-220.7.1.el6.ppc64 y y y n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- FreeBSD 8.2-STABLE i386 gcc 4.2.1 [FreeBSD] 20070719
- (loyalty) gcc 4.6.1 20110422
- g++ 4.6.1 20110422
- gfortran 4.6.1 20110422
-
- FreeBSD 8.2-STABLE amd64 gcc 4.2.1 [FreeBSD] 20070719
- (freedom) gcc 4.6.1 20110422
- g++ 4.6.1 20110422
- gfortran 4.6.1 20110422
-
- Debian6.0.3 2.6.32-5-686 #1 SMP i686 GNU/Linux
- gcc (Debian 4.4.5-8) 4.4.5
- GNU Fortran (Debian 4.4.5-8) 4.4.5
- (cmake and autotools)
-
- Debian6.0.3 2.6.32-5-amd64 #1 SMP x86_64 GNU/Linux
- gcc (Debian 4.4.5-8) 4.4.5
- GNU Fortran (Debian 4.4.5-8) 4.4.5
- (cmake and autotools)
-
- Fedora17 3.5.2-1.fc17.i6866 #1 SMP i686 i686 i386 GNU/Linux
- gcc (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
- GNU Fortran (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
- (cmake and autotools)
-
- Fedora17 3.5.2-1.fc17.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
- GNU Fortran (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
- (cmake and autotools)
-
- SUSE 12.2 3.4.6-2.10-desktop #1 SMP PREEMPT i686 i686 i386 GNU/Linux
- gcc (SUSE Linux) 4.7.1
- GNU Fortran (SUSE Linux) 4.7.1
- (cmake and autotools)
-
- SUSE 12.2 3.4.6-2.10-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.7.1
- GNU Fortran (SUSE Linux) 4.7.1
- (cmake and autotools)
-
- Ubuntu 12.04 3.2.0-29-generic #46-Ubuntu SMP i686 GNU/Linux
- gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
- GNU Fortran (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
- (cmake and autotools)
-
- Ubuntu 12.04 3.2.0-29-generic #46-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
- GNU Fortran (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
- (cmake and autotools)
- (Use optimization level -O1)
-
- Cray Linux Environment (CLE) PrgEnv-pgi/4.0.46
- hopper.nersc.gov pgcc 12.5-0 64-bit target on x86-64 Linux -tp shanghai
- pgf90 12.5-0 64-bit target on x86-64 Linux -tp shanghai
- pgCC 12.5-0 64-bit target on x86-64 Linux -tp shanghai
-
-
-Known Problems
-==============
-* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
- native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
- ports (and probably gcc releases after that).
- (QAK - 2012/10/19)
-
-* The following h5dump test case fails in BG/P machines (and potentially other
- machines that use a command script to launch executables):
-
- h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
- tno-subset.h5
-
- This is due to the embedded spaces in the dataset name being interpreted
- by the command script launcher as meta-characters, thus passing three
- arguments to h5dump's -d flag. The command passes if run by hand, just
- not via the test script.
- (AKC - 2012/05/03)
-
-* On hopper, the build failed when RUNSERIAL and RUNPARALLEL are set
- to aprun -np X, because the H5lib_settings.c file was not generated
- properly. Not setting those environment variables works, because
- configure was able to automatically detect that it's a Cray system
- and used the proper launch commands when necessary.
- (MSC - 2012/04/18)
-
-* The data conversion test dt_arith.c fails in "long double" to integer
- conversion on Ubuntu 11.10 (3.0.0.13 kernel) with GCC 4.6.1 if the library
- is built with optimization -O3 or -O2. The older GCC (4.5) or newer kernel
- (3.2.2 on Fedora) doesn't have the problem. Users should lower the
- optimization level (-O1 or -O0) by defining CFLAGS in the command line of
- "configure" like:
-
- CFLAGS=-O1 ./configure
-
- This will overwrite the library's default optimization level.
- (SLU - 2012/02/07 - HDFFV-7829)
-
-* The STDIO VFD does not work on some architectures, possibly due to 32/64
- bit or large file issues. The basic STDIO VFD test is known to fail on
- 64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
- 10.7.0. The STDIO VFD test has been disabled while we investigate and
- a fix should appear in a future release.
- (DER - 2011/10/14 - HDFFV-8235)
-
-* h5diff can report inconsistent results when comparing datasets of enum type
- that contain invalid values. This is due to how enum types are handled in
- the library and will be addressed in a future release.
- (DER - 2011/10/14 - HDFFV-7527)
-
-* The links test can fail under the stdio VFD due to some issues with external
- links. This will be investigated and fixed in a future release.
- (DER - 2011/10/14 - HDFFV-7768)
-
-* After the shared library support was fixed for some bugs, it was discovered
- that "make prefix=XXX install" no longer works for shared libraries. It
- still works correctly for static libraries. Therefore, if you want to
- install the HDF5 shared libraries in a location such as /usr/local/hdf5,
- you need to specify the location via the --prefix option during configure
- time. E.g, ./configure --prefix=/usr/local/hdf5 ...
- (AKC - 2011/05/07 - HDFFV-7583)
-
-* The parallel test, t_shapesame, in testpar/, may run for a long time and may
- be terminated by the alarm signal. If that happens, one can increase the
- alarm seconds (default is 1200 seconds = 20 minutes) by setting the
- environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
- (60 minutes). Note that the t_shapesame test may fail in some systems
- (see the "While working on the 1.8.6 release..." problem below). If
- it does, it will waste more time if $HDF5_ALARM_SECONDS is set
- to a larger value.
- (AKC - 2011/05/07)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD.
- (QAK - 2011/04/26)
-
-* Shared Fortran libraries are not quite working on AIX. While they are
- generated when --enable-shared is specified, the fortran and hl/fortran
- tests fail. We are looking into the issue. HL and C++ shared libraries
- should now be working as intended, however.
- (MAM - 2011/04/20)
-
-* The --with-mpe configure option does not work with Mpich2.
- (AKC - 2011/03/10)
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or file systems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
- (NAF - 2011/01/19)
-
-* The library's test dt_arith.c showed a compiler's rounding problem on
- Cygwin when converting from unsigned long long to long double. The
- library's own conversion works fine. We defined a macro for Cygwin to
- skip this test until we can solve the problem.
- (SLU - 2010/05/05 - HDFFV-1264)
-
-* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added in. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug in 1.8 library. Because there's only one user
- complaining about it, we (Elena, Quincey, and I) decided to leave it as
- it is (see bug report #1279). Quincey will make a plan for 1.10.
- (SLU - 2010/02/02)
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
- (MAM - 2009/11/04)
-
-* Parallel tests failed with 16 processes with data inconsistency at testphdf5
- / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
- collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
- with MPI IO.
- (CMC - 2009/04/28)
-
-* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- (SLU - 2005/06/30)
-
-
-%%%%1.8.10%%%%
-
-
-HDF5 version 1.8.10 released on 2012-10-26
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.9 and
-HDF5 1.8.10, and contains information on the platforms tested and
-known problems in HDF5-1.8.10.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.10 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.10 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.10 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.10 (current
-release) versus Release 1.8.9":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.9
-- Supported Platforms
-- Supported Configuration Features Summary
-- More Tested Platforms
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - None
-
- Library
- -------
- - Updated to latest autotools and changed all hard *.sh scripts to
- configure managed *.sh.in files. Removed overloading of autotools
- TESTS variable by examples and tests. Renamed configure.in to
- configure.ac. (ADB - 2012/08/23 - HDFFV-8129)
- - The data sieve buffer size was set for all the datasets in the file. It
- could waste memory if any dataset size is smaller than the sieve buffer
- size. Now the library picks the smaller one between the dataset size
- and the sieve buffer size from the file access property. See Issue 7934.
- (SLU - 2012/4/11)
-
- Parallel Library
- ----------------
- - Added the H5Pget_mpio_no_collective_cause() function that retrieves
- reasons why the collective I/O was broken during read/write IO access.
- (JKM - 2012/08/30 HDFFV-8143)
-
- - Added H5Pget_mpio_actual_io_mode_f (MSB - 2012/09/27)
-
- Tools
- -----
- - h5import: Changed to allow the use of h5dump output as input files to
- h5import. h5dump must include the "-p" option to print the properties;
- configuration file is captured output of h5dump. The restrictions are
- that only one dataset with a simple datatype (integer, floating-point,
- or string) can be processed. Integers and floating-point imports from
- h5dump must use the "binary" option for the data file. The string version
- uses the h5dump "-y --width=1" options to disable the indexing printouts,
- print single columns, and obviously NOT use the "binary" option.
- (ADB - 2012/07/19 HDFFV-721)
-
- High-Level APIs
- ---------------
- - None
-
- Fortran API
- -----------
- - Fixed a typo in return value of the nh5dread_f_c function (was 1
- instead of 0 on success); fixed the return value to make it consistent
- with other Fortran functions; cleaned debug statements from the code.
- (EIP - 2012/06/23)
-
- C++ API
- -------
- - None
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - None
-
-Bug Fixes since HDF5-1.8.9
-==========================
-
- Configuration
- -------------
- - Fixed configure --enable-production to not use -O optimization for Lion
- and Mountain Lion systems when gcc (i686-apple-darwin11-llvm-gcc-4.2
- (GCC) 4.2.1) is used. Somehow the -O optimization will cause some of
- the hard conversion code in test/dt_arith.c to fail. HDFFV-8017.
- (AKC - 2012/10/10)
- - Fixed AIX Fortran compiler flags to use appropriate settings for
- debugging, profiling, and optimization situations. HDFFV-8069.
- (AKC 2012/09/27)
-
- Library
- -------
- - Fixed a memory leak exposed when inserting/removing a property
- from a property list several times. HDFFV-8022. (MSC 2012/05/18)
- - The file_image test will fail in the "initial file image and callbacks in
- the core VFD" sub-test if the source directory is read-only as the test
- fails to create its test files in the build directory. This has been
- fixed. HDFFV-8009 (AKC - 2012/07/06)
-
-
- Parallel Library
- ----------------
- - The MPI-POSIX VFD was updated to include the POSIX and Windows
- correctness features added that had already been added to the other VFDs.
- HDFFV-8058/7845. (DER 2012/09/17)
-
- Performance
- -------------
- - Removed program perform/benchpar from the enable-build-all list. The
- program will be retired or moved to another location. HDFFV-8156
- (AKC 2012/10/01)
- - Retired program perform/mpi-perf. Its purpose has been incorporated
- into h5perf. (AKC 2012/09/21)
-
- Tools
- -----
- - h5repack: "h5repack -f NONE file1.h5 out.h5" command failed if
- source file contains chunked dataset and a chunk dim is bigger than
- the dataset dim. Another issue is that the command changed max dims
- if chunk dim is smaller than the dataset dim. These issue occurred
- when dataset size is smaller than 64k (compact size limit) Fixed both.
- HDFFV-8012 (JKM 2012/09/24)
- - h5diff: Fixed the counter in verbose mode (-v, -r) so that it will no
- longer add together the differences between datasets and the differences
- between attributes of those datasets. This change makes the output of
- verbose mode consistent for datasets, groups, and committed datatypes.
- HDFFV-5919 (JKM 2012/09/10)
- - h5diff: Fixed the incorrect result when comparing attribute data
- values and the data type has the same class but different sizes.
- HDFFV-7942 (JKM 2012/08/15)
- - h5dump: Replaced single element fwrite with block writes.
- HDFFV-1208 (ADB 2012/08/13)
- - h5diff: Fixed test failure for "make check" due to failure of
- copying test files when performed in HDF5 source tree. Also applied
- to other tools. HDFFV-8107 (JKM 2012/08/01)
- - ph5diff: Fixed intermittent hang issue on a certain operation in
- parallel mode. It was detected by daily test for comparing
- non-comparable objects, but it could have occurred in other
- operations depending on machine condition. HDFFV-8003 (JKM 2012/08/01)
- - h5diff: Fixed the function COPY_TESTFILES_TO_TESTDIR() of testh5diff.sh
- to better report when there is an error in the file copying.
- HDFFV-8105 (AKC 2012/07/22)
- - h5dump: Fixed the sort by name display to maintain correct parent/child
- relationships between ascending/descending order.
- HDFFV-8095 (ADB 2012/07/12)
- - h5dump: Fixed the display by creation order when using option -n
- (print contents).
- HDFFV-5942 (ADB 2012/07/09)
- - h5dump: Changed to allow H5T_CSET_UTF8 to be displayed in h5dump output.
- Used technique similar to what was done in h5ls (matches library
- options).
- HDFFV-7999 (ADB 2012/05/23)
- - h5diff: Fixed the tool so that it will not check and display the status
- of dangling links without setting the --follow-symlinks option. This
- also improved performance when comparing lots of external links without
- the --follow-symlinks option.
- HDFFV-7998 (JKM 2012/04/26)
-
- F90 API
- -------
-
- - Fixed a typo in return value of the nh5dread_f_c function (was 1
- instead of 0 on success); fixed the return value to make it consistent
- with other Fortran functions; cleaned debug statements from the code.
- (EIP - 2012/06/23)
-
- - Fixed a problem writing/reading control characters to a dataset; writing
- a string containing alerts, backspace, carriage_return, form_feed,
- horizontal_tab, vertical_tab, or new_line is now tested and working.
- (MSB - 2012/09/01)
-
- - Corrected the integer type of H5S_UNLIMITED_F to HSIZE_T (MSB - 2012/09/01)
-
- - Corrected the number of continuation lines in the src files
- to be less than 32 lines for F95 compliance. (MSB - 2012/10/01)
-
- C++ API
- ------
- - None
-
- High-Level APIs:
- ------
-
- - Fixed problem with H5TBdelete_record destroying all data following the
- deletion of a row. (MSB- 2012/7/26)
-
- - Fixed H5LTget_attribute_string not closing an object identifier when an
- error occurs. (MSB- 2012/7/21)
-
- - Corrected the return type of H5TBAget_fill from herr_t to htri_t to
- reflect that a return value of 1 indicates that a fill value is
- present, 0 indicates a fill value is not present, and <0 indicates an
- error.
-
- Fortran High-Level APIs:
- ------
- - None
-
-Supported Platforms
-===================
- AIX 5.3 xlc 10.1.0.5
- (NASA G-ADA) xlC 10.1.0.5
- xlf90 12.1.0.6
-
- Linux 2.6.18-308.13.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP i686 i686 i386 compilers for 32-bit applications;
- (jam) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
- Version 4.6.3
- PGI C, Fortran, C++ Compilers for 32-bit
- applications;
- Version 11.9-0
- Intel(R) C, C++, Fortran Compiler for 32-bit
- applications;
- Version 12.1
- MPICH mpich2-1.4.1p1 compiled with
- gcc 4.1.2 and gfortran 4.1.2
-
- Linux 2.6.18-308.16.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers for 32-bit applications;
- (koala) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
- Version 4.6.3
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 11.9-0
- Version 12.5-0
- Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64;
- Version 12.1 (Build 20110811)
- Version 12.1 (Build 20120212)
- MPICH mpich2-1.4.1p1 compiled with
- gcc 4.1.2 and gfortran 4.1.2
-
- Linux 2.6.32-220.7.1.el6.ppc64 gcc (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.6 20110731
- (ostrich) GNU Fortran (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)
-
- Linux 2.6.32-220.23.1.1chaos Intel C, C++, Fortran Compilers
- ch5.x86_64 GNU/Linux Version 12.1.5.339
- (LLNL Aztec)
-
- IBM Blue Gene/P XL C for Blue Gene/P, bgxlc V9.0
- (LLNL uDawn) XL C++ for Blue Gene/P, bgxlC V9.0
- XL Fortran for Blue Gene/P, bgxlf90 V11.1
-
- SunOS 5.10 32- and 64-bit Sun C 5.9 Sun OS_sparc Patch 124867-16
- (linew) Sun Fortran 95 8.3 Sun OS_sparc Patch 127000-13
- Sun C++ 5.9 Sun OS_sparc Patch 124863-26
- Sun C 5.11 SunOS_sparc
- Sun Fortran 95 8.5 SunOS_sparc
- Sun C++ 5.11 SunOS_sparc
-
- Windows XP Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
-
- Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
-
- Windows 7 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 w/ Intel Fortran 12 (cmake)
- Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
- (cmake and autotools)
-
- Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 w/ Intel Fortran 12 (cmake)
- Cygwin(CYGWIN_NT-6.1 1.7.15(0.260/5/3) gcc(4.5.3) compiler and gfortran)
- (cmake and autotools)
-
- Mac OS X Snow Leopard 10.6.8 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 3.2.6
- Darwin Kernel Version 10.8.0 g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 3.2.6
- (fred) gfortran GNU Fortran (GCC) 4.6.2
- Intel C (icc), Fortran (ifort), C++ (icpc)
- 12.1.0.038 Build 20110811
-
- Mac OS X Snow Leopard 10.6.8 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 3.2.6
- Darwin Kernel Version 10.8.0 g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 3.2.6
- Intel 32-bit gfortran GNU Fortran (GCC) 4.6.1
- (tejeda) Intel C (icc), Fortran (ifort), C++ (icpc)
- 12.1.0.038 Build 20110811
-
- Mac OS X Lion 10.7.3 gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 4.2.1
- 32- and 64-bit g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 4.2.1
- (duck) gfortran GNU Fortran (GCC) 4.6.2
-
- Mac OS X Mountain Lion 10.8.1 cc Apple clang version 4.0 from Xcode 4.5.1
- (owl) c++ Apple clang version 4.0 from Xcode 4.5.1
- gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 from Xcode 4.5.1
- g++ i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 from Xcode 4.5.1
- gfortran GNU Fortran (GCC) 4.6.2
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90/ F90 C++ zlib SZIP
- parallel F2003 parallel
-Solaris2.10 32-bit n y/y n y y y
-Solaris2.10 64-bit n y/n n y y y
-Windows 7 y y/n n y y y
-Windows 7 x64 y y/n n y y y
-Mac OS X Snow Leopard 10.6.8 32-bit n y/y n y y n
-Mac OS X Snow Leopard 10.6.8 64-bit n y/y n y y y
-Mac OS X Lion 10.7.3 32-bit n y/y n y y n
-Mac OS X Lion 10.7.3 64-bit n y/y n y y y
-Mac OS X Mountain Lion 10.8.1 64-bit n y/n n y y n
-AIX 5.3 32- and 64-bit y y/n y y y y
-CentOS 5.5 Linux 2.6.18-308 i686 GNU y y/y y y y y
-CentOS 5.5 Linux 2.6.18-308 i686 Intel n y/y n y y y
-CentOS 5.5 Linux 2.6.18-308 i686 PGI n y/y n y y y
-CentOS 5.5 Linux 2.6.18 x86_64 GNU y y/y y y y y
-CentOS 5.5 Linux 2.6.18 x86_64 Intel n y/y n y y y
-CentOS 5.5 Linux 2.6.18 x86_64 PGI n y/y n y y y
-Linux 2.6.32-220.7.1.el6.ppc64 n y/n n y y y
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.10 32-bit y y y y
-Solaris2.10 64-bit n n n n
-Windows 7 y y y y
-Windows 7 x64 y y y y
-Mac OS X Snow Leopard 10.6.8 32-bit y n y n
-Mac OS X Snow Leopard 10.6.8 64-bit y n y n
-Mac OS X Lion 10.7.3 32-bit y n y y
-Mac OS X Lion 10.7.3 64-bit y n y y
-Mac OS X Mountain Lion 10.8.1 64-bit y n y y
-AIX 5.3 32- and 64-bit n n n y
-CentOS 5.5 Linux 2.6.18-308 i686 GNU y y y y
-CentOS 5.5 Linux 2.6.18-308 i686 Intel y y y n
-CentOS 5.5 Linux 2.6.18-308 i686 PGI y y y n
-CentOS 5.5 Linux 2.6.18 x86_64 GNU y y y y
-CentOS 5.5 Linux 2.6.18 x86_64 Intel y y y n
-CentOS 5.5 Linux 2.6.18 x86_64 PGI y y y n
-Linux 2.6.32-220.7.1.el6.ppc64 y y y n
-
-Compiler versions for each platform are listed in the preceding
-"Supported Platforms" table.
-
-
-More Tested Platforms
-=====================
-The following platforms are not supported but have been tested for this release.
-
- FreeBSD 8.2-STABLE i386 gcc 4.2.1 [FreeBSD] 20070719
- (loyalty) gcc 4.6.1 20110422
- g++ 4.6.1 20110422
- gfortran 4.6.1 20110422
-
- FreeBSD 8.2-STABLE amd64 gcc 4.2.1 [FreeBSD] 20070719
- (freedom) gcc 4.6.1 20110422
- g++ 4.6.1 20110422
- gfortran 4.6.1 20110422
-
- Debian6.0.3 2.6.32-5-686 #1 SMP i686 GNU/Linux
- gcc (Debian 4.4.5-8) 4.4.5
- GNU Fortran (Debian 4.4.5-8) 4.4.5
- (cmake and autotools)
-
- Debian6.0.3 2.6.32-5-amd64 #1 SMP x86_64 GNU/Linux
- gcc (Debian 4.4.5-8) 4.4.5
- GNU Fortran (Debian 4.4.5-8) 4.4.5
- (cmake and autotools)
-
- Fedora17 3.5.2-1.fc17.i6866 #1 SMP i686 i686 i386 GNU/Linux
- gcc (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
- GNU Fortran (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
- (cmake and autotools)
-
- Fedora17 3.5.2-1.fc17.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
- GNU Fortran (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5)
- (cmake and autotools)
-
- SUSE 12.2 3.4.6-2.10-desktop #1 SMP PREEMPT i686 i686 i386 GNU/Linux
- gcc (SUSE Linux) 4.7.1
- GNU Fortran (SUSE Linux) 4.7.1
- (cmake and autotools)
-
- SUSE 12.2 3.4.6-2.10-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.7.1
- GNU Fortran (SUSE Linux) 4.7.1
- (cmake and autotools)
-
- Ubuntu 12.04 3.2.0-29-generic #46-Ubuntu SMP i686 GNU/Linux
- gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
- GNU Fortran (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
- (cmake and autotools)
-
- Ubuntu 12.04 3.2.0-29-generic #46-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
- GNU Fortran (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
- (cmake and autotools)
- (Use optimization level -O1)
-
- Cray Linux Environment (CLE) PrgEnv-pgi/4.0.46
- hopper.nersc.gov pgcc 12.5-0 64-bit target on x86-64 Linux -tp shanghai
- pgf90 12.5-0 64-bit target on x86-64 Linux -tp shanghai
- pgCC 12.5-0 64-bit target on x86-64 Linux -tp shanghai
-
-
-Known Problems
-==============
-* The following h5stat test case fails in BG/P machines (and potentially other
- machines that display extra output if an MPI task returns with a non-zero
- code.)
- Testing h5stat notexist.h5
-
- The test actually runs and passes as expected. It is the extra output from
- the MPI process that causes the test script to fail. This will be fixed
- in the next release. (AKC - 2012/10/25 - HDFFV-8233)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD with the
- native release 8.2 compilers (4.2.1), but are working with gcc 4.6 from the
- ports (and probably gcc releases after that).
- (QAK - 2012/10/19)
-
-* The following h5dump test case fails in BG/P machines (and potentially other
- machines that use a command script to launch executables):
-
- h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
- tno-subset.h5
-
- This is due to the embedded spaces in the dataset name being interpreted
- by the command script launcher as meta-characters, thus passing three
- arguments to h5dump's -d flag. The command passes if run by hand, just
- not via the test script.
- (AKC - 2012/05/03)
-
-* On hopper, the build failed when RUNSERIAL and RUNPARALLEL are set
- to aprun -np X, because the H5lib_settings.c file was not generated
- properly. Not setting those environment variables works, because
- configure was able to automatically detect that it's a Cray system
- and used the proper launch commands when necessary.
- (MSC - 2012/04/18)
-
-* The data conversion test dt_arith.c fails in "long double" to integer
- conversion on Ubuntu 11.10 (3.0.0.13 kernel) with GCC 4.6.1 if the library
- is built with optimization -O3 or -O2. The older GCC (4.5) or newer kernel
- (3.2.2 on Fedora) doesn't have the problem. Users should lower the
- optimization level (-O1 or -O0) by defining CFLAGS in the command line of
- "configure" like:
-
- CFLAGS=-O1 ./configure
-
- This will overwrite the library's default optimization level.
- (SLU - 2012/02/07 - HDFFV-7829)
-
-* The STDIO VFD does not work on some architectures, possibly due to 32/64
- bit or large file issues. The basic STDIO VFD test is known to fail on
- 64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
- 10.7.0. The STDIO VFD test has been disabled while we investigate and
- a fix should appear in a future release.
- (DER - 2011/10/14 - HDFFV-8235)
-
-* h5diff can report inconsistent results when comparing datasets of enum type
- that contain invalid values. This is due to how enum types are handled in
- the library and will be addressed in a future release.
- (DER - 2011/10/14 - HDFFV-7527)
-
-* The links test can fail under the stdio VFD due to some issues with external
- links. This will be investigated and fixed in a future release.
- (DER - 2011/10/14 - HDFFV-7768)
-
-* After the shared library support was fixed for some bugs, it was discovered
- that "make prefix=XXX install" no longer works for shared libraries. It
- still works correctly for static libraries. Therefore, if you want to
- install the HDF5 shared libraries in a location such as /usr/local/hdf5,
- you need to specify the location via the --prefix option during configure
- time. E.g, ./configure --prefix=/usr/local/hdf5 ...
- (AKC - 2011/05/07 - HDFFV-7583)
-
-* The parallel test, t_shapesame, in testpar/, may run for a long time and may
- be terminated by the alarm signal. If that happens, one can increase the
- alarm seconds (default is 1200 seconds = 20 minutes) by setting the
- environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
- (60 minutes). Note that the t_shapesame test may fail in some systems
- (see the "While working on the 1.8.6 release..." problem below). If
- it does, it will waste more time if $HDF5_ALARM_SECONDS is set
- to a larger value.
- (AKC - 2011/05/07)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD.
- (QAK - 2011/04/26)
-
-* Shared Fortran libraries are not quite working on AIX. While they are
- generated when --enable-shared is specified, the fortran and hl/fortran
- tests fail. We are looking into the issue. HL and C++ shared libraries
- should now be working as intended, however.
- (MAM - 2011/04/20)
-
-* The --with-mpe configure option does not work with Mpich2.
- (AKC - 2011/03/10)
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or file systems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
- (NAF - 2011/01/19)
-
-* The library's test dt_arith.c showed a compiler's rounding problem on
- Cygwin when converting from unsigned long long to long double. The
- library's own conversion works fine. We defined a macro for Cygwin to
- skip this test until we can solve the problem.
- (SLU - 2010/05/05 - HDFFV-1264)
-
-* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added in. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug in 1.8 library. Because there's only one user
- complaining about it, we (Elena, Quincey, and I) decided to leave it as
- it is (see bug report #1279). Quincey will make a plan for 1.10.
- (SLU - 2010/02/02)
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
- (MAM - 2009/11/04)
-
-* Parallel tests failed with 16 processes with data inconsistency at testphdf5
- / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
- collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
- with MPI IO.
- (CMC - 2009/04/28)
-
-* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- (SLU - 2005/06/30)
-
-
-%%%%1.8.9%%%%
-
-
-HDF5 version 1.8.9 released on 2012-05-09
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.8 and
-HDF5 1.8.9. It also contains information on the platforms tested and
-known problems in HDF5-1.8.9.
-
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.9 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.9 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.9 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.9 (current
-release) versus Release 1.8.8":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.8
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - None
-
- Library
- -------
- - Added new feature to merge committed datatypes when copying objects,
- using new H5O_COPY_MERGE_COMMITTED_DTYPE_FLAG, modified by new API
- routines: H5Padd_merge_committed_dtype_path(),
- H5Pfree_merge_committed_dtype_paths(), H5Pset_mcdt_search_cb() and
- H5Pget_mcdt_search_cb(). (QAK - 2012/03/30)
- - Added new feature which allows working with files in memory in the
- same ways files are worked with on disk. New API routines include
- H5Pset_file_image, H5Pget_file_image, H5Pset_file_image_callbacks,
- H5Pget_file_image_callbacks, H5Fget_file_image, and
- H5LTopen_file_image. (QAK - 2012/04/17)
-
- Parallel Library
- ----------------
- - Corrected memory allocation error in MPI datatype construction code.
- (QAK - 2012/04/23)
- - Add two new routines to set/get the atomicity parameter in the
- MPI library to perform atomic operations. Some file systems (for
- example PVFS2) do not support atomic updates, so those routines
- would not be supported. (MSC - 2012/03/27 - HDFFV-7961)
-
- Tools
- -----
- - h5repack: Added ability to set the metadata block size of the output
- file, with the '-M'/'--metadata_block_size' command line parameter.
- (QAK - 2012/03/30)
- - h5stat: Added ability to display a summary of the file space usage for a
- file, with the '-S'/'--summary' command line parameter. (QAK - 2012/03/28)
- - h5dump: Added capability for "-a" option to show attributes containing "/"
- by using an escape character. For example, for a dataset "/dset"
- containing attribute "speed(m/h)", use "h5dump -a "/dset/speed(\/h)"
- to show the content of the attribute. (PC - 2012/03/12 - HDFFV-7523)
- - h5dump: Added ability to apply command options across multiple files using a
- wildcard in the filename. Unix example; "h5dump -H -d Dataset1 tarr*.h5".
- Cross platform example; "h5dump -H -d Dataset1 tarray1.h5 tarray2.h5 tarray3.h5".
- (ADB - 2012/03/12 - HDFFV-7876).
- - h5dump: Added new option --no-compact-subset. This option will not
- interpret the '[' character as starting the compact form of
- subsetting. This is useful when the "h5dump error: unable to
- open dataset "datset_name"" message is output because a dataset
- name contains a '[' character. (ADB - 2012/03/05 - HDFFV-7689).
- - h5repack: Improved performance for big chunked datasets (size > 128MB)
- when used with the layout (-l) or compression (-f) options.
- Before this change, repacking datasets with chunks with a large first
- dimension would take extremely long. For example, repacking a dataset
- with chunk dimensions of 1024x5x1 might take many hours to process
- while changing a dataset with chunk dimensions set to 1x5x1024
- might take under an hour. After this change, processing the dataset
- with chunk dimensions of 1024x5x1 takes about 15 minutes, and processing
- a dataset with chunk dimensions of 1x5x1024 takes about 14 minutes.
- (JKM - 2012/03/01 - HDFFV-7862)
-
- High-Level APIs
- ---------------
- - New API: H5LTpath_valid (Fortran: h5ltpath_valid_f) checks
- if a path is correct, determines if a link resolves to a valid
- object, and checks that the link does not dangle. (MSB - 2012/03/15)
-
- Fortran API
- -----------
-
- - Added for the C API the Fortran wrapper:
- h5ocopy_f (MSB - 2012/03/22)
-
- C++ API
- -------
- - None
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - None
-
-Bug Fixes since HDF5-1.8.8
-==========================
-
- Configuration
- -------------
- - Fixed Makefile issue in which "-Wl," was not properly specified
- prior to -rpath when building parallel Fortran libraries with
- an Intel compiler. (MAM - 2012/03/26)
- - Makefiles generated by other packages using h5cc as the compiler
- no longer error when 'make' is invoked more than once in order
- to 'rebuild' after changes to source. (MAM - 2012/03/26)
- - Added code to display the version information of XL Fortran and C++
- in the summary of configure. (AKC - 2012/02/28 - HDFFV-7793)
- - Updated all CMakeLists.txt files to indicate the minimum CMake version is
- the current standard of 2.8.6 (ADB - 2011/12/05 - HDFFV-7854)
-
- Library
- -------
- - Windows and STDIO correctness changes have been propagated from the SEC2
- and old Windows drivers to the STDIO VFD. (DER - 2012/03/30 - HDFFV-7917)
- - Fixed an error that would occur when copying an object with attribute
- creation order tracked and indexed. (NAF - 2012/03/28 - HDFFV-7762)
- - Fixed a bug in H5Ocopy(): When copying an opened object, call the
- object's flush class action to ensure that cached data is flushed so
- that H5Ocopy will get the correct data. (VC - 2012/03/27 - HDFFV-7853)
- - The istore test will now skip the sparse 50x50x50 test when the VFD does
- not support sparse files on that platform. The most important platforms
- on which this will be skipped are Windows (NTFS sparse files are not
- supported) and Mac OS-X (HFS sparse files are not supported). This
- fixes CTest timeout issues on Windows. (DER - 2012/03/27 - HDFFV-7769)
- - Windows and POSIX correctness changes have been propagated from the SEC2
- VFD to the Core VFD. This mainly affects file operations on the
- driver's backing store and fixes a problem on Windows where large files
- could not be read. (DER - 2012/03/27 - HDFFV-7916 - HDFFV-7603)
- - When an application tries to write or read many small data chunks and
- runs out of memory, the library had a segmentation fault. The fix is to
- return the error stack with proper information.
- (SLU - 2012/03/23 - HDFFV-7785)
- - H5Pset_data_transform had a segmentation fault in some cases like x*-100.
- It works correctly now and handles other cases like 100-x or 2/x.
- (SLU - 2012/03/15 - HDFFV-7922)
- - Fixed rare corruption bugs that could occur when using the new object
- header format. (NAF - 2012/03/15 - HDFFV-7879)
- - Fixed an error that occurred when creating a contiguous dataset with a
- zero-sized dataspace and space allocation time set to 'early'.
- (QAK - 2012/03/12)
- - Changed Windows thread creation to use _beginthread() instead of
- CreateThread(). Threads created by the latter can be killed in
- low-memory situations. (DER - 2012/02/10 - HDFFV-7780)
- - Creating a dataset in a read-only file caused a segmentation fault when
- the file is closed. It's fixed. The attempt to create a dataset will
- fail with an error indicating the file is read-only.
- (SLU - 2012/01/25 - HDFFV-7756)
- - Fixed a segmentation fault that could occur when shrinking a dataset
- with chunks larger than 1 MB. (NAF - 2011/11/30 - HDFFV-7833)
- - Fixed a bug that could cause H5Oget_info to return the wrong address
- after copying a committed (named) datatype. (NAF - 2011/11/14)
- - The library allowed the conversion of strings between ASCII and UTF8
- We have corrected it to report an error under this situation.
- (SLU - 2011/11/8 - HDFFV-7582)
- - Fixed a segmentation fault when the library tried to shrink the size
- of a compound datatype through H5Tset_size immediately after the
- datatype was created. (SLU - 2011/11/4 - HDFFV-7618)
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - h5unjam: Fixed a segmentation fault that occurred when h5unjam was used
- with the -V (show version) option. (JKM - 2012/04/19 - HDFFV-8001)
- - h5repack: Fixed a failure that occurred when repacking the chunk size
- of a specified chunked dataset with unlimited max dims.
- (JKM - 2012/04/11 - HDFFV-7993)
- - h5diff: Fixed a failure when comparing groups. Before the fix, if an
- object in a group was compared with an object in another group where
- both had the same name but the object type was different, then h5diff
- would fail. After the fix, h5diff detects such cases as non-comparable
- and displays appropriate error messages.
- (JKM - 2012/03/28 - HDFFV-7644)
- - h5diff: If unique objects exist only in one file and if h5diff is set to
- exclude the unique objects with the --exclude-path option, then h5diff
- might miss excluding some objects. This was fixed to correctly exclude
- objects. (JKM - 2012/03/20 - HDFFV-7837)
- - h5diff: When two symbolic dangling links are compared with the
- --follow-symlinks option, the result should be the same. This worked when
- comparing two files, but didn't work when comparing two objects.
- h5diff now works when comparing two objects.
- (JKM - 2012/03/09 - HDFFV-7835)
- - h5dump: Added the tools library error stack to properly catch error
- information generated within the library. (ADB - 2012/03/12 - HDFFV-7958)
- - h5dump: Changed the process where an open link used to fail. Now dangling
- links no longer throw error messages. (ADB - 2012/03/12 - HDFFV-7839)
- - h5dump: Refactored code to remove duplicated functions. Split XML
- functions from DDL functions. Corrected indentation and formatting
- errors. Also fixed subsetting counting overflow (HDFFV-5874). Verified
- all tools call tools_init() in main. The USER_BLOCK data now correctly
- displays within the SUPER_BLOCK info. NOTE: WHITESPACE IN THE OUTPUT
- HAS CHANGED. (ADB - 2012/02/17 - HDFFV-7560)
- - h5diff: Fixed to prevent from displaying error stack message when
- comparing two dangling symbolic links with the follow-symlinks option.
- (JKM - 2012/01/13 - HDFFV-7836)
- - h5repack: Fixed a memory leak that occurred with the handling of
- variable length strings in attributes.
- (JKM - 2012/01/10 - HDFFV-7840)
- - h5ls: Fixed a segmentation fault that occurred when accessing region
- reference data in an attribute. (JKM - 2012/01/06 - HDFFV-7838)
-
- F90 API
- -------
- - None
-
- C++ API
- ------
- - None
-
- High-Level APIs:
- ------
- - None
-
- Fortran High-Level APIs:
- ------
- - h5ltget_attribute_string_f: The h5ltget_attribute_string_f used to return
- the C NULL character in the returned character buffer. The returned
- character buffer now does not return the C NULL character; the buffer
- is blank-padded if needed. (MSB - 2012/03/23)
-
-
-Platforms Tested
-================
-The following platforms and compilers have been tested for this release.
-
- AIX 5.3 xlc 10.1.0.5
- (NASA G-ADA) xlC 10.1.0.5
- xlf90 12.1.0.6
-
- FreeBSD 8.2-STABLE i386 gcc 4.2.1 [FreeBSD] 20070719
- (loyalty) g++ 4.2.1 [FreeBSD] 20070719
- gcc 4.6.1 20110422
- g++ 4.6.1 20110422
- gfortran 4.6.1 20110422
-
- FreeBSD 8.2-STABLE amd64 gcc 4.2.1 [FreeBSD] 20070719
- (freedom) g++ 4.2.1 [FreeBSD] 20070719
- gcc 4.6.1 20110422
- g++ 4.6.1 20110422
- gfortran 4.6.1 20110422
-
- Linux 2.6.18-194.3.1.el5PAE GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP i686 i686 i386 compilers for 32-bit applications;
- (jam) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
- Version 4.5.2
- PGI C, Fortran, C++ Compilers for 32-bit
- applications;
- Version 11.8-0
- Version 11.9-0
- Intel(R) C, C++, Fortran Compiler for 32-bit
- applications;
- Version 12.0
- Version 12.1
- MPICH mpich2-1.3.1 compiled with
- gcc 4.1.2 and gfortran 4.1.2
-
- Linux 2.6.18-308.1.1.el5 GNU C (gcc), Fortran (gfortran), C++ (g++)
- #1 SMP x86_64 GNU/Linux compilers for 32-bit applications;
- (koala) Version 4.1.2 20080704 (Red Hat 4.1.2-52)
- Version 4.5.2
- PGI C, Fortran, C++ for 64-bit target on
- x86-64;
- Version 11.9-0 (64-bit)
- Version 11.8-0 (32-bit)
- Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64;
- Version 12.0
- Version 12.1
- MPICH mpich2-1.3.1 compiled with
- gcc 4.1.2 and gfortran 4.1.2
-
- Linux 2.6.32-220.7.1.el6.ppc64 gcc (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)
- #1 SMP ppc64 GNU/Linux g++ (GCC) 4.4.6 20110731
- (ostrich) GNU Fortran (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)
-
- Linux 2.6.18-108chaos Intel C, C++, Fortran Compilers Version 11.1
- #1 SMP x86_64 GNU/Linux
- (LLNL Aztec)
-
- IBM Blue Gene/P XL C for Blue Gene/P, bgxlc V9.0
- (LLNL uDawn) XL C++ for Blue Gene/P, bgxlC V9.0
- XL Fortran for Blue Gene/P, bgxlf0 V11.1
-
- SunOS 5.10 32- and 64-bit Sun C 5.9 Sun OS_sparc Patch 124867-16
- (linew) Sun Fortran 95 8.3 Sun OS_sparc Patch 127000-13
- Sun C++ 5.9 Sun OS_sparc Patch 124863-26
- Sun C 5.11 SunOS_sparc
- Sun Fortran 95 8.5 SunOS_sparc
- Sun C++ 5.11 SunOS_sparc
-
- SGI Altix UV Intel(R) C, Fortran Compilers
- SGI ProPack 7 Linux Version 11.1 20100806
- 2.6.32.24-0.2.1.2230.2.PTF- SGI MPT 2.02
- default #1 SMP
- (NCSA ember)
-
- Dell NVIDIA Cluster Intel(R) C, Fortran Compilers
- Red Hat Enterprise Linux 6 Version 12.0.4 20110427
- 2.6.32-131.4.1.el6.x86_64 mvapich2 1.7rc1-intel-12.0.4
- (NCSA forge)
-
- Windows XP Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
- Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 w/ Intel Fortran 12 (cmake)
-
- Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
- Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 w/ Intel Fortran 12 (cmake)
-
- Windows 7 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 w/ Intel Fortran 12 (cmake)
- Cygwin(1.7.9 native gcc(4.5.3) compiler and gfortran)
-
- Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 w/ Intel Fortran 12 (cmake)
- Cygwin(1.7.9 native gcc(4.5.3) compiler and gfortran)
-
- Mac OS X Snow Leopard 10.6.8 i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (gcc)
- Darwin Kernel Version 10.8.0 i686-apple-darwin10-g++-4.2.1 (GCC) 4.2.1 (g++)
- Intel 64-bit (Apple Inc. build 5666) (dot 3)
- (fred) GNU Fortran (GCC) 4.6.1 (gfortran)
- Intel C (icc), Fortran (ifort), C++ (icpc)
- 12.1.0.038 Build 20110811
-
- Mac OS X Snow Leopard 10.6.8 i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (gcc)
- Darwin Kernel Version 10.8.0 i686-apple-darwin10-g++-4.2.1 (GCC) 4.2.1 (g++)
- Intel 32-bit (Apple Inc. build 5666) (dot 3)
- (tejeda) GNU Fortran (GCC) 4.6.1 (gfortran)
- Intel C (icc), Fortran (ifort), C++ (icpc)
- 12.1.0.038 Build 20110811
-
- Mac OS X Lion 10.7.3 GCC 4.2.1 gcc
- 32- and 64-bit GNU Fortran (GCC) 4.6.1 gfortran
- (duck) GCC 4.2.1. g++
-
- Debian6.0.3 2.6.32-5-686 #1 SMP i686 GNU/Linux
- gcc (Debian 4.4.5-8) 4.4.5
- GNU Fortran (Debian 4.4.5-8) 4.4.5
-
- Debian6.0.3 2.6.32-5-amd64 #1 SMP x86_64 GNU/Linux
- gcc (Debian 4.4.5-8) 4.4.5
- GNU Fortran (Debian 4.4.5-8) 4.4.5
-
- Fedora16 3.2.9-2.fc16.i6866 #1 SMP i686 i686 i386 GNU/Linux
- gcc (GCC) 4.6.2 20111027 (Red Hat 4.6.2-1)
- GNU Fortran (GCC) 4.6.2 20111027 (Red Hat 4.6.2-1)
-
- Fedora16 3.2.9-2.fc16.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.6.2 20111027 (Red Hat 4.6.2-1)
- GNU Fortran (GCC) 4.6.2 20111027 (Red Hat 4.6.2-1)
-
- SUSE 12.1 3.1.9-1.4-desktop #1 SMP PREEMPT i686 i686 i386 GNU/Linux
- gcc (SUSE Linux) 4.6.2
- GNU Fortran (SUSE Linux) 4.6.2
-
- SUSE 12.1 3.1.9-1.4-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.6.2
- GNU Fortran (SUSE Linux) 4.6.2
-
- Ubuntu 11.10 3.0.0-16-generic #29-Ubuntu SMP i686 GNU/Linux
- gcc (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
- GNU Fortran (Ubuntu/Linaro 4.6.4-9ubuntu3) 4.6.1
-
- Ubuntu 11.10 3.0.0-16-generic #29-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
- GNU Fortran (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
-
- Cray Linux Environment (CLE) PrgEnv-pgi 2.2.74
- hopper.nersc.gov pgcc 11.9-0 64-bit target on x86-64 Linux -tp k8e
- pgf90 11.9-0 64-bit target on x86-64 Linux -tp k8e
- pgCC 11.9-0 64-bit target on x86-64 Linux -tp k8e
-
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-Solaris2.10 32-bit n y n y y y
-Solaris2.10 64-bit n y n y y y
-Windows XP n y(4) n y y y
-Windows XP x64 n y(4) n y y y
-Windows Vista n y(4) n y y y
-Windows Vista x64 n y(4) n y y y
-Mac OS X Snow Leopard 10.6.8 32-bit n y n y y n
-Mac OS X Snow Leopard 10.6.8 64-bit n y n y y y
-Mac OS X Lion 10.7.3 32-bit n y n y y n
-Mac OS X Lion 10.7.3 64-bit n y n y y y
-AIX 5.3 32- and 64-bit y y y y y y
-FreeBSD 8.2-STABLE 32&64 bit n x n x y y
-CentOS 5.5 Linux 2.6.18-194 i686 GNU (1)W y y(2) y y y y
-CentOS 5.5 Linux 2.6.18-194 i686 Intel W n y n y y y
-CentOS 5.5 Linux 2.6.18-194 i686 PGI W n y n y y y
-CentOS 5.5 Linux 2.6.18 x86_64 GNU (1) W y y(3) y y y y
-CentOS 5.5 Linux 2.6.18 x86_64 Intel W n y n y y y
-CentOS 5.5 Linux 2.6.18 x86_64 PGI W n y n y y y
-Linux 2.6.32-220.7.1.el6.ppc64 n y n y y y
-SGI ProPack 7 Linux 2.6.32.24 y y y y y y
-Red Hat Enterprise Linux 6 y y y y y y
-CLE hopper.nersc.gov y y(3) y y y n
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.10 32-bit y y y y
-Solaris2.10 64-bit n n n n
-Windows XP y y(4) y n
-Windows XP x64 y y(4) y n
-Windows Vista y y(4) y y
-Windows Vista x64 y y(4) y y
-Mac OS X Snow Leopard 10.6.8 32-bit y n y n
-Mac OS X Snow Leopard 10.6.8 64-bit y n y n
-Mac OS X Lion 10.7.3 32-bit y n y y
-Mac OS X Lion 10.7.3 64-bit y n y y
-AIX 5.3 32- and 64-bit n n n y
-FreeBSD 8.2-STABLE 32&64 bit y x x y
-CentOS 5.5 Linux 2.6.18-194 i686 GNU (1)W y y(2) y y
-CentOS 5.5 Linux 2.6.18-194 i686 Intel W y y y n
-CentOS 5.5 Linux 2.6.18-194 i686 PGI W y y y n
-CentOS 5.5 Linux 2.6.18 x86_64 GNU (1) W y y y y
-CentOS 5.5 Linux 2.6.18 x86_64 Intel W y y y n
-CentOS 5.5 Linux 2.6.18 x86_64 PGI W y y y n
-Linux 2.6.32-220.7.1.el6.ppc64 y y y n
-SGI ProPack 7 Linux 2.6.32.24 y y y n
-Red Hat Enterprise Linux 6 y y y n
-CLE hopper.nersc.gov n n n n
-
- (1) Fortran compiled with gfortran.
- (2) With PGI and Absoft compilers.
- (3) With PGI compiler for Fortran.
- (4) Using Visual Studio 2008 w/ Intel Fortran 10.1 (Cygwin shared libraries are not supported)
- (5) C and C++ shared libraries will not be built when Fortran is enabled.
- Compiler versions for each platform are listed in the preceding
- "Platforms Tested" table.
-
-
-Known Problems
-==============
-* The h5repacktst test fails on AIX 32-bit because the test uses more
- memory than the default amount. The failure message typically looks like:
-
- "time: 0551-010 The process was stopped abnormally. Try again."
-
- This is an issue with the test only and does not represent a problem with
- the library. To allow the test to pass, request more memory when testing
- via appropriate command such as:
-
- $ env LDR_CNRTL=MAXDATA=0x20000000@DSA make check
-
- (AKC - 2012/05/09 - HDFFV-8016)
-
-* The file_image test will fail in the "initial file image and callbacks in
- the core VFD" sub-test if the source directory is read-only as the test
- fails to create its test files in the build directory. This will be
- resolved in a future release.
- (AKC - 2012/05/05 - HDFFV-8009)
-
-* The dt_arith test reports several errors involving "long double" on
- Mac OS X 10.7 Lion when any level of optimization is enabled. The test does
- not fail in debug mode. This will be addressed in a future release.
- (SLU - 2012/05/08)
-
-* The following h5dump test case fails in BG/P machines (and potentially other
- machines that use a command script to launch executables):
-
- h5dump --no-compact-subset -d "AHFINDERDIRECT::ah_centroid_t[0] it=0 tl=0"
- tno-subset.h5
-
- This is due to the embedded spaces in the dataset name being interpreted
- by the command script launcher as meta-characters, thus passing three
- arguments to h5dump's -d flag. The command passes if run by hand, just
- not via the test script.
- (AKC - 2012/05/03)
-
-* The ph5diff (parallel h5diff) tool can intermittently hang in parallel mode
- when comparing two HDF5 files that contain objects with the same names but
- with different object types.
- (JKM - 2012/04/27)
-
-* On hopper, the build failed when RUNSERIAL and RUNPARALLEL are set
- to aprun -np X, because the H5lib_settings.c file was not generated
- properly. Not setting those environment variables works, because
- configure was able to automatically detect that it's a Cray system
- and used the proper launch commands when necessary.
- (MSC - 2012/04/18)
-
-* The data conversion test dt_arith.c fails in "long double" to integer
- conversion on Ubuntu 11.10 (3.0.0.13 kernel) with GCC 4.6.1 if the library
- is built with optimization -O3 or -O2. The older GCC (4.5) or newer kernel
- (3.2.2 on Fedora) doesn't have the problem. Users should lower the
- optimization level (-O1 or -O0) by defining CFLAGS in the command line of
- "configure" like:
-
- CFLAGS=-O1 ./configure
-
- This will overwrite the library's default optimization level.
- (SLU - 2012/02/07 - HDFFV-7829)
-
-* The STDIO VFD does not work on some architectures, possibly due to 32/64
- bit or large file issues. The basic STDIO VFD test is known to fail on
- 64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
- 10.7.0. The STDIO VFD test has been disabled while we investigate and
- a fix should appear in a future release.
- (DER - 2011/10/14)
-
-* h5diff can report inconsistent results when comparing datasets of enum type
- that contain invalid values. This is due to how enum types are handled in
- the library and will be addressed in a future release.
- (DER - 2011/10/14 - HDFFV-7527)
-
-* The links test can fail under the stdio VFD due to some issues with external
- links. This will be investigated and fixed in a future release.
- (DER - 2011/10/14 - HDFFV-7768)
-
-* After the shared library support was fixed for some bugs, it was discovered
- that "make prefix=XXX install" no longer works for shared libraries. It
- still works correctly for static libraries. Therefore, if you want to
- install the HDF5 shared libraries in a location such as /usr/local/hdf5,
- you need to specify the location via the --prefix option during configure
- time. E.g, ./configure --prefix=/usr/local/hdf5 ...
- (AKC - 2011/05/07 - HDFFV-7583)
-
-* The parallel test, t_shapesame, in testpar/, may run for a long time and may
- be terminated by the alarm signal. If that happens, one can increase the
- alarm seconds (default is 1200 seconds = 20 minutes) by setting the
- environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
- (60 minutes). Note that the t_shapesame test may fail in some systems
- (see the "While working on the 1.8.6 release..." problem below). If
- it does, it will waste more time if $HDF5_ALARM_SECONDS is set
- to a larger value.
- (AKC - 2011/05/07)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD.
- (QAK - 2011/04/26)
-
-* Shared Fortran libraries are not quite working on AIX. While they are
- generated when --enable-shared is specified, the fortran and hl/fortran
- tests fail. We are looking into the issue. HL and C++ shared libraries
- should now be working as intended, however.
- (MAM - 2011/04/20)
-
-* The --with-mpe configure option does not work with Mpich2.
- (AKC - 2011/03/10)
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or file systems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
- (NAF - 2011/01/19)
-
-* The library's test dt_arith.c showed a compiler's rounding problem on
- Cygwin when converting from unsigned long long to long double. The
- library's own conversion works fine. We defined a macro for Cygwin to
- skip this test until we can solve the problem.
- (SLU - 2010/05/05 - HDFFV-1264)
-
-* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added in. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug in 1.8 library. Because there's only one user
- complaining about it, we (Elena, Quincey, and I) decided to leave it as
- it is (see bug report #1279). Quincey will make a plan for 1.10.
- (SLU - 2010/02/02)
-
-* MinGW has a missing libstdc++.dll.a library file and will not successfully link
- C++ applications/tests. Do not use the enable-cxx configure option. Read all of
- the INSTALL_MINGW.txt file for all restrictions.
- (ADB - 2009/11/11)
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
- (MAM - 2009/11/04)
-
-* The PathScale MPI implementation, accessing a Panasas file system, would
- cause H5Fcreate() with H5F_ACC_EXCL to fail even when the file does not
- exist. This is due to the MPI_File_open() call failing if the mode has
- the MPI_MODE_EXCL bit set.
- (AKC - 2009/08/11 - HDFFV-988)
-
-* Parallel tests failed with 16 processes with data inconsistency at testphdf5
- / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
- collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
- with MPI IO.
- (CMC - 2009/04/28)
-
-* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
- tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
- are expected to fail and should exit with a non-zero code but the yod
- command does not propagate the exit code of the executables. Yod always
- returns 0 if it can launch the executable. The test suite shell expects
- a non-zero for this particular test, therefore it concludes the test has
- failed when it receives 0 from yod. Skip all the "failing" test for now
- by changing them as following.
-
- ======== Original tools/h5ls/testh5ls.sh =========
- TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ======== Change to ===============================
- echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ==================================================
-
- ======== Original tools/h5copy/testh5copy.sh =========
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- H5LSTEST $FILEOUT
- ======== Change to ===============================
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- echo SKIP H5LSTEST $FILEOUT
- ==================================================
- (AKC - 2008/11/10)
-
-* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
- message, "yod allocation delayed for node recovery". This interferes with
- test suites that do not expect to see this message. See the section of "Red
- Storm" in file INSTALL_parallel for a way to deal with this problem.
- (AKC - 2008/05/28)
-
-* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
- the application asks to do collective IO, we have found that when using 4
- processors, a simple collective write will sometimes be hung. This can be
- verified with t_mpi test under testpar.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- (SLU - 2005/06/30)
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command `poe'.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
-
- The tests may fail with messages like "The socket name is already in use",
- but HDF5 does not use sockets. This failure is due to problems with the
- poe command trying to set up the debug socket. To resolve this problem,
- check to see whether there are many old /tmp/s.pedb.* files staying around.
- These are sockets used by the poe command and left behind due to failed
- commands. First, ask your system administrator to clean them out.
- Lastly, request IBM to provide a means to run poe without the debug socket.
- (AKC - 2004/12/08)
-
-
-%%%%1.8.8%%%%
-
-
-HDF5 version 1.8.8 released on 2011-11-15
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.7 and
-HDF5 1.8.8, and contains information on the platforms tested and
-known problems in HDF5-1.8.8.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.8 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.8 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.8 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.8 (current
-release) versus Release 1.8.7":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.7
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - Added the --enable-fortran2003 flag to enable Fortran2003 support
- in the HDF5 Fortran library. The flag should be used along with the
- --enable-fortran flag and takes affect only when the Fortran compiler
- is Fortran2003 compliant. (EIP - 2011/11/14)
- - Added checks for clock_gettime and mach/mach_time.h to both configure and
- CMake. This will support the move from gettimeofday to clock_gettime's
- monotonic timer in the profiling code in a future release.
- (DER - 2011/10/12)
-
- Library
- -------
- - The Windows VFD code has been removed with the exception of the functions
- which set it (H5Pset_fapl_windows, for example). Setting the Windows
- VFD now really sets the SEC2 VFD. The WINDOWS_MAX_BUF and
- WINDOWS_USE_STDIO configuration options and #defines have also been
- removed. NOTE: Since the Windows VFD was a clone of the SEC2 VFD, this
- change should be transparent to users.
- (DER - 2011/10/12 - HDFFV-7740, HDFFV-7744)
- - H5Tcreate now supports the string type (fixed-length and variable-
- length). (SLU - 2011/05/20)
-
- Parallel Library
- ----------------
- - Added new H5Pget_mpio_actual_chunk_opt_mode and
- H5Pget_mpio_actual_io_mode API routines for querying whether/how
- a collective I/O operation completed. (QAK - 2011/10/12)
-
- Tools
- -----
- - None
-
- High-Level APIs
- ---------------
- - Added the following Fortran wrappers for the Dimension Scale APIs:
- h5dsset_scale_f
- h5dsattach_scale_f
- h5dsdetach_scale_f
- h5dsis_attached_f
- h5dsis_scale_f
- h5dsset_label_f
- h5dsget_label_f
- h5dsget_scale_name_f
- h5dsget_num_scales_f
- (EIP for SB - 2011/10/13 - HDFFV-3797)
-
- Fortran API
- -----------
- - The HDF5 Fortran library was enhanced to support the Fortran 2003 standard.
- The following features are available when the HDF5 library is configured
- using the --enable-fortran and --enable-fortran2003 configure flags AND
- if the Fortran compiler is Fortran 2003 compliant:
-
- - Subroutines overloaded with the C_PTR derived type:
- h5pget_f
- h5pget_fill_value_f
- h5pinsert_f
- h5pregister_f
- h5pset_f
- h5pset_fill_value_f
- h5rcreate_f
- h5rderefrence_f
- h5rget_name_f
- h5rget_obj_type_f
- - Subroutines overloaded with the C_PTR derived type
- and simplified signatures:
- h5aread_f
- h5awrite_f
- h5dread_f
- h5dwrite_f
- - New subroutines
- h5dvlen_reclaim_f
- h5literate_by_name_f
- h5literate_f
- h5ovisit_f
- h5tconvert_f
- h5pset_nbit_f
- h5pset_scaleoffset_f
- - Subroutines with additional optional parameters:
- h5pcreate_class_f
- (EIP - 2011/10/14)
-
- C++ API
- -------
- - None
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - None
-
-Bug Fixes since HDF5-1.8.7
-==========================
-
- Configuration
- -------------
- - Changed the size of H5_SIZEOF_OFF_T to 4 bytes (was 8) in the VMS
- h5pubconf.h based on the output of a test program. (DER - 2011/10/12)
- - The Windows and VMS versions of H5pubconf.h were brought into sync with
- the linux/posix version. (DER - 2011/10/12)
- - Fixed a bug in the bin/trace Perl script where API functions
- that take a variable number of arguments were not processed for
- trace statement fixup. (DER - 2011/08/25)
- - The --enable-h5dump-packed-bits configure option has been removed.
- The h5dump code that this option conditionally enabled is now always
- compiled into h5dump. Please refer to the h5dump reference manual for
- usage of the packed bits feature. (MAM - 2011/06/23 - HDFFV-7592)
- - Configure now uses the same flags and symbols in its tests that are
- used to build the library. (DER - 2011/05/24)
-
- Library
- -------
- - Corrected the error when copying attributes between files which are using
- different versions of the file format. (QAK - 2011/10/20 - HDFFV-7718)
- - Corrected the error when loading local heaps from the file, which could
- cause the size of the local heap's data block to increase dramatically.
- (QAK - 2011/10/14 - HDFFV-7767)
- - An application does not need to do H5O_move_msgs_forward() when writing
- attributes. Tests were checked into the performance suite.
- (VC - 2011/10/13 - HDFFV-7640)
- - Fixed a bug that occurred when using H5Ocopy on a committed datatype
- containing an attribute using that committed datatype.
- (NAF - 2011/10/13 - HDFFV-5854)
- - Added generic VFD I/O types to the SEC2 and log VFDs to ensure correct
- I/O sizes (and remove compiler warnings) between Windows and true POSIX
- systems. (DER - 2011/10/12)
- - Corrected some Windows behavior in the SEC2 and log VFDs. This mainly
- involved datatype correctness fixes, Windows API call error checks,
- and adding the volume serial number to the VFD cmp functions.
- (DER - 2011/10/12)
- - Converted post-checks for the appropriate POSIX I/O sizes to pre-checks
- in order to avoid platform-specific or undefined behavior.
- (DER - 2011/10/12)
- - #ifdef _WIN32 instances have been changed to #ifdef H5_HAVE_WIN32_API.
- H5_HAVE_VISUAL_STUDIO checks have been added where necessary. This is in
- CMake only as configure never sets _WIN32. (ADB - 2011/09/12)
- - CLANG compiler with the options -fcatch-undefined-behavior and -ftrapv
- discovered 3 problems in tests and tools' library:
- 1. In dsets.c, left shifting an unsigned int for 32 bits or more
- caused undefined behavior.
- 2. In dt_arith.c, the INIT_INTEGER macro definition has an overflow
- when the value is a negative minimal and is being subtracted from one.
- 3. In tools/lib/h5tools_str.c, right shifting an int value for 32 bits
- or more caused undefined behavior.
- All the problems have been corrected. (SLU - 2011/09/02 - HDFFV-7674)
- - H5Epush2() now has the correct trace functionality (this is related to the
- bin/trace Perl script bug noted in the configure section).
- (DER - 2011/08/25)
- - Corrected mismatched function name typo of h5pget_dxpl_mpio_c and
- h5pfill_value_defined_c. (AKC - 2011/08/22 - HDFFV-7641)
- - Corrected an internal error in the library where objects that use committed
- (named) datatypes and were accessed from two different file IDs could confuse
- the two and cause erroneous failures. (QAK - 2011/07/18 - HDFFV-7638)
- - In v1.6 of the library, there was an EOA for the whole MULTI file saved in the
- super block. We took it out in v1.8 of the library because it's meaningless
- for the MULTI file. v1.8 of the library saves the EOA for the metadata file
- instead, but this caused a backward compatibility problem.
- A v1.8 library couldn't open the file created with the v1.6 library. We
- fixed the problem by checking the EOA value to detect the file
- created with v1.6 library. (SLU - 2011/06/22)
- - When a dataset had filters and reading data failed, the error message
- didn't say which filter wasn't registered. It's fixed now. (SLU - 2011/06/03)
-
- Parallel Library
- ----------------
- - The Special Collective IO (IO when some processes do not contribute to the
- IO) and the Complex Derived Datatype MPI functionalities are no longer
- conditionally enabled in the library by configure. They are always
- enabled in order to take advantage of performance boosts from these
- behaviors. Older MPI implementations that do not allow for these
- functionalities can no longer by used by HDF5.
- (MAM - 2011/07/08 - HDFFV-7639).
-
- Tools
- -----
- - h5diff: fixed segfault over non-comparable attribute with different
- dimension or rank, along with '-c' option to display details.
- (JKM - 2011/10/24 - HDFFV-7770)
- - Fixed h5diff to display all the comparable objects and attributes
- regardless of detecting non-comparables. (JKM - 2011/09/16 - HDFFV-7693)
- - Fixed h5repack to update the values of references(object and region) of
- attributes in h5repack for 1) references, 2) arrays of references,
- 3) variable-length references, and 4) compound references.
- (PC - 2011/09/14 - HDFFV-5932)
- - h5diff: fixed a segfault over a dataset with container types
- array and variable-length (vlen) along with multiple nested compound types.
- Example: compound->array->compound, compound->vlen->compound.
- (JKM - 2011/09/01 - HDFFV-7712)
- - h5repack: added macro to handle a failure in H5Dread/write when memory
- allocation failed inside the library. (PC - 2011/08/19)
- - Fixed h5jam to not to allow the specifying of an HDF5 formatted file as
- an input file for the -u (user block file) option. The original HDF5 file
- would not be accessible if this behavior was allowed.
- (JKM - 2011/08/19 - HDFFV-5941)
- - Revised the command help pages of h5jam and h5unjam. The descriptions
- were not up to date and some were missing.
- (JKM - 2011/08/15 - HDFFV-7515)
- - Fixed h5dump to correct the schema location:
-
- (ADB - 2011/08/10)
- - h5repack: h5repack failed to copy a dataset if the layout is changed
- from chunked with unlimited dimensions to contiguous.
- (PC - 2011/07/15 - HDFFV-7649)
- - Fixed h5diff: the "--delta" option considers two NaN of the same type
- are different. This is wrong based on the h5diff description in the
- Reference Manual. (PC - 2011/07/15 - HDFFV-7656)
- - Fixed h5diff to display an instructive error message and exit with
- an instructive error message when mutually exclusive options
- (-d, -p and --use-system-epsilon) are used together.
- (JKM - 2011/07/07 - HDFFV-7600)
- - Fixed h5dump so that it displays the first line of each element in correct
- position for multiple dimension array types. Before this fix,
- the first line of each element in an array was
- displayed after the last line of previous element without
- moving to the next line (+indentation).
- (JKM - 2011/06/15 - HDFFV-5878)
- - Fixed h5dump so that it will display the correct value for
- H5T_STD_I8LE datasets on the Blue-gene system (ppc64, linux, Big-Endian,
- clustering). (AKC & JKM - 2011/05/12 - HDFFV-7594)
- - Fixed h5diff to compare a file to itself correctly. Previously h5diff
- reported either the files were different or not compatible in certain
- cases even when comparing a file to itself. This fix also improves
- performance when comparing the same target objects through verifying
- the object and file addresses before comparing the details
- in the objects. Examples of details are datasets and attributes.
- (XCAO & JKM - 2011/05/06 - HDFFV-5928)
-
- F90 API
- -------
- - Modified the h5open_f and h5close_f subroutines to not to call H5open
- and H5close correspondingly. While the H5open call just adds overhead,
- the H5close call called by a Fortran application shuts down the HDF5
- library. This makes the library inaccessible to the application.
- (EIP & SB - 2011/10/13 - HDFFV-915)
- - Fixed h5tget_tag_f where the length of the C string was used to
- repack the C string into the Fortran string. This lead to memory
- corruption in the calling program. (SB - 2011/07/26)
- - Added defined constants:
- H5T_ORDER_MIXED_F (HDFFV-2767)
- H5Z_SO_FLOAT_DSCALE_F
- H5Z_SO_FLOAT_ESCALE_F
- H5Z_SO_INT_F
- H5Z_SO_INT_MINBITS_DEFAULT_F
- H5O_TYPE_UNKNOWN_F
- H5O_TYPE_GROUP_F
- H5O_TYPE_DATASET_F
- H5O_TYPE_NAMED_DATATYPE_F
- H5O_TYPE_NTYPES_F
-
- C++ API
- ------
- - None
-
- High-Level APIs:
- ------
- - Fixed the H5LTdtype_to_text function. It had some memory problems when
- dealing with some complicated data types. (SLU - 2011/10/19 - HDFFV-7701)
- - Fixed H5DSset_label seg faulting when retrieving the length of a
- dimension label that was not set. (SB - 2011/08/07 - HDFFV-7673)
- - Fixed a dimension scale bug where if you create a dimscale, attach two
- datasets to it, and then unattach them, you get an error if they are
- unattached in order, but no error if you unattach them in reverse order.
- (SB - 2011/06/07 - HDFFV-7605)
-
- Fortran High-Level APIs:
- ------
- - None
-
-
-Platforms Tested
-================
-The following platforms and compilers have been tested for this release.
-
- AIX 5.3 xlc 10.1.0.5
- (NASA G-ADA) xlC 10.1.0.5
- xlf90 12.1.0.6
-
- FreeBSD 8.2-STABLE i386 gcc 4.2.1 [FreeBSD] 20070719
- (loyalty) g++ 4.2.1 [FreeBSD] 20070719
- gcc 4.6.1 20110422
- g++ 4.6.1 20110422
- gfortran 4.6.1 20110422
-
- FreeBSD 8.2-STABLE amd64 gcc 4.2.1 [FreeBSD] 20070719
- (freedom) g++ 4.2.1 [FreeBSD] 20070719
- gcc 4.6.1 20110422
- g++ 4.6.1 20110422
- gfortran 4.6.1 20110422
-
- IBM Blue Gene/P bgxlc 9.0.0.9
- (LLNL uDawn) bgxlf90 11.1.0.7
- bgxlC 9.0.0.9
-
- Linux 2.6.16.60-0.54.5-smp Intel(R) C, C++, Fortran Compilers
- x86_64 Version 11.1 20090630
- (INL Icestorm)
-
- Linux 2.6.18-194.el5 x86_64 Intel(R) C, C++, Fortran Compilers
- (INL Fission) Version 12.0.2 20110112
-
- Linux 2.6.18-108chaos x86_64 Intel(R) C, C++, Fortran Compilers
- (LLNL Aztec) Version 11.1 20090630
-
- Linux 2.6.18-194.3.1.el5PAE gcc (GCC) 4.1.2 and 4.4.2
- #1 SMP i686 i686 i386 GNU Fortran (GCC) 4.1.2 20080704
- (jam) (Red Hat 4.1.2-48) and 4.4.2
- PGI C, Fortran, C++ 10.4-0 32-bit
- PGI C, Fortran, C++ 10.6-0 32-bit
- Intel(R) C Compiler for 32-bit
- applications, Version 11.1
- Intel(R) C++ Compiler for 32-bit
- applications, Version 11.1
- Intel(R) Fortran Compiler for 32-bit
- applications, Version 11.1
- MPICH mpich2-1.3.1 compiled with
- gcc 4.1.2 and gfortran 4.1.2
-
- Linux 2.6.18-238.12.1.el5 gcc 4.1.2 and 4.4.2
- #1 SMP x86_64 GNU/Linux GNU Fortran (GCC) 4.1.2 20080704
- (koala) (Red Hat 4.1.2-46) and 4.4.2
- tested for both 32- and 64-bit binaries
- Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64,
- Version 11.1.
- PGI C, Fortran, C++ Version 9.0-4
- for 64-bit target on x86-64
- MPICH mpich2-1.3.1 compiled with
- gcc 4.1.2 and gfortran 4.1.2
-
- SGI Altix UV Intel(R) C, Fortran Compilers
- SGI ProPack 7 Linux Version 11.1 20100806
- 2.6.32.24-0.2.1.2230.2.PTF- SGI MPT 2.02
- default #1 SMP
- (NCSA ember)
-
- Dell NVIDIA Cluster Intel(R) C, Fortran Compilers
- Red Hat Enterprise Linux 6 Version 12.0.4 20110427
- 2.6.32-131.4.1.el6.x86_64 mvapich2 1.7rc1-intel-12.0.4
- (NCSA forge)
-
- SunOS 5.10 32- and 64-bit Sun C 5.11 SunOS_sparc 2010/08/13
- Sun Fortran 95 8.5 SunOS_sparc 2010/08/13
- Sun C++ 5.11 SunOS_sparc 2010/08/13
-
- Windows XP Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
- Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 (cmake)
- Cygwin(1.7.9 native gcc(4.5.3) compiler and gfortran)
-
- Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
- Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 (cmake)
- Cygwin(1.7.9 native gcc(4.5.3) compiler and gfortran)
-
- Windows Vista Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
-
- Windows Vista x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
-
- Windows 7 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
-
- Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
-
- Mac OS X 10.8.0 (Intel 64-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3)
- Darwin Kernel Version 10.8.0 GNU Fortran (GCC) 4.6.1
- Intel C, C++ and Fortran compilers 12.1.0
-
- Mac OS X 10.8.0 (Intel 32-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3)
- Darwin Kernel Version 10.8.0 GNU Fortran (GCC) version 4.6.1
- Intel C, C++ and Fortran compilers 12.1.0
-
- Fedora 12 2.6.32.16-150.fc12.ppc64 #1 SMP ppc64 GNU/Linux
- gcc (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
- GNU Fortran (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
-
- Debian6.0.3 2.6.32-5-686 #1 SMP i686 GNU/Linux
- gcc (Debian 4.4.5-8) 4.4.5
- GNU Fortran (Debian 4.4.5-8) 4.4.5
-
- Debian6.0.3 2.6.32-5-amd64 #1 SMP x86_64 GNU/Linux
- gcc (Debian 4.4.5-8) 4.4.5
- GNU Fortran (Debian 4.4.5-8) 4.4.5
-
- Fedora15 2.6.40.6-0.fc15.i686.PAE #1 SMP i686 i686 i386 GNU/Linux
- gcc (GCC) 4.6.1 20110908 (Red Hat 4.6.1-9)
- GNU Fortran (GCC) 4.6.1 20110908 (Red Hat 4.6.1-9)
-
- Fedora15 2.6.40.6-0.fc15.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.6.1 20110908 (Red Hat 4.6.1-9)
- GNU Fortran (GCC) 4.6.1 20110908 (Red Hat 4.6.1-9)
-
- SUSE 11.4 2.6.37.6-0.7-desktop #1 SMP PREEMPT i686 i686 i386 GNU/Linux
- gcc (SUSE Linux) 4.5.1 20101208
- GNU Fortran (SUSE Linux) 4.5.1 20101208
-
- SUSE 11.4 2.6.37.6-0.7-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.5.1 20101208
- GNU Fortran (SUSE Linux) 4.5.1 20101208
-
- Ubuntu 11.10 3.0.0-12-generic #20-Ubuntu SMP i686 GNU/Linux
- gcc (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
- GNU Fortran (Ubuntu/Linaro 4.6.4-9ubuntu3) 4.6.1
-
- Ubuntu 11.10 3.0.0-12-generic #20-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
- GNU Fortran (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
-
- OpenVMS Alpha 8.3 HP C V7.3-009
- HP Fortran V8.2-104679-48H9K
- HP C++ V7.3-009
-
- Cray Linux Environment (CLE) PrgEnv-pgi 2.2.74
- hopper.nersc.gov pgcc 11.7-0 64-bit target on x86-64 Linux -tp k8e
- franklin.nersc.gov pgf90 11.7-0 64-bit target on x86-64 Linux -tp k8e
- pgCC 11.7-0 64-bit target on x86-64 Linux -tp k8e
-
-Tested Configuration Features Summary
-=====================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-Solaris2.10 32-bit n y n y y y
-Solaris2.10 64-bit n y n y y y
-Windows XP n y(4) n y y y
-Windows XP x64 n y(4) n y y y
-Windows Vista n y(4) n y y y
-Windows Vista x64 n y(4) n y y y
-OpenVMS Alpha n y n y y n
-Mac OS X 10.8 Intel 32-bit n y n y y y
-Mac OS X 10.8 Intel 64-bit n y n y y y
-AIX 5.3 32- and 64-bit n y n y y y
-FreeBSD 8.2-STABLE 32&64 bit n x n x y y
-CentOS 5.5 Linux 2.6.18-194 i686 GNU (1)W y y(2) y y y y
-CentOS 5.5 Linux 2.6.18-194 i686 Intel W n y n y y n
-CentOS 5.5 Linux 2.6.18-194 i686 PGI W n y n y y n
-CentOS 5.5 Linux 2.6.16 x86_64 GNU (1) W y y(3) y y y y
-CentOS 5.5 Linux 2.6.16 x86_64 Intel W n y n y y n
-CentOS 5.5 Linux 2.6.16 x86_64 PGI W n y n y y y
-Fedora 12 Linux 2.6.32.16-150.fc12.ppc64 n y n y y y
-SGI ProPack 7 Linux 2.6.32.24 y y y y y y
-Red Hat Enterprise Linux 6 y y y y y y
-CLE hopper.nersc.gov y y(3) y y y n
-CLE franklin.nersc.gov y y(3) y y y n
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.10 32-bit y y y y
-Solaris2.10 64-bit y y y y
-Windows XP y y(4) y n
-Windows XP x64 y y(4) y n
-Windows Vista y y(4) y y
-Windows Vista x64 y y(4) y y
-OpenVMS Alpha n n n n
-Mac OS X 10.8 Intel 32-bit y(5) n y n
-Mac OS X 10.8 Intel 64-bit y(5) n y n
-AIX 5.3 32- and 64-bit n n n y
-FreeBSD 8.2-STABLE 32&64 bit y x x y
-CentOS 5.5 Linux 2.6.18-128 i686 GNU (1)W y y(2) y y
-CentOS 5.5 Linux 2.6.18-128 i686 Intel W y y y n
-CentOS 5.5 Linux 2.6.18-128 i686 PGI W y y y n
-CentOS 5.5 Linux 2.6.16 x86_64 GNU (1) W y y y y
-CentOS 5.5 Linux 2.6.16 x86_64 Intel W y y y n
-CentOS 5.5 Linux 2.6.16 x86_64 PGI W y y y n
-Fedora 12 Linux 2.6.32.16-150.fc12.ppc64 y y y y
-SGI ProPack 7 Linux 2.6.32.24 y y y n
-Red Hat Enterprise Linux 6 y y y n
-CLE hopper.nersc.gov n n n n
-CLE franklin.nersc.gov n n n n
-
- (1) Fortran compiled with gfortran.
- (2) With PGI and Absoft compilers.
- (3) With PGI compiler for Fortran.
- (4) Using Visual Studio 2008 w/ Intel Fortran 10.1 (Cygwin shared libraries are not supported)
- (5) C and C++ shared libraries will not be built when Fortran is enabled.
- Compiler versions for each platform are listed in the preceding
- "Platforms Tested" table.
-
-
-Known Problems
-==============
-
-* The STDIO VFD does not work on some architectures, possibly due to 32/64
- bit or large file issues. The basic STDIO VFD test is known to fail on
- 64-bit SunOS 5.10 on SPARC when built with -m64 and 32-bit OS X/Darwin
- 10.7.0. The STDIO VFD test has been disabled while we investigate and
- a fix should appear in a future release, possibly 1.8.9.
- (DER - 2011/10/14)
-
-* h5diff can report inconsistent results when comparing datasets of enum type
- that contain invalid values. This is due to how enum types are handled in
- the library and will be addressed in the next release.
- (DER - 2011/10/14 - HDFFV-7527)
-
-* The links test can fail under the stdio VFD due to some issues with external
- links. This will be investigated and fixed in a future release.
- (DER - 2011/10/14 - HDFFV-7768)
-
-* After the shared library support was fixed for some bugs, it was discovered
- that "make prefix=XXX install" no longer works for shared libraries. It
- still works correctly for static libraries. Therefore, if you want to
- install the HDF5 shared libraries in a location such as /usr/local/hdf5,
- you need to specify the location via the --prefix option during configure
- time. E.g, ./configure --prefix=/usr/local/hdf5 ...
- (AKC - 2011/05/07 - HDFFV-7583)
-
-* The parallel test, t_shapesame, in testpar/, may run for a long time and may
- be terminated by the alarm signal. If that happens, one can increase the
- alarm seconds (default is 1200 seconds = 20 minutes) by setting the
- environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
- (60 minutes). Note that the t_shapesame test may fail in some systems
- (see the "While working on the 1.8.6 release..." problem below). If
- it does, it will waste more time if $HDF5_ALARM_SECONDS is set
- to a larger value. (AKC - 2011/05/07)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD.
- (QAK - 2011/04/26)
-
-* Shared Fortran libraries are not quite working on AIX. While they are
- generated when --enable-shared is specified, the fortran and hl/fortran
- tests fail. We are looking into the issue. HL and C++ shared libraries
- should now be working as intended, however. (MAM - 2011/04/20)
-
-* The --with-mpe configure option does not work with Mpich2. (AKC - 2011/03/10)
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or file systems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
- (NAF - 2011/01/19)
-
-* The library's test dt_arith.c showed a compiler's rounding problem on
- Cygwin when converting from unsigned long long to long double. The
- library's own conversion works fine. We defined a macro for Cygwin to
- skip this test until we can solve the problem.
- (SLU - 2010/05/05 - HDFFV-1264)
-
-* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added in. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug in 1.8 library. Because there's only one user
- complaining about it, we (Elena, Quincey, and I) decided to leave it as
- it is (see bug report #1279). Quincey will make a plan for 1.10.
- (SLU - 2010/02/02)
-
-* MinGW has a missing libstdc++.dll.a library file and will not successfully link
- C++ applications/tests. Do not use the enable-cxx configure option. Read all of
- the INSTALL_MINGW.txt file for all restrictions. (ADB - 2009/11/11)
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
- (MAM - 2009/11/04)
-
-* The PathScale MPI implementation, accessing a Panasas file system, would
- cause H5Fcreate() with H5F_ACC_EXCL to fail even when the file does not
- exist. This is due to the MPI_File_open() call failing if the mode has
- the MPI_MODE_EXCL bit set. (AKC - 2009/08/11 - HDFFV-988)
-
-* Parallel tests failed with 16 processes with data inconsistency at testphdf5
- / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
- collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
- with MPI IO. (CMC - 2009/04/28)
-
-* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
- tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
- are expected to fail and should exit with a non-zero code but the yod
- command does not propagate the exit code of the executables. Yod always
- returns 0 if it can launch the executable. The test suite shell expects
- a non-zero for this particular test, therefore it concludes the test has
- failed when it receives 0 from yod. Skip all the "failing" test for now
- by changing them as following.
-
- ======== Original tools/h5ls/testh5ls.sh =========
- TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ======== Change to ===============================
- echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ==================================================
-
- ======== Original tools/h5copy/testh5copy.sh =========
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- H5LSTEST $FILEOUT
- ======== Change to ===============================
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- echo SKIP H5LSTEST $FILEOUT
- ==================================================
- (AKC - 2008/11/10)
-
-* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
- message, "yod allocation delayed for node recovery". This interferes with
- test suites that do not expect to see this message. See the section of "Red
- Storm" in file INSTALL_parallel for a way to deal with this problem.
- (AKC - 2008/05/28)
-
-* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
- the application asks to do collective IO, we have found that when using 4
- processors, a simple collective write will sometimes be hung. This can be
- verified with t_mpi test under testpar.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- (SLU - 2005/06/30)
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command `poe'.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
-
- The tests may fail with messages like "The socket name is already in use",
- but HDF5 does not use sockets. This failure is due to problems with the
- poe command trying to set up the debug socket. To resolve this problem,
- check to see whether there are many old /tmp/s.pedb.* files staying around.
- These are sockets used by the poe command and left behind due to failed
- commands. First, ask your system administrator to clean them out.
- Lastly, request IBM to provide a means to run poe without the debug socket.
- (AKC - 2004/12/08)
-
-
-%%%%1.8.7%%%%
-
-
-HDF5 version 1.8.7 released on Tue May 10 09:24:44 CDT 2011
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.6 and
-HDF5 1.8.7, and contains information on the platforms tested and
-known problems in HDF5-1.8.7.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.7 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.7 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.7 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.7 (current
-release) versus Release 1.8.6":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.6
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - Configure now generates Makefiles that build in "silent make mode"
- by default in which compile and link lines are significantly
- simplified for clarity. To override this and view actual compile and
- link lines during building, the --disable-silent-rules flag can be used
- at configure time, or the 'make' command can be followed by V=1, to
- indicate a "verbose" make. (MAM - 2011/4/14).
- - Added mpicc and mpif90 as the default C and Fortran compilers for Linux
- systems when --enable-parallel is specified but no $CC or $FC is defined.
- (AKC - 2011/2/7)
- - Added a new configure option, "--enable-unsupported", which can
- be used to stop configure from preventing the use of unsupported
- configure option combinations, such as c++ in parallel or Fortran
- with threadsafe. Use at your own risk, as it may result in a
- library that won't compile or run as expected!
- (MAM - 2010/11/17 - Bug 2061)
-
- Library
- -------
- - The library allows the dimension size of a dataspace to be zero. In
- the past, the library would allow this only if the maximal dimension
- size was unlimited. Now there is no such restriction, but no data
- can be written to this kind of dataset. (SLU - 2011/4/20)
- - We added two new macros, H5_VERSION_GE and H5_VERSION_LE, to let users
- compare certain version numbers with the library being used. (SLU -
- 2011/4/20)
- - Added ability to cache files opened through external links. Added new
- public functions H5Pset_elink_file_cache_size(),
- H5Pget_elink_file_cache_size(), and H5Fclear_elink_file_cache().
- (NAF - 2011/02/17)
- - Finished implementing all options for 'log' VFD. (QAK - 2011/1/25)
- - Removed all old code for Metrowerks compilers, bracketed by
- __MWERKS__). Metrowerks compiler is long gone. (AKC - 2010/11/17)
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - h5diff: Added new "verbose with levels" option, '-vN, --verbose=N'.
- The old '-v, --verbose' option is deprecated but remains available;
- it is exactly equivalent to '-v0, --verbose=0'.
- The new levels 1 ('-v1' or '--verbose=1') and 2 ('-v2' or
- '--verbose=2') can be specified to view more information regarding
- attributes differences. Bug #2121 (JKM 2011/3/23)
- - h5dump: Added new option --enable-error-stack. This option will
- display error stack information in the output stream. This is
- useful when the "h5dump: Unable to print data" message is output.
- (ADB - 2011/03/03)
-
- High-Level APIs
- ---------------
- - Fortran LT make datasets routines (H5LTmake_dataset_f,
- h5ltmake_dataset_int_f, h5ltmake_dataset_float_f, h5ltmake_dataset_double_f)
- and LT read datasets routines (h5ltread_dataset_f,h5ltread_dataset_int_f,
- h5ltread_dataset_float_f, 5ltread_dataset_double_f) can now handle
- 4-dimensional to 7-dimensional rank datasets. HDFFV-1217 (MSB-2011/4/24/2011)
-
- F90 API
- -------
- - None
-
- C++ API
- -------
- - None
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - Intel V11.1 uses now -O3 optimization in production mode (EIP - 2010/10/08)
-
-
-
-Bug Fixes since HDF5-1.8.6
-==========================
-
- Configuration
- -------------
- - Shared C++ and HL libraries on AIX should now be working correctly.
- Note that Fortran shared libraries are still not working on AIX.
- (See the Known Problems section, below). (MAM - 2011/4/20)
- - Removed config/ibm-aix6.x. All IBM-AIX settings are in one file,
- ibm-aix. (AKC - 2011/4/14)
- - Shared C libraries are no longer disabled on Mac when Fortran
- is enabled. Shared Fortran libraries are still not supported on Mac,
- so configure will disable them by default, but this is overridable
- with the new --enable-unsupported configure option. The configure
- summary has been updated to reflect the fact that the shared-ness of
- the C++/Fortran wrapper libraries may not align with the C library.
- (MAM - 2011/04/11 - HDFFV-4353).
-
- Library
- -------
- - Changed assertion failure when decoding a compound datatype with no
- fields into a normal error failure. Also prohibit using this sort
- of datatype for creating an attribute (as is already the case for
- datasets and committed (named) datatypes). (QAK - 2011/04/15, Jira
- issue #HDFFV-2766)
- - Tell the VFL flush call that the file will be closing, allowing
- the VFDs to avoid sync'ing the file (particularly valuable in parallel).
- (QAK - 2011/03/09)
- - The datatype handler created with H5Tencode/decode used to have the
- reference count 0 (zero); it now has the reference count 1 (one).
- (SLU - 2011/2/18)
- - Fixed the definition of H5_HAVE_GETTIMEOFDAY on Windows so that
- HDgettimeofday() is defined and works properly. Bug HDFFV-5931
- (DER - 2011/04/14)
- - Added basic VFD tests for the Windows, STDIO and log VFD tests.
- (DER - 2011/04/11)
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - Updated h5dump test case script to prevent entire test failure when
- source directory is read-only. Bug #HDFFV-4342 (JKM 2011/4/12)
- - Fixed h5dump displaying incorrect values for H5T_STD_I8BE type data in
- attribute on Big-Endian machine. H5T_STD_I8BE is unsigned 8bit type,
- so h5dump is supposed to display -2 instead of 254. It worked correctly
- on Little-Endian system , but not on Big-Endian system. Bug #HDFFV-4358
- (JKM 04/08/2011)
- - Updated some HDF5 tools to standardize the option name as
- '--enable-error-stack' for printing HDF5 error stack messages. h5ls and
- h5dump have been updated. For h5ls, this replaces "-e/--errors" option,
- which is deprecated. For h5dump, this is a new option. Bug #2182
- (JKM 2011/3/30)
- - Fixed the h5diff --use-system-epsilon option. The formula used in the
- calculation was changed from ( |a - b| / b ) to ( |a - b| ).
- This was done to improve performance. Bug #2184 (JKM 2011/3/24)
- - Fixed output for H5T_REFERENCE in h5dump. According to the BNF document
- the output of a H5T_REFERENCE should be followed by the type;
- ::= H5T_REFERENCE { }
- ::= H5T_STD_REF_OBJECT | H5T_STD_REF_DSETREG
- Previously this was only displayed if the -R option was used.
- Bug #1725 (ADB 2011/3/28)
- - Fixed two h5diff issues. 1) h5diff compared attributes correctly only
- when two objects had the same number of attributes and the attribute
- names were identical. 2) h5diff did not display useful information about
- attribute differences. Bug #2121 (JKM 2011/3/17)
- - Fixed a memory leak in h5diff that occurred when accessing symbolic links
- with the --follow-symlink option. Bug #2214 (JKM 2011/3/18)
- - Fixed a memory leak in h5diff that occurred when accessing variable length
- string data. Bug #2216 (JKM 2011/3/18)
- - Fixed and improved the help page for h5ls -a, --address option.
- Bug #1904 (JKM 2011/3/11)
- - Fixed h5copy to enable copying an object into the same HDF5 file.
- Previously h5copy displayed an error message when the target file
- was the same as the source file. (XCAO 2011/3/8)
- - Fixed an h5dump problem that caused the tool to skip some data elements
- in large datasets with a large array datatype on Windows. This issue
- arose only on Windows due to the different return behavior of the
- _vsnprintf() function. Bug #2161 (JKM 2011/3/3)
- - Fixed h5dump which was skipping some array indices in large datasets
- with a relatively large array datatype. The interval of skipped indices
- varied according to the size of the array. Bug #2092 (JKM 2011/2/15)
- - Fixed h5diff which was segfaulting when comparing compound datasets
- with a combination of fixed-length string datatypes and variable-length
- string datatypes in certain orders. Bug #2089 (JKM 2010/12/28)
- - Improved h5diff performance. 1) Now use HDmemcmp() before comparing two
- elements. 2) Replace expensive H5Tequals() calls. 3) Retrieve datatype
- information at dataset level, not at each element level for compound
- datasets. HDFFV-7516 (JKM 2011/4/18)
- - Fixed h5ls to display nested compound types with curly brackets
- when -S (--simple) option is used with -l (--label), so it shows
- which members (in curly brackets) belong to which nested compound type,
- making the output clearer. Bug #1979 (JKM 2010/11/09)
- - Fixed h5diff to handle variable-length strings in a compound dataset
- and variable-length string arrays in a compound dataset correctly.
- Garbage values were previously displayed when h5diff compared multiple
- variable-length strings in a compound type dataset.
- Bug #1989 (JKM 2010/10/28)
- - Fixed h5copy to fail gracefully when copying an object to a non-
- existing group without the -p option. Bug #2040 (JKM 2010/10/18)
-
- F90 API
- ------
- - None
-
- C++ API
- ------
- - None
-
- High-Level APIs:
- ------
- - None
-
- Fortran High-Level APIs:
- ------
- - h5tbmake_table_f: Fixed error in passing an array of characters with different
- length field names.
- - h5tget_field_info_f: Fixed error with packing the C strings into a Fortran
- array of strings. Added optional argument called 'maxlen_out' which returns
- the maximum string character length in a field name element.
- Bug HDFFV-1255 (MSB- 4/17/2011)
-
-
-
-
-Platforms Tested
-================
-The following platforms and compilers have been tested for this release.
-
- AIX 6.1 xlc 11.1.0.3
- (NCSA BP) xlC 11.1.0.3
- xlf90 13.1.0.3
- mpcc_r 11.1.0.3
- mpxlf90_r 13.1.0.3
-
- FreeBSD 8.2-STABLE i386 gcc 4.2.1 [FreeBSD] 20070719
- (loyalty) g++ 4.2.1 [FreeBSD] 20070719
- gcc 4.6.1 20110422
- g++ 4.6.1 20110422
- gfortran 4.6.1 20110422
-
- FreeBSD 8.2-STABLE amd64 gcc 4.2.1 [FreeBSD] 20070719
- (freedom) g++ 4.2.1 [FreeBSD] 20070719
- gcc 4.6.1 20110422
- g++ 4.6.1 20110422
- gfortran 4.6.1 20110422
-
- Linux 2.6.18-194.3.1.el5PAE gcc (GCC) 4.1.2 and 4.4.2
- #1 SMP i686 i686 i386 G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
- (jam) GNU Fortran (GCC) 4.1.2 20080704
- (Red Hat 4.1.2-48) and 4.4.2
- PGI C, Fortran, C++ 10.4-0 32-bit
- PGI C, Fortran, C++ 10.6-0 32-bit
- Intel(R) C Compiler for 32-bit
- applications, Version 11.1
- Intel(R) C++ Compiler for 32-bit
- applications, Version 11.1
- Intel(R) Fortran Compiler for 32-bit
- applications, Version 11.1
- Absoft 32-bit Fortran 95 10.0.7
- MPICH mpich2-1.3.1 compiled with
- gcc 4.1.2 and gfortran 4.1.2
-
- Linux 2.6.18-194.17.1.el5 gcc 4.1.2 and 4.4.2
- #1 SMP x86_64 GNU/Linux G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
- (amani) tested for both 32- and 64-bit binaries
- GNU Fortran (GCC) 4.1.2 20080704
- (Red Hat 4.1.2-46) and 4.4.2
- Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64,
- Version 11.1.
- PGI C, Fortran, C++ Version 9.0-4
- for 64-bit target on x86-64
- MPICH mpich2-1.3.1 compiled with
- gcc 4.1.2 and gfortran 4.1.2
-
- SGI ProPack 7 Linux Intel(R) C++ Version 11.1 20100806
- 2.6.32.24-0.2.1.2230.2.PTF- Intel(R) Fortran Version 11.1 20100806
- default #1 SMP SGI MPT 2.01
- SGI Altix UV
- (NCSA ember)
-
- SunOS 5.10 32- and 64-bit Sun C 5.9 Sun OS_sparc Patch 124867-16
- (linew) Sun Fortran 95 8.3 Sun OS_sparc Patch 127000-13
- Sun C++ 5.9 Sun OS_sparc Patch 124863-26
- Sun C 5.10 SunOS_sparc Patch 141861-07
- Sun Fortran 95 8.4 SunOS_sparc Patch 128231-06
- Sun C++ 5.10 SunOS_sparc 128228-11
-
- Intel Xeon Linux 2.6.18- gcc 4.2.4
- 92.1.10.el5_lustre.1.6.6smp- Intel(R) C++ Version 10.1.017
- perfctr #8 SMP Intel(R) Fortran Compiler Version 10.1.017
- (NCSA abe) Open MPI 1.3.2
- MVAPICH2-1.5.1_pgi-10.8
-
- Windows XP Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
- Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 (cmake)
- Cygwin(1.7.7 native gcc(4.3.4) compiler and gfortran)
-
- Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
- Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 (cmake)
- Cygwin(1.7.7 native gcc(4.3.4) compiler and gfortran)
-
- Windows Vista Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
-
- Windows Vista x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
-
- Windows 7 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
-
- Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
-
- Mac OS X 10.7.0 (Intel 64-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1
- Darwin Kernel Version 10.7.0 GNU Fortran (GCC) 4.6.0 20101106 (experimental)
- Intel C, C++ and Fortran compilers 12.0.1.122 20101110
-
- Mac OS X 10.7.0 (Intel 32-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3)
- Darwin Kernel Version 10.7.0 GNU Fortran (GCC) version 4.4.0 20090123 (experimental)
- [trunk revision 143587]
-
- Fedora 12 2.6.32.16-150.fc12.ppc64 #1 SMP ppc64 GNU/Linux
- gcc (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
- GNU Fortran (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
-
- Debian6.01 2.6.32-5-686 #1 SMP i686 GNU/Linux
- gcc (Debian 4.4.5-8) 4.4.5
- GNU Fortran (Debian 4.4.5-8) 4.4.5
-
- Debian6.01 2.6.32-5-amd64 #1 SMP x86_64 GNU/Linux
- gcc (Debian 4.4.5-8) 4.4.5
- GNU Fortran (Debian 4.4.5-8) 4.4.5
-
- Fedora14 2.6.35.12-88.fc14.i686.PAE #1 SMP i686 i686 i386 GNU/Linux
- gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
- GNU Fortran (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
-
- Fedora14 2.6.35.12-88.fc14.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
- GNU Fortran (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
-
- SUSE 11.4 2.6.37.1-1.2-desktop #1 SMP PREEMPT i686 i686 i386 GNU/Linux
- gcc (SUSE Linux) 4.5.1 20101208
- GNU Fortran (SUSE Linux) 4.5.1 20101208
-
- SUSE 11.4 2.6.37.1-1.2-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.5.1 20101208
- GNU Fortran (SUSE Linux) 4.5.1 20101208
-
- Ubuntu 10.10 2.6.35-28-generic #50-Ubuntu SMP i686 GNU/Linux
- gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
- GNU Fortran (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
-
- Ubuntu 10.10 2.6.35-28-generic #50-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
- GNU Fortran (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
-
- OpenVMS Alpha 8.3 HP C V7.3-009
- HP Fortran V8.2-104679-48H9K
- HP C++ V7.3-009
-
-Tested Configuration Features Summary
-========================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-Solaris2.10 32-bit n y n y y y
-Solaris2.10 64-bit n y n y y y
-Windows XP n y(4) n y y y
-Windows XP x64 n y(4) n y y y
-Windows Vista n y(4) n y y y
-Windows Vista x64 n y(4) n y y y
-OpenVMS Alpha n y n y y n
-Mac OS X 10.7 Intel 32-bit n y n y y y
-Mac OS X 10.7 Intel 64-bit n y n y y y
-AIX 6.1 32- and 64-bit y y y y y y
-FreeBSD 8.2-STABLE 32&64 bit n x n x y y
-CentOS 5.5 Linux 2.6.18-194 i686 GNU (1)W y y(2) y y y y
-CentOS 5.5 Linux 2.6.18-194 i686 Intel W n y n y y n
-CentOS 5.5 Linux 2.6.18-194 i686 PGI W n y n y y n
-CentOS 5.5 Linux 2.6.16 x86_64 GNU (1) W y y(3) y y y y
-CentOS 5.5 Linux 2.6.16 x86_64 Intel W n y n y y n
-CentOS 5.5 Linux 2.6.16 x86_64 PGI W n y n y y y
-RedHat EL4 2.6.18 Xeon Lustre C y y y y y n
-Fedora 12 Linux 2.6.32.16-150.fc12.ppc64 n y n y y y
-SGI Linux 2.6.32.19 y y y y y y
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.10 32-bit y y y y
-Solaris2.10 64-bit y y y y
-Windows XP y y(4) y n
-Windows XP x64 y y(4) y n
-Windows Vista y y(4) y y
-Windows Vista x64 y y(4) y y
-OpenVMS Alpha n n n n
-Mac OS X 10.7 Intel 32-bit y(5) n y n
-Mac OS X 10.7 Intel 64-bit y(5) n y n
-AIX 6.1 32- and 64-bit n n n y
-FreeBSD 8.2-STABLE 32&64 bit y x x y
-CentOS 5.5 Linux 2.6.18-128 i686 GNU (1)W y y(2) y y
-CentOS 5.5 Linux 2.6.18-128 i686 Intel W y y y n
-CentOS 5.5 Linux 2.6.18-128 i686 PGI W y y y n
-CentOS 5.5 Linux 2.6.16 x86_64 GNU (1) W y y y y
-CentOS 5.5 Linux 2.6.16 x86_64 Intel W y y y n
-CentOS 5.5 Linux 2.6.16 x86_64 PGI W y y y n
-RedHat EL4 2.6.18 Xeon Lustre C y y y n
-Fedora 12 Linux 2.6.32.16-150.fc12.ppc64 y y y y
-SGI Linux 2.6.32.19 y y y y
-
- (1) Fortran compiled with gfortran.
- (2) With PGI and Absoft compilers.
- (3) With PGI compiler for Fortran.
- (4) Using Visual Studio 2008 w/ Intel Fortran 10.1 (Cygwin shared libraries are not supported)
- (5) C and C++ shared libraries will not be built when Fortran is enabled.
- Compiler versions for each platform are listed in the preceding
- "Platforms Tested" table.
-
-
-Known Problems
-==============
-* After the shared library support was fixed for some bugs, it was discovered
- that "make prefix=XXX install" no longer works for shared libraries. It
- still works correctly for static libraries. Therefore, if you want to
- install the HDF5 shared libraries in a location such as /usr/local/hdf5,
- you need to specify the location via the --prefix option during configure
- time. E.g, ./configure --prefix=/usr/local/hdf5 ...
- (AKC - 2011/05/07 HDFFV-7583)
-
-* The parallel test, t_shapesame, in testpar/, may run for a long time and may
- be terminated by the alarm signal. If that happens, one can increase the
- alarm seconds (default is 1200 seconds = 20 minutes) by setting the
- environment variable, $HDF5_ALARM_SECONDS, to a larger value such as 3600
- (60 minutes). Note that the t_shapesame test may fail in some systems
- (see the "While working on the 1.8.6 release..." problem below). If
- it does, it will waste more time if $HDF5_ALARM_SECONDS is set
- to a larger value. (AKC - 2011/05/07)
-
-* The C++ and FORTRAN bindings are not currently working on FreeBSD.
- (QAK - 2011/04/26)
-
-* Shared Fortran libraries are not quite working on AIX. While they are
- generated when --enable-shared is specified, the fortran and hl/fortran
- tests fail. We are looking into the issue. HL and C++ shared libraries
- should now be working as intended, however. (MAM - 2011/04/20)
-
-* The --with-mpe configure option does not work with Mpich2. AKC - 2011/03/10
-
-* If parallel gmake (e.g., gmake -j 4) is used, the "gmake clean" command
- sometimes fails in the perform directory due to the attempt to remove the
- executable of h5perf or h5perf_serial by two "parallel" commands. This error
- has no consequence on the functionality of the HDF5 library or install. It
- is fixed in the next release. AKC - 2011/01/25
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or file systems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
-
-* The library's test dt_arith.c showed a compiler's rounding problem on
- Cygwin when converting from unsigned long long to long double. The
- library's own conversion works fine. We defined a macro for Cygwin to
- skip this test until we can solve the problem. Please see bug #1813.
- SLU - 2010/5/5
-
-* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added in. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug in 1.8 library. Because there's only one user
- complaining about it, we (Elena, Quincey, and I) decided to leave it as
- it is (see bug report #1279). Quincey will make a plan for 1.10.
- SLU - 2010/2/2
-
-* MinGW has a missing libstdc++.dll.a library file and will not successfully link
- C++ applications/tests. Do not use the enable-cxx configure option. Read all of
- the INSTALL_MINGW.txt file for all restrictions. ADB - 2009/11/11
-
-* The PathScale MPI implementation, accessing a Panasas file system, would
- cause H5Fcreate() with H5F_ACC_EXCL to fail even when the file does not
- exist. This is due to the MPI_File_open() call failing if the mode has
- the MPI_MODE_EXCL bit set. (See bug 1468 for details.) AKC - 2009/8/11
-
-* Parallel tests failed with 16 processes with data inconsistency at testphdf5
- / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
- collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
- with MPI IO. CMC - 2009/04/28
-
-* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
- tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
- are expected to fail and should exit with a non-zero code but the yod
- command does not propagate the exit code of the executables. Yod always
- returns 0 if it can launch the executable. The test suite shell expects
- a non-zero for this particular test, therefore it concludes the test has
- failed when it receives 0 from yod. Skip all the "failing" test for now
- by changing them as following.
-
- ======== Original tools/h5ls/testh5ls.sh =========
- TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ======== Change to ===============================
- echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ==================================================
-
- ======== Original tools/h5copy/testh5copy.sh =========
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- H5LSTEST $FILEOUT
- ======== Change to ===============================
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- echo SKIP H5LSTEST $FILEOUT
- ==================================================
- AKC - 2008/11/10
-
-* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
- message, "yod allocation delayed for node recovery". This interferes with
- test suites that do not expect to see this message. See the section of "Red
- Storm" in file INSTALL_parallel for a way to deal with this problem.
- AKC - 2008/05/28
-
-* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
- the application asks to do collective IO, we have found that when using 4
- processors, a simple collective write will sometimes be hung. This can be
- verified with t_mpi test under testpar.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- SLU - 2005/6/30
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command `poe'.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
-
- The tests may fail with messages like "The socket name is already in use",
- but HDF5 does not use sockets. This failure is due to problems with the
- poe command trying to set up the debug socket. To resolve this problem,
- check to see whether there are many old /tmp/s.pedb.* files staying around.
- These are sockets used by the poe command and left behind due to failed
- commands. First, ask your system administrator to clean them out.
- Lastly, request IBM to provide a means to run poe without the debug socket.
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
-
-* There is also a configure error on Altix machines that incorrectly reports
- when a version of Szip without an encoder is being used.
-
-* On cobalt, an SGI Altix SMP ia64 system, Intel compiler version 10.1 (which
- is the default on that system) does not work properly and results in
- failures during make check (in a static build) and make installcheck (during
- a shared build). This appears to be a compiler optimization problem.
- Reducing optimization by setting CFLAGS to -O1 or below resolves the issue.
- Alternatively, using a newer version of the compiler (11.0) also works as
- intended. MAM - 2010/06/01
-
-* h5diff will not report enum value differences when one or both of the values
- is not a valid enumeration value. The source of this bug has been identified
- and it will be fixed in 1.8.8. DER - 2011/04/27
-
-
-%%%%1.8.6%%%%
-
-
-HDF5 version 1.8.6 released on Mon Feb 14 10:26:30 CST 2011
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.5 and
-HDF5 1.8.6, and contains information on the platforms tested and
-known problems in HDF5-1.8.6.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.6 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.6 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.6 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.6 (current
-release) versus Release 1.8.5":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.5
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - CMake: Improved CPack packaging, added parallel commands, improved
- configuration options (better similarity to configure), added more
- tests, better support for use in external cmake projects.
- (ADB - 2010/10/07)
- - The default configuration setting for official releases is
- --enable-production. For unofficial releases, the default configuration
- setting has been --disable-production. (AKC - 2010/05/28)
- Library
- -------
- - Added support for thread safety on Windows using the Windows threads
- library. Use the HDF5_ENABLE_THREADSAFE option in CMake on a Windows
- platform to enable this functionality. This is supported on Windows
- Vista and newer Windows operating systems. (MAM - 2010/09/10)
- - H5Tset_order and H5Tget_order now support all datatypes. A new byte
- order, H5T_ORDER_MIXED, has been added specifically for a compound
- datatype and its derived type. (SLU - 2010/8/23)
- - Improved performance of metadata I/O by changing the default algorithm
- to perform I/O from all processes (instead of just process 0) when using
- parallel I/O drivers. (QAK - 2010/07/19)
- - Improved performance of I/O on datasets with the same shape, but
- different rank. (QAK - 2010/07/19)
- - Improved performance of the chunk cache by avoiding unnecessary b-tree
- lookups of chunks already in cache. (NAF - 2010/06/15)
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - h5diff: Added a new flag: --exclude-path. The specified path to an
- object will be excluded when comparing two files or two groups. If a
- group is specified to be excluded, all member objects of that group
- will be excluded. (JKM - 2010/09/16).
- - h5ls: Added a new flag: --no-dangling-links. See --help output for
- details. (JKM - 2010/06/15)
- - h5ls: Added a new flag --follow-symlinks. See --help output for
- details. (JKM - 2010/05/25)
-
- High-Level APIs
- ---------------
- - None
-
- F90 API
- -------
- - None
-
- C++ API
- -------
- - None
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - Sun C and C++ 5.10 and Sun Fortran 95 8.4.
- - Mac OS X 10.6.4 with gcc 4.2.1 and gfortran 4.6
-
-
-Bug Fixes since HDF5-1.8.5
-==========================
-
- Configuration
- -------------
- - The default number of MPI processes for testing purposes has been
- changed from 3 to 6. (AKC - 2010/11/11)
- - Some tests in tools/h5repack may fail in AIX systems when -q32 mode is
- used. The error is caused by not requesting enough memory in default.
- Added "env LDR_CNTRL=MAXDATA=0x20000000@DSA" into the $RUNSERIAL and
- $RUNPARALLE in the AIX config file so that executables are tested with
- more memory. (AKC - 2010/11/11)
- - Removed recognition of the parallel compilers of LAM(hcc) and
- ChMPIon(cmpicc) since we have no access to these two MPI implementations
- and cannot verify their correctness. (AKC - 2010/07/14 - Bug 1921)
- - PHDF5 was changed to use "mpiexec" instead of mpirun as the default
- MPI applications startup command as defined in the MPI-2 definition,
- section 4.1. (AKC - 2010/06/11 - Bug 1921)
-
- Library
- -------
- - Fixed a bug that caused big endian machines to generate corrupt files
- when using the scale-offset filter with floating point data or fill
- values. Note that such datasets will no longer be readable by any
- by any machine after this patch. (NAF - 2010/02/02 - Bug 2131)
- - Retrieving a link's name by index in the case where the link is external
- and the file that the link refers to doesn't exist will now fail
- gracefully rather than cause a segmentation fault. (MAM - 2010/11/17)
- - Modified metadata accumulator to better track accumulated dirty metadata
- in an effort to reduce unnecessary I/O in certain situations and to
- fix some other corner cases which were prone to error. (MAM - 2010/10/15)
- - Added a new set of unit tests that are run during 'make check' to verify
- the behavior of the metadata accumulator. (MAM - 2010/10/15)
- - Modified library to always cache symbol table information. Libraries
- from version 1.6.3 and earlier have a bug which causes them to require
- this information for some operations. (NAF - 2010/09/21 - Bug 1864)
- - Fixed a bug where the library could generate an assertion/core dump when
- a file that had been created with H5Pset_libver_bounds(fapl,
- H5F_LIBVER_LATEST, H5F_LIBVER_LATEST) but didn't have a superblock
- extension was later reopened. (QAK - 2010/09/16 - Bug 1968)
- - Fixed a bug that could occur when getting information for a new-style
- group that was previously opened through a file handle that was later
- closed. (NAF - 2010/09/15)
- - Added define check in H5public.h if stdint.h is supported by the C++
- compiler. This define is only available on Windows with VS2010 and using
- CMake to build the library. (ADB - 2010/09/13 - Bug 1938)
- - When a mandatory filter failed to write data chunks, the dataset
- couldn't close (bug 1260). The fix releases all resources and closes
- the dataset but returns a failure. (SLU - 2010/09/08)
- - H5Eset_current_stack now also closes the error stack set as the
- default. This is to avoid a potential problem.
- (SLU - 2010/09/07 - Bug 1799)
- - Corrected situation where 1-D chunked dataset could get created by an
- application without calling H5Pset_chunk(). H5Pset_chunk is now
- required for creating all chunked datasets. (QAK - 2010/09/02)
- - Fixed many memory issues that valgrind exposed. (QAK - 2010/08/24)
- - Fixed the bug in the filter's public CAN_APPLY function. The return
- value should be htri_t not herr_t. (SLU - 2010/08/05 - Bug 1239)
- - Fixed the STDIO VFD to use fseeko64 instead of fseek64 for 64-bit I/O
- support. (AKC - 2010/7/30)
- - Fixed a bug in the direct I/O driver that could render files with certain
- kinds of unaligned data unreadable or corrupt them. (NAF - 2010/07/28)
- - valgrind reported an error of copying data to itself when a new attribute
- is written. Fixed by taking out the memcpy step in the attribute code.
- (SLU - 2010/07/28 - Bug 1956)
- - Corrected various issues in the MPI datatype creation code which could
- cause resource leaks or incorrect behavior (and may improve the
- performance as well). (QAK - 2010/07/19)
- - Fixed a bug that could cause file corruption when using non-default sizes
- of addresses and/or lengths. This bug could also cause uncorrupted files
- with this property to be unreadable. This bug was introduced in 1.8.5.
- (NAF - 2010/07/16 - Bug 1951)
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - Fixed h5diff to compare member objects and groups recursively when
- two files or groups are compared. (JKM - 2010/9/16 - Bug 1975)
- - Fixed h5repack to be able to convert a dataset to COMPACT layout.
- (JKM - 2010/09/15 - Bug 1896)
- - Changed h5ls to not interpret special characters in object or attribute
- names for output. (JKM - 2010/06/28 - Bug 1784)
- - Revised the order of arguments for h5cc, h5fc, h5c++, h5pcc and h5pfc.
- CPPFLAGS, CFLAGS, LDFLAGS, and LIBS have been duplicated with an H5BLD_
- prefix to put the flags and paths from the hdf5 build in the correct
- places and allow the script user to add entries in CPPFLAGS, CFLAGS,
- LDFLAGS, and LIBS that will take precedence over those from the hdf5
- build. The user can make these entries persistent by editing
- CFLAGSBASE, CPPFLAGSBASE, LDFLAGSBASE, and LIBSBASE near the top of
- the script or temporary by setting HDF5_CFLAGS, HDF5_CPPFLAGS,
- HDF5_LDFLAGS, or HDF5_LIBS in the environment. The new order of
- arguments in these scripts is $CLINKER $H5BLD_CPPFLAGS $CPPFLAGS
- $H5BLD_CFLAGS $CFLAGS $LDFLAGS $clibpath $link_objs $LIBS $link_args
- $shared_link. (LRK - 2010/10/25 - Bug 1973)
-
- F90 API
- ------
- - None
-
- C++ API
- ------
- - None
-
- High-Level APIs:
- ------
- - None
-
- Fortran High-Level APIs:
- ------
- - None
-
-
-Platforms Tested
-================
-The following platforms and compilers have been tested for this release.
-
- AIX 6.1 xlc 11.1.0.3
- (NCSA BP) xlC 11.1.0.3
- xlf 13.1.0.3
- mpcc_r 11.1.0.3
- mpxlf_r 13.1.0.3
-
- FreeBSD 6.3-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
- (duty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.4.5 20100803
- g++ 4.4.5 20100803
- gfortran 4.4.5 20100803
-
- FreeBSD 6.3-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
- (liberty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.4.5 20100803
- g++ 4.4.5 20100803
- gfortran 4.4.5 20100803
-
- Linux 2.6.18-194.3.1.el5PAE gcc (GCC) 4.1.2 and 4.4.2
- #1 SMP i686 i686 i386 G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
- (jam) GNU Fortran (GCC) 4.1.2 20080704
- (Red Hat 4.1.2-48) and 4.4.2
- PGI C, Fortran, C++ 10.4-0 32-bit
- PGI C, Fortran, C++ 10.6-0 32-bit
- Intel(R) C Compiler for 32-bit
- applications, Version 11.1
- Intel(R) C++ Compiler for 32-bit
- applications, Version 11.1
- Intel(R) Fortran Compiler for 32-bit
- applications, Version 11.1
- Absoft 32-bit Fortran 95 10.0.7
- MPICH mpich2-1.3.1 compiled with
- gcc 4.1.2 and gfortran 4.1.2
-
- Linux 2.6.18-194.17.1.el5 gcc 4.1.2 and 4.4.2
- #1 SMP x86_64 GNU/Linux G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
- (amani) tested for both 32- and 64-bit binaries
- GNU Fortran (GCC) 4.1.2 20080704
- (Red Hat 4.1.2-46) and 4.4.2
- Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64,
- Version 11.1.
- PGI C, Fortran, C++ Version 9.0-4
- for 64-bit target on x86-64
- MPICH mpich2-1.3.1 compiled with
- gcc 4.1.2 and gfortran 4.1.2
-
- SGI ProPack 7 Linux Intel(R) C++ Version 11.1 20100806
- 2.6.32.19-0.3.1.1982.0.PTF- Intel(R) Fortran Version 11.1 20100806
- default #1 SMP SGI MPT 2.01
- SGI Altix UV
- (NCSA ember)
-
- SunOS 5.10 32- and 64-bit Sun C 5.9 Sun OS_sparc Patch 124867-16
- (linew) Sun Fortran 95 8.3 Sun OS_sparc Patch 127000-13
- Sun C++ 5.9 Sun OS_sparc Patch 124863-62
- Sun C 5.10 SunOS_sparc Patch 141861-07
- Sun Fortran 95 8.4 SunOS_sparc Patch 128231-06
- Sun C++ 5.10 SunOS_sparc 128228-11
-
- Intel Xeon Linux 2.6.18- gcc 4.2.4
- 92.1.10.el5_lustre.1.6.6smp- Intel(R) C++ Version 10.1.017
- perfctr #8 SMP Intel(R) Fortran Compiler Version 10.1.017
- (NCSA abe) Open MPI 1.3.2
- MVAPICH2-1.5.1_pgi-10.8
-
- Windows XP Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
- Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 (cmake)
- Cygwin(1.7.7 native gcc(4.3.4) compiler and gfortran)
-
- Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
- Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
- Visual Studio 2010 (cmake)
- Cygwin(1.7.7 native gcc(4.3.4) compiler and gfortran)
-
- Windows Vista Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
- Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
-
- Windows Vista x64 Visual Studio 2008 w/ Intel Fortran 10.1 (project files)
- Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
-
- Windows 7 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
-
- Windows 7 x64 Visual Studio 2008 w/ Intel Fortran 11.1 (cmake)
-
- Mac OS X 10.6.3 (Intel 64-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1
- Darwin Kernel Version 10.3.1 GNU Fortran (GCC) 4.5.0 20090910
- Intel C, C++ and Fortran compilers 11.1 20100806
-
- Mac OS X 10.6.4 (Intel 32-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1
- Darwin Kernel Version 10.4.0 GNU Fortran (GCC) 4.6.0 20101106
- Intel C, C++ and Fortran compilers 12.0.0 20101110
-
- Mac OS X 10.6.4 (Intel 64-bit) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5659)
- Darwin Kernel Version 10.6.0 GNU Fortran (GCC) 4.5.0 20090910
- Intel C, C++ and Fortran compilers 11.1 20100806
-
- Fedora 12 2.6.32.16-150.fc12.ppc64 #1 SMP ppc64 GNU/Linux
- gcc (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
- GNU Fortran (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
-
- Debian5.06 2.6.26-2-686 #1 SMP i686 GNU/Linux
- gcc (Debian 4.3.2-1.1) 4.3.2
- GNU Fortran (Debian 4.3.2-1.1) 4.3.2
-
- Debian5.06 2.6.26-2-amd64 #1 SMP x86_64 GNU/Linux
- gcc (Debian 4.3.2-1.1) 4.3.2
- GNU Fortran (Debian 4.3.2-1.1) 4.3.2
-
- Fedora14 2.6.35.6-48.fc14.i686.PAE #1 SMP i686 i686 i386 GNU/Linux
- gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
- GNU Fortran (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
-
- Fedora14 2.6.35.6-48.fc14.x86_64 #1 SMP x86_64 x86_64 x86_64 GNU/Linux
- gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
- GNU Fortran (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
-
- SUSE 11.3 2.6.34.7-0.7-desktop #1 SMP PREEMPT i686 i686 i386 GNU/Linux
- gcc (SUSE Linux) 4.5.0 20100604 [gcc-4_5-branch revision 160292]
- GNU Fortran (SUSE Linux) 4.5.0 20100604 [gcc-4_5-branch revision 160292]
-
- SUSE 11.3 2.6.34.7-0.7-desktop #1 SMP PREEMPT x86_64 x86_64 x86_64 GNU/Linux
- gcc (SUSE Linux) 4.5.0 20100604 [gcc-4_5-branch revision 160292]
- GNU Fortran (SUSE Linux) 4.5.0 20100604 [gcc-4_5-branch revision 160292]
-
- Ubuntu 10.10 2.6.35-25-generic #44-Ubuntu SMP i686 GNU/Linux
- gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
- GNU Fortran (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
-
- Ubuntu 10.10 2.6.35-25-generic #44-Ubuntu SMP x86_64 GNU/Linux
- gcc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
- GNU Fortran (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
-
- OpenVMS Alpha 8.3 HP C V7.3-009
- HP Fortran V8.2-104679-48H9K
- HP C++ V7.3-009
-
-Tested Configuration Features Summary
-========================================
-
- In the tables below
- y = tested
- n = not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-Solaris2.10 32-bit n y n y y y
-Solaris2.10 64-bit n y n y y y
-Windows XP n y(4) n y y y
-Windows XP x64 n y(4) n y y y
-Windows Vista n y(4) n y y y
-Windows Vista x64 n y(4) n y y y
-OpenVMS Alpha n y n y y n
-Mac OS X 10.6 Intel n y n y y y
-AIX 6.1 32- and 64-bit y y y y y y
-FreeBSD 6.3-STABLE 32&64 bit n y n y y y
-CentOS 5.5 Linux 2.6.18-194 i686 GNU (1)W y y(2) y y y y
-CentOS 5.5 Linux 2.6.18-194 i686 Intel W n y n y y n
-CentOS 5.5 Linux 2.6.18-194 i686 PGI W n y n y y n
-CentOS 5.5 Linux 2.6.16 x86_64 GNU (1) W y y(3) y y y y
-CentOS 5.5 Linux 2.6.16 x86_64 Intel W n y n y y n
-CentOS 5.5 Linux 2.6.16 x86_64 PGI W n y n y y y
-RedHat EL4 2.6.18 Xeon Lustre C y y y y y n
-Fedora 12 Linux 2.6.32.16-150.fc12.ppc64 n y n y y y
-SGI Linux 2.6.32.19 y y y y y y
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.10 32-bit y y y y
-Solaris2.10 64-bit y y y y
-Windows XP y y(4) y n
-Windows XP x64 y y(4) y n
-Windows Vista y y(4) y y
-Windows Vista x64 y y(4) y y
-OpenVMS Alpha n n n n
-Mac OS X 10.6 y(5) n y n
-AIX 6.1 32- and 64-bit n n n y
-FreeBSD 6.3-STABLE 32&64 bit y n y y
-CentOS 5.5 Linux 2.6.18-128 i686 GNU (1)W y y(2) y y
-CentOS 5.5 Linux 2.6.18-128 i686 Intel W y y y n
-CentOS 5.5 Linux 2.6.18-128 i686 PGI W y y y n
-CentOS 5.5 Linux 2.6.16 x86_64 GNU (1) W y y y y
-CentOS 5.5 Linux 2.6.16 x86_64 Intel W y y y n
-CentOS 5.5 Linux 2.6.16 x86_64 PGI W y y y n
-RedHat EL4 2.6.18 Xeon Lustre C y y y n
-Fedora 12 Linux 2.6.32.16-150.fc12.ppc64 y y y y
-SGI Linux 2.6.32.19 y y y y
-
- (1) Fortran compiled with gfortran.
- (2) With PGI and Absoft compilers.
- (3) With PGI compiler for Fortran.
- (4) Using Visual Studio 2008 w/ Intel Fortran 10.1 (Cygwin shared libraries are not supported)
- (5) C and C++ shared libraries will not be built when Fortran is enabled.
- Compiler versions for each platform are listed in the preceding
- "Platforms Tested" table.
-
-
-Known Problems
-==============
-* examples/run-all-ex.sh does not work on Cygwin. (NAF - 2011/02/11)
-
-* Parallel test, t_shapesame in testpar, is rather unstable as it continues to
- have occasional errors in AIX and quite often in NCSA Abe. It is being built
- but it is not run automatically in the "make check" command. One would have to
- run it by hand to see if it works in a particular machine. AKC - 2011/01/28
-
-* Although OpenVMS Alpha is supported, there are several problems with the C
- test suite - getname.c, lheap.c, lheap.c, mtime.c, and stab.c. The test
- suite for h5diff also fails. These failures are from the tests, not the
- library. We have fixed these failures. But it's too late to put the fixes
- into this release. If you install the 1.8.6 library, it should still work
- despite of these test failures. If you want the working copy without any
- test failure, you can request it from us. SLU - 2011/01/26
-
-* If parallel gmake (e.g., gmake -j 4) is used, the "gmake clean" command
- sometimes fails in the perform directory due to the attempt to remove the
- executable of h5perf or h5perf_serial by two "parallel" commands. This error
- has no consequence on the functionality of the HDF5 library or install. It
- is fixed in the next release. AKC - 2011/01/25
-
-* While working on the 1.8.6 release of HDF5, a bug was discovered that can
- occur when reading from a dataset in parallel shortly after it has been
- written to collectively. The issue was exposed by a new test in the parallel
- HDF5 test suite, but had existed before that. We believe the problem lies with
- certain MPI implementations and/or filesystems.
-
- We have provided a pure MPI test program, as well as a standalone HDF5
- program, that can be used to determine if this is an issue on your system.
- They should be run across multiple nodes with a varying number of processes.
- These programs can be found at:
- http://www.hdfgroup.org/ftp/HDF5/examples/known_problems/
-
-* The h5diff tool can display garbage values when variable-length strings in
- a compound type dataset are compared. This also occurs with variable-length
- string arrays in a compound type dataset. See bug #1989. This will be fixed
- in the next release. JKM - 2010/11/05
-
-* The AIX --enable-shared setting does not quite work. It can produce a shared
- library, but there cannot be more than one shared library that is
- interlinked. This means that the high level APIs will not work which is not
- very useful. We hope to have a solution in the next release.
- (AKC - 2010/10/15)
-
-* H5Eset_auto can cause a seg fault for a library API call if the application
- compiles with -DH5_USE_16_API (see bug 1707). It will be fixed in the
- next release. SLU - 2010/10/5
-
-* The library's test dt_arith.c showed a compiler's rounding problem on
- Cygwin when converting an unsigned long long to a long double. The
- library's own conversion works fine. We defined a macro for Cygwin to
- skip this test until we can solve the problem. Please see bug #1813.
- SLU - 2010/5/5
-
-* All the VFL drivers aren't backwardly compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. A new parameter was added to the
- get_eoa and set_eoa callback functions, and a new callback function
- get_type_map was added. The public function H5FDrealloc was taken out in
- 1.8. The problem only happens when users define their own driver for 1.6
- and try to plug in a 1.8 library. This will be fixed in 1.10. SLU - 2010/2/2
-
-* MinGW has a missing libstdc++.dll.a library file and will not successfully link
- C++ applications/tests. Do not use the enable-cxx configure option. Read all of
- the INSTALL_MINGW.txt file for all restrictions. ADB - 2009/11/11
-
-* The PathScale MPI implementation, accessing a Panasas file system, would
- cause H5Fcreate() with H5F_ACC_EXCL to fail even when the file does not
- exist. This is due to the MPI_File_open() call failing if the amode has
- the MPI_MODE_EXCL bit set. (See bug 1468 for details.) AKC - 2009/8/11
-
-* Parallel tests failed with 16 processes with data inconsistency at testphdf5
- / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
- collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
- with MPI IO. CMC - 2009/04/28
-
-* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
- tools/h5copy/testh5copy.sh will fail some of their sub-tests. These
- sub-tests are expected to fail and should exit with a non-zero code but
- the yod command does not propagate the exit code of the executables. Yod
- always returns 0 if it can launch the executable. The test suite shell
- expects a non-zero for this particular test. Therefore, it concludes the
- test has failed when it receives 0 from yod. To skip all the "failing"
- tests for now, change them as shown below.
-
- ======== Original tools/h5ls/testh5ls.sh =========
- TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ======== Change to ===============================
- echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ==================================================
-
- ======== Original tools/h5copy/testh5copy.sh =========
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- H5LSTEST $FILEOUT
- ======== Change to ===============================
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- echo SKIP H5LSTEST $FILEOUT
- ==================================================
- AKC - 2008/11/10
-
-* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
- message "yod allocation delayed for node recovery." This interferes
- with test suites that do not expect to see this message. See the "Red Storm"
- section in file INSTALL_parallel for a way to deal with this problem.
- AKC - 2008/05/28
-
-* On an Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use the -mp -O1 compilation flags to build the libraries. A higher level
- of optimization causes failures in several HDF5 library tests.
-
-* On mpich 1.2.5 and 1.2.6 on a system using four processors, if more than
- two processes contribute no I/O and the application asks to do collective
- I/O, we have found that a simple collective write will sometimes hang. This
- can be verified with the t_mpi test under testpar.
-
-* A dataset created or rewritten with a v1.6.3 or later library cannot be
- read with the v1.6.2 or earlier library when the Fletcher32 EDC filter
- is enabled. There was a bug in the calculation of the Fletcher32 checksum
- in the library before v1.6.3; the checksum value was not consistent
- between big-endian and little-endian systems. This bug was fixed in
- Release 1.6.3. However, after fixing the bug, the checksum value was no
- longer the same as before on little-endian system. Library releases after
- 1.6.4 can still read datasets created or rewritten with an HDF5 library of
- v1.6.2 or earlier. SLU - 2005/6/30
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command `poe'. To
- work around this, set the environment variable MP_INFOLEVEL to 0 to
- minimize the messages and run the tests again. The tests may fail with
- messages like "The socket name is already in use", but HDF5 does not use
- sockets. This failure is due to problems with the poe command trying to
- set up the debug socket. To resolve this problem, check to see whether
- there are any old /tmp/s.pedb.* files around. These are sockets used by
- the poe command and left behind if the command failed at some point. To
- resolve this, ask your system administrator to remove the
- old/tmp/s.pedb.* files, and then ask IBM to provide a means to run poe
- without the debug socket.
-
-* The --enable-static-exec configure flag will only statically link
- libraries if the static version of that library is present. If only the
- shared version of a library exists (i.e., most system libraries on
- Solaris, AIX, and Mac, for example, only have shared versions), the flag
- should still result in a successful compilation, but note that the
- installed executables will not be fully static. Thus, the only guarantee
- on these systems is that the executable is statically linked with just
- the HDF5 library.
-
-* On an SGI Altix SMP ia64 system, the Intel compiler version 10.1 (which
- is the default on that system) does not work properly and results in
- failures during the make check (in a static build) and the make
- installcheck (in a shared build). This appears to be a compiler
- optimization problem. Reducing the optimization by setting CFLAGS to
- -O1 or below resolves the issue. Using a newer version of the compiler
- (11.0) avoids the issue. MAM - 2010/06/01
-
-* On solaris systems, when running the examples with the scripts installed in
- .../share/hdf5_examples, two of the c tests, h5_extlink and h5_elink_unix2win
- may fail or generate HDF5 errors because the script commands in c/run-c-ex.sh
- fail to create test directories red, blue, and u2w. Moving the '!' in lines
- 67, 70, 73 of run-c-ex.sh will fix the problem. For example the script command
- "if ! test -d red; then" will work on solaris if changed to
- "if test ! -d red; then".
-
-
-%%%%1.8.5%%%%
-
-
-HDF5 version 1.8.5 released on Fri Jun 4 13:27:31 CDT 2010
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.4 and HDF5 1.8.5, and
-contains information on the platforms tested and known problems in HDF5-1.8.5.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt and HISTORY-1_8.txt
-in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.5 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.5 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.5 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.5 (current
-release) versus Release 1.8.4":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.4
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - CMake Early Access: This release adds support for building HDF5 using
- the CMake system. Initial work has targeted Windows, but other platforms
- can be used. See the CMake.TXT file for more information. Version
- 2.8.1 of CMake is required.
- - Configure now adds appropriate defines for supporting large (64-bit)
- files on all systems, where supported, by default, instead of only Linux.
- This large file support is controllable with the --enable-largefile
- configure option. The Linux-specific --enable-linux-lfs option has been
- deprecated in favor of this new option. Please note that specifying
- --disable-large does NOT attempt to "turn off" largefile support if it
- is natively supported by the compiler, but rather just disables
- configure from actively trying to add any additional compiler flags.
- (MAM - 2010/05/05 - Bug # 1772/1434)
- - Fixed an signal handling mask error in H5detect that might result in
- SIGBUS or SIGSEGV failures in some platforms such as Linux on Sparc.
- (AKC - 2010/4/28 - Bug # 1764)
- - Fixed various "strict aliasing" problems, allowing higher levels
- of compiler optimization (in particular, allowing '-O3' to work
- with recent versions of GCC). (QAK - 2010/04/26)
- - Upgraded versions of autotools used to generate configuration suite.
- We now use Automake 1.11.1, Autoconf 2.65, and Libtool 2.2.6b.
- (MAM - 2010/04/15)
- - Added the xlc-* and mpcc_r-* BASENAME patterns to be recognized as IBM
- compilers so that the IBM compiler options can be added properly. This
- allows non-system-default compiler command names (e.g. xlc-m.n.k.l) be
- recognized. (AKC - 2009/11/26)
-
- Library
- -------
- - Performance is substantially improved when extending a dataset with early
- allocation. (NAF - 2010/03/24 - Bug # 1637)
- - Added support for filtering densely stored groups. Many of the API
- functions related to filters have been extended to support dense groups
- as well as datasets. Pipeline messages can now be stored in a group's
- object header. (NAF/QAK - 2009/11/3)
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - h5dump: Added the new packed bits feature which prints packed bits stored
- in an integer dataset. (AKC/ADB - 2010/5/7)
- - h5diff: Fixed incorrect behavior (hang) in parallel mode when specifying
- invalid options (ex: -v and -q). (JKM - 2010/02/17)
- - h5diff: Added new flag --no-dangling-links (see --help for details).
- (JKM - 2010/02/10)
- - h5diff: Added new flag --follow-symlinks (see --help for details).
- (JKM - 2010/01/25)
- - h5diff: Added a fix to correct the display of garbage values when
- displaying big-endian data on a little-endian machine. (JKM - 2009/11/20)
-
- High-Level APIs
- ---------------
- - None
-
- F90 API
- -------
- - None
-
- C++ API
- -------
- - New member functions
- + Overloaded CommonFG::getObjnameByIdx to take char* for name.
- + Overloaded CommonFG::getObjTypeByIdx to return type name as a char*.
- (BMR - 2010/05/10)
- + Added DataSet::getInMemDataSize() to simplify getting the dataset's
- data size in memory. (BMR - 2009/07/26)
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - AIX 6.1 has been added. (AKC - 2010/1/4)
-
-
-Bug Fixes since HDF5-1.8.4
-==========================
-
- Configuration
- -------------
- - Fixed various "strict aliasing" problems, allowing higher levels
- of compiler optimization (in particular, allowing '-O3' to work
- with recent versions of GCC). (QAK - 2010/04/26)
-
- Library
- -------
- - Fixed a file corruption bug that could happen when shrinking a compressed
- dataset. (NAF - 2010/05/20)
- - Fixed some memory leaks in VL datatype conversion when strings are
- used as fill values. (MAM - 2010/05/12 - Bug # 1826)
- - Fixed an H5Rcreate failure when passing in a -1 for the dataspace
- identifier. (ADB - 2010/4/28)
- - Fixed a bug when copying objects with NULL references with the
- H5O_COPY_EXPAND_REFERENCE_FLAG flag set. (NAF - 2010/04/08 - Bug # 1815)
- - Added a mechanism to the H5I interface to save returned object identifier
- structures for immediate re-use if needed. This addresses a potential
- performance issue by delaying the case when the next identifier to be
- registered has grown so large that it wraps around and needs to be
- checked to see whether it is available for distribution.
- (MAM - 2010/03/15 - Bug # 1730)
- - Files can now be concurrently opened more than once using the core file
- driver, as long as the backing store is used. (NAF - 2010/03/09)
- - Added support for H5O_COPY_EXPAND_EXT_LINK_FLAG to H5Ocopy. External
- links will now be expanded if this flag is set.
- (NAF - 2010/03/05 - Bug # 1733)
- - Fixed a bug where the library, when traversing an external link, would
- reopen the source file if nothing else worked. (NAF - 2010/03/05)
- - Fixed a bug where fractal heap identifiers for attributes and shared
- object header messages could be incorrectly encoded in the file for
- files created on big-endian platforms.
- Please see http://www.hdfgroup.org/HDF5/release/known_problems if you
- suspect you have a file with this problem.
- (QAK - 2010/02/23 - Bug # 1755)
- - Fixed an intermittent bug in the b-tree code which could be triggered
- by expanding and shrinking chunked datasets in certain ways.
- (NAF - 2010/02/16)
- - H5Tdetect_class said a VL string is a string type. But when it's in
- a compound type, it said it's a VL type. THis has been fixed to be
- consistent; it now always returns a string type.
- (SLU - 2009/12/10 - Bug # 1584)
- - Allow "child" files from external links to be correctly located when
- relative to a "parent" file that is opened through a symbolic link.
- (QAK - 2009/12/01)
-
- Parallel Library
- ----------------
- - Parallel mode in AIX will fail some of the testcheck_version.sh tests
- where it treats "exit(134) the same as if process 0 had received an abort
- signal. Fixed. (AKC - 2009/11/3)
-
- Tools
- -----
- - Fixed h5ls to return exit code 1 (error) when a non-existent file is
- specified. (JKM - 2010/04/27 - Bug # 1793)
- - Fixed h5copy failure when copying a dangling link that is specified
- directly. (JKM - 2010/04/22 - Bug # 1817)
- - Fixed an h5repack failure that lost attributes from a dataset of
- reference type. (JKM - 2010/3/25 - Bug # 1726)
- - Fixed h5repack error that set NULL for object reference values for
- datasets, groups, or named datatypes. (JKM - 2010/03/19 - Bug # 1814)
-
- F90 API
- ------
- - None
-
- C++ API
- ------
- - The constructor PropList::PropList(id) was fixed to act properly
- according to the nature of 'id'. When 'id' is a property class
- identifier, a new property list will be created. When 'id' is a
- property list identifier, a copy of the property list will be made.
- (BMR - 2010/5/9)
- - The parameters 'size' and 'bufsize' in CommonFG::getLinkval and
- CommonFG::getComment, respectively, now have default values for the
- user's convenience. (BMR - 2009/10/23)
- - NULL pointer accessing was fixed. (BMR - 2009/10/05 - Bug # 1061)
- - Read/write methods of DataSet and Attribute classes were fixed
- to handle string correctly. (BMR - 2009/07/26)
-
- High-Level APIs:
- ------
- - Fixed a bug in H5DSattach_scale, H5DSis_attached, and H5DSdetach_scale
- caused by using the H5Tget_native_type function to determine the native
- type for reading the REFERENCE_LIST attribute. This bug was exposed
- on Mac PPC. (EIP - 2010/05/22 - Bug # 1851)
- - Fixed a bug in the H5DSdetach_scale function when 0 bytes were
- allocated after the last reference to a dimension scale was removed
- from the list of references in a VL element of the DIMENSION_LIST
- attribute. Modified the function to comply with the specification:
- the DIMENSION_LIST attribute is now deleted when no dimension scales
- are left attached. (EIP - 2010/05/14 - Bug # 1822)
-
- Fortran High-Level APIs:
- ------
- - None
-
-
-Platforms Tested
-================
-The following platforms and compilers have been tested for this release.
-
- AIX 5.3 xlc 7.0.0.9, 8.0.0.20, 9.0.0.4
- (LLNL Up) xlC 7.0.0.9, 8.0.0.20, 9.0.0.4
- xlf 9.1.0.9, 10.1.0.9, 11.1.0.7
- mpcc_r 7.0.0.9
- mpxlf_r 09.01.0000.0008
-
- AIX 6.1 xlc 10.1.0.6
- (NCSA BP) xlC 10.1.0.6
- xlf 12.1.0.7
-
- Cray XT3 (2.1.56) cc (pgcc) 10.0-0
- (SNL red storm) ftn (pgf90) 10.0-0
- CC (pgCC) 10.0-0
-
- FreeBSD 6.3-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
- (duty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.3.4 20090419
- g++ 4.3.4 20090419
- gfortran 4.3.4 20090419
-
- FreeBSD 6.3-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
- (liberty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.4.1 20090421
- g++ 4.4.1 20090421
- gfortran 4.4.1 20090421
-
- Linux 2.6.18-128.1.6.el5xen gcc (GCC) 4.1.2 20080704 and 4.4.2
- #1 SMP i686 i686 i386 GNU Fortran (GCC) 4.1.2 20080704 and 4.4.2
- (jam) g++ (GCC) 4.1.2 20080704 and 4.4.2
- G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
- Absoft 32-bit Fortran 95 10.0.7
- PGI C, Fortran, C++ 10.4-0 32-bit
- Intel(R) C, C++, Fortran Compilers for 32-bit
- applications, Version 11.1 Build 20090827
- MPICH mpich2-1.0.8 compiled with
- gcc 4.1.2 and GNU Fortran (GCC) 4.1.2
-
- Linux 2.6.18-164.el5 #1 SMP gcc 4.1.2 20080704 and gcc 4.4.2
- x86_64 GNU/Linux GNU Fortran (GCC) 4.1.2 20080704 and 4.4.2
- (amani) g++ (GCC) 4.1.2 20080704 and 4.4.2
- G95 (GCC 4.0.3 (g95 0.93!) Apr 21 2010)
- Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64,
- Version 11.1 Build 20090827.
- PGI C, Fortran, C++ Version 10.4-0
- for 32 & 64-bit target on x86-64
- MPICH mpich2-1.0.8 compiled with
- gcc 4.1.2 and GNU Fortran (GCC) 4.1.2
-
- Linux 2.6.16.54-0.2.5 #1 Intel(R) C++ Version 11.0.074
- SGI Altix SMP ia64 Intel(R) Fortran Itanium(R) Version 11.0.074
- (cobalt) SGI MPI 1.38
-
- SunOS 5.10 32- and 64-bit Sun C 5.9 SunOS_sparc Patch 124867-14
- (linew) Sun Fortran 95 8.3 SunOS_sparc
- Patch 127000-13
- Sun C++ 5.9 SunOS_sparc Patch 124863-23
-
- Intel Xeon Linux 2.6.18- Intel(R) C++ Version 10.0.026
- 92.1.10.el5_lustre.1.6.6smp- Intel(R) Fortran Compiler Version 10.0.026
- perfctr #7 SMP Open MPI 1.2.2
- (abe) MVAPICH2-0.9.8p28p2patched-intel-ofed-1.2
- compiled with icc v10.0.026 and ifort 10.0.026
-
- Linux 2.6.18-76chaos #1 SMP Intel(R) C, C++, Fortran Compilers for
- SMP x86_64 GNU/Linux applications running on Intel(R) 64,
- (SNL Glory) Versions 11.1.
-
- Windows XP Visual Studio 2008 w/ Intel Fortran 10.1
- Cygwin(1.7.5 native gcc(4.3.4) compiler and
- gfortran)
-
- Windows XP x64 Visual Studio 2008 w/ Intel Fortran 10.1
-
- Windows Vista Visual Studio 2008 w/ Intel Fortran 10.1
-
- Windows Vista x64 Visual Studio 2008 w/ Intel Fortran 10.1
-
- MAC OS 10.6.3 (Intel) i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1
- (pahra) GNU Fortran (GCC) 4.5.0 20090910
- i686-apple-darwin10-g++-4.2.1 (GCC) 4.2.1
- Intel C, C++ and Fortran compilers 11.1
-
- MAC OS 10.5.8 (Intel) i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1
- (tejeda)
-
- MAC OS 10.5 (PPC) powerpc-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1
- (juniper-w)
-
- OpenVMS Alpha V8.3 HP C V7.3-009
- HP C++ V7.3-009
- HP Fortran V8.0-1-104669-48GBT
-
-Supported Configuration Features Summary
-========================================
-
- In the tables below
- y = tested and supported
- n = not supported or not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-Solaris2.10 32-bit n y n y y y
-Solaris2.10 64-bit n y n y y y
-Windows XP n y(4) n(4) y y y
-Windows XP x64 n y(4) n(4) y y y
-Windows Vista n y(4) n(4) y y y
-Windows Vista x64 n y(4) n(4) y y y
-Mac OS X 10.5 PPC n n n n y n
-Mac OS X 10.5 Intel n y n y y y
-Mac OS X 10.6 Intel n y n y y y
-AIX 5.3 32- and 64-bit n y n y y n
-AIX 6.1 32- and 64-bit n y n y y n
-FreeBSD 6.3-STABLE 32&64 bit n y n y y y
-RedHat EL4 2.6.9-42 i686 GNU (1) W y y y y y y
-RedHat EL5 2.6.18-128 i686 GNU (1)W y y(2) y y y y
-RedHat EL5 2.6.18-128 i686 Intel W n y n y y n
-RedHat EL5 2.6.18-128 i686 PGI W n y n y y n
-SuSe Linux 2.6.16 x86_64 GNU (1) W y y(3) y y y y
-SuSe Linux 2.6.16 x86_64 Intel W n y n y y n
-SuSe Linux 2.6.16 x86_64 PGI W n y n y y y
-SuSe Linux 2.6.16 SGI Altix ia64 C y y y y y y
-RedHat EL4 2.6.18 Xeon Lustre C y y y y y n
-Cray XT3 2.1.56 y y y y y n
-OpenVMS Alpha V8.3 n y n y y n
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.10 32-bit y y y y
-Solaris2.10 64-bit y y y y
-Windows XP y y(4) y n
-Windows XP x64 y y(4) y n
-Windows Vista y y(4) y n
-Windows Vista x64 y y(4) y n
-Mac OS X 10.5 PPC y n n n
-Mac OS X 10.5 (Intel) y(5) n y n
-Mac OS X 10.6 (Intel) y(5) n y n
-AIX 5.3 32- and 64-bit n n n n
-AIX 6.1 32- and 64-bit n n n n
-FreeBSD 6.3-STABLE 32&64 bit y n y y
-RedHat EL4 2.6.9-42 i686 GNU (1) W y y y y
-RedHat EL5 2.6.18-128 i686 GNU (1)W y y(2) y y
-RedHat EL5 2.6.18-128 i686 Intel W y y y n
-RedHat EL5 2.6.18-128 i686 PGI W y y y n
-SuSe Linux 2.6.16 x86_64 GNU (1) W y y y y
-SuSe Linux 2.6.16 x86_64 Intel W y y y n
-SuSe Linux 2.6.16 x86_64 PGI W y y y n
-SuSe Linux 2.6.16 SGI Altix ia64 C y n
-RedHat EL4 2.6.18 Xeon Lustre C y y y n
-Cray XT3 2.1.56 n n n n
-OpenVMS Alpha V8.3 n n n n
-
- (1) Fortran compiled with g95.
- (2) With PGI and Absoft compilers.
- (3) With PGI compiler for Fortran.
- (4) Using Visual Studio 2008. (Cygwin shared libraries are not
- supported.)
- (5) Shared C and C++ are disabled when Fortran is configured in.
- Compiler versions for each platform are listed in the preceding
- "Platforms Tested" table.
-
-
-Known Problems
-==============
-* The library's test dt_arith.c exposed a compiler's rounding problem on
- Cygwin when converting from unsigned long long to long double. The
- library's own conversion works correctly. A macro is defined for Cygwin
- to skip this test until we can solve the problem. (Please see bug #1813.)
- SLU - 2010/5/5
-
-* All the VFL drivers aren't backward compatible. In H5FDpublic.h, the
- structure H5FD_class_t changed in 1.8. There is a new parameter added to
- get_eoa and set_eoa callback functions. A new callback function
- get_type_map was added. The public function H5FDrealloc was taken
- out in 1.8. The problem only happens when users define their own driver
- for 1.6 and try to plug it into a 1.8 library. This affects a very small
- number of users. (See bug report #1279.) SLU - 2010/2/2
-
-* MinGW has a missing libstdc++.dll.a library file and will not successfully
- link C++ applications/tests. Do not use the enable-cxx configure option.
- Read all of the INSTALL_MINGW.txt file for all restrictions.
- ADB - 2009/11/11
-
-* Some tests in tools/h5repack may fail in AIX systems when -q32 mode is used.
- The error is due to insufficient memory requested. Request a large amount
- of runtime memory by setting the following environment variable for more
- memory.
- LDR_CNTRL=MAXDATA=0x20000000@DSA
- AKC - 2009/10/31
-
-* The PathScale MPI implementation, accessing a Panasas file system, would
- cause H5Fcreate() with H5F_ACC_EXCL to fail even when the file is not
- existing. This is due to the MPI_File_open() call failing if the amode has
- the MPI_MODE_EXCL bit set. (See bug 1468 for details.) AKC - 2009/8/11
-
-* Parallel tests failed with 16 processes with data inconsistency at testphdf5
- / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
- collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
- with MPI IO. CMC - 2009/04/28
-
-* For gcc v4.3 and v4.4, with production mode, if -O3 is used, H5Tinit.c
- would fail to compile. Actually bad H5Tinit.c is produced. If -O (same
- as -O1) is used, H5Tinit.c compiled okay but test/dt_arith would fail.
- When -O0 (no optimizatio) is used, H5Tinit.c compilete okay and all
- tests passed. Therefore, -O0 is imposed for v4.3 and v4.4 of gcc.
- AKC - 2009/04/20
-
-* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
- tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
- are expected to fail and should exit with a non-zero code but the yod
- command does not propagate the exit code of the executables. Yod always
- returns 0 if it can launch the executable. The test suite shell expects
- a non-zero for this particular test, therefore it concludes the test has
- failed when it receives 0 from yod. Skip all the "failing" test for now
- by changing them as following.
-
- ======== Original tools/h5ls/testh5ls.sh =========
- TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ======== Change to ===============================
- echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ==================================================
-
- ======== Original tools/h5copy/testh5copy.sh =========
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- H5LSTEST $FILEOUT
- ======== Change to ===============================
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- echo SKIP H5LSTEST $FILEOUT
- ==================================================
- AKC - 2008/11/10
-
-* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
- message, "yod allocation delayed for node recovery". This interferes with
- test suites that do not expect seeing this message. See the section of "Red
- Storm" in file INSTALL_parallel for a way to deal with this problem.
- AKC - 2008/05/28
-
-* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
- the application asks to do collective IO, we have found that when using 4
- processors, a simple collective write will sometimes be hung. This can be
- verified with t_mpi test under testpar.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- SLU - 2005/6/30
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command `poe'.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
-
- The tests may fail with messages like "The socket name is already in use,"
- but HDF5 does not use sockets. This failure is due to problems with the
- poe command trying to set up the debug socket. To resolve this problem,
- check to see whether there are many old /tmp/s.pedb.* files staying around.
- These are sockets used by the poe command and left behind due to failed
- commands. First, ask your system administrator to clean them out.
- Lastly, request IBM to provide a means to run poe without the debug socket.
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
-
-* There is also a configure error on Altix machines that incorrectly reports
- when a version of Szip without an encoder is being used.
-
-* On FREE-BSD systems when shared libraries are disabled, make install fails
- in install-examples with the error '"Makefile", line 635: Need an operator'.
- When this error occurs removing or commenting out the line "export
- LD_LIBRARY_PATH=$(LL_PATH)" (line 635 in examples/Makefile) will allow make
- install to finish installing examples. The problem will be fixed in the
- next release. LRK - 2010/05/26
-
-* On cobalt, an SGI Altix SMP ia64 system, Intel compiler version 10.1 (which
- is the default on that system) does not work properly and results in
- failures during make check (in a static build) and make installcheck (during
- a shared build). This appears to be a compiler optimization problem.
- Reducing optimization by setting CFLAGS to -O1 or below resolves the issue.
- Alternatively, using a newer version of the compiler (11.0) also works as
- intended. MAM - 2010/06/01
-
-
-%%%%1.8.4%%%%
-
-
-HDF5 version 1.8.4 released on Tue Nov 10 15:33:14 CST 2009
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.3 and
-HDF5 1.8.4, and contains information on the platforms tested and
-known problems in HDF5-1.8.4
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.4 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.4 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.4 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.4 (current
-release) versus Release 1.8.3":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.3
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - Configuration suite now uses Automake 1.11 and Autoconf 2.64.
- MAM 2009/08/31.
- - Changed default Gnu fortran compiler from g95 to gfortran since
- gfortran is more likely installed with gcc now. -AKC 2009/07/19-
-
- Library
- -------
- - The embedded library information is displayed by H5check_version() if a
- version mismatch is detected. Also changed H5check_version() to
- suppress the warning message totally if $HDF5_DISABLE_VERSION_CHECK is 2
- or higher. (Old behavior treated 3 or higher the same as 1, that is
- print a warning and allows the program to continue. (AKC - 2009/9/28)
- - If a user does not care for the extra library information insert
- in the executables, he may turn it off by --disable-embedded-libinfo
- during configure. (AKC - 2009/9/15)
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - h5diff: h5diff treats two INFINITY values different. Fixed by checking
- (value==expect) before call ABS(...) at h5diff_array.c. This will make
- that (INF==INF) is true (INF is treated as an number instead of NaN)
- (PC -- 2009/07/28)
- - h5diff: add option "--use-system-epsilon" to print difference if
- (|a-b| > EPSILON).
- Change default to use strict equality (PC -- 2009/09/12)
-
- High-Level APIs
- ---------------
- - None
-
- F90 API
- -------
- - Added H5Oopen_by_addr_f MSB - 9/14/09
-
- C++ API
- -------
- - None
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - PathScale compilers are recognized and can build the HDF5 library
- properly. AKC - 2009/7/28 -
-
-
-Bug Fixes since HDF5-1.8.3
-==========================
-
- Configuration
- -------------
- - Removed the following config files, as we no longer support them:
- config/dec-osf*, config/hpux11.00, config/irix5.x,
- config/powerpc-ibm-aix4.x config/rs6000-ibm-aix5.x config/unicos*
- MAM - 2009/10/08
- - Modified configure and make process to properly preserve user's CFLAGS
- (and company) environment variables. Build will now properly use
- automake's AM_CFLAGS for any compiler flags set by the configure
- process. Configure will no longer modify CFLAGS directly, nor will
- setting CFLAGS during make completely replace what configure has set up.
- MAM - 2009/10/08
- - Support for TFLOPS, config/intel-osf1, is removed since the TFLOPS
- machine has long retired. AKC - 2009/10/06.
- - Added $(EXEEXT) extension to H5detect when it's executed in the
- src/Makefile to generate H5Tinit.c so it works correctly on platforms
- that require the full extension when running executables.
- MAM - 2009/10/01 - BZ #1613
- - Configure will now set FC and CXX to "no" when fortran and c++
- are not being compiled, respectively, so configure will not run
- some of the compiler tests for these languages when they are not
- being used. MAM - 2009/10/01
- - The --enable-static-exec flag will now properly place the -static flag
- on the link line of all installed executables. This will force the
- executable to link with static libraries over shared libraries, provided
- the static libraries are available. MAM - 2009/08/31 - BZ #1583
- - The PathScale compiler (v3.2) was mistaken as gcc v4.2.0 but it fails to
- recognize some gcc options. Fixed. (see bug 1301). AKC - 2009/7/28 -
-
- Library
- -------
- - Fixed a bug where writing and deleting many global heap objects (i.e.
- variable length data) would render the file unreadable. Previously
- created files exhibiting this problem should now be readable.
- NAF - 2009/10/27 - 1483
- - Fixed error in library's internal caching mechanisms which could cause
- an assertion failure (and attendant core dump) when encountering an
- unusually formatted file. (QAK - 2009/10/13)
- - Fixed incorrect return value for H5Pget_preserve. AKC - 2009/10/08 - 1628
- - Fixed an assertion failure that occurred when H5Ocopy was called on a
- dataset using a vlen inside a compound. NAF - 2009/10/02 - 1597
- - Fixed incorrect return value for H5Pget_filter_by_id1/2 in H5Ppublic.h.
- NAF - 2009/09/25 - 1620
- - Fixed a bug where properties weren't being compared with the registered
- compare callback. NAF - 2009/09/25 - 1555
- - Corrected problem where library would re-write the superblock in a file
- opened for R/W access, even when no changes were made to the file.
- (QAK - 2009/08/20, Bz#1473)
- - Fixed a bug where H5Pget_filter_by_id would succeed when called for a
- filter that wasn't present. NAF - 2009/06/25 - 1250
- - Fixed an issue with committed compound datatypes containing a vlen. Also
- fixed memory leaks involving committed datatypes. NAF - 2009/06/10 - 1593
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - h5dump/h5ls display buffer resize fixed in tools library.
- ADB - 2009/7/21 - 1520
- - perf_serial test added to Windows projects and check batch file.
- ADB - 2009/06/11 -1504
-
-
- F90 API
- ------
- - Fixed bug in h5lget_info_by_idx_f by adding missing arguments,
- consequently changing the API. New API is:
-
- SUBROUTINE h5lget_info_by_idx_f(loc_id, group_name, index_field, order, n, &
- link_type, f_corder_valid, corder, cset, address, val_size, hdferr, lapl_id)
-
- MSB - 2009/9/17 - 1652
-
- - Corrected the values for the H5L_flags FORTRAN constants:
- H5L_LINK_ERROR_F, H5L_LINK_HARD_F, H5L_LINK_SOFT_F, H5L_LINK_EXTERNAL_F
- MSB - 2009-09-17 - 1653
-
- - Added FORTRAN equivalent of C constant H5T_ORDER_NONE: H5T_ORDER_NONE_F
- MSB - 2009-9-24 - 1471
-
- C++ API
- ------
- - None
-
- High-Level APIs:
- ------
- - Fixed a bug where the H5TB API would forget the order of fields when added
- out of offset order. NAF - 2009/10/27 - 1582
- - H5DSis_attached failed to account for different platform types. Added a
- get native type call. ADB - 2009/9/29 - 1562
-
- Fortran High-Level APIs:
- ------
- - Lite: the h5ltread_dataset_string_f and h5ltget_attribute_string_f functions
- had memory problems with the g95 fortran compiler. (PVN � 5/13/2009) 1522
-
-
-
-Platforms Tested
-================
-The following platforms and compilers have been tested for this release.
-
- AIX 5.3 xlc 7.0.0.8
- (LLNL Up) xlf 09.01.0000.0008
- xlC 7.0.0.8
- mpcc_r 7.0.0.8
- mpxlf_r 09.01.0000.0008
-
- Cray XT3 (2.0.41) cc (pgcc) 7.1-4
- (SNL red storm) ftn (pgf90) 7.1-4
- CC (pgCC) 7.1-4
-
- FreeBSD 6.3-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
- (duty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.3.5 20091004
- g++ 4.3.5 20091004
- gfortran 4.3.5 20091004
-
- FreeBSD 6.3-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
- (liberty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.4.2 20091006
- g++ 4.4.2 20091006
- gfortran 4.4.2 20091006
-
- Linux 2.6.18-164.el5 gcc (GCC) 4.1.2 20080704
- #1 SMP i686 i686 i386 G95 (GCC 4.0.3 (g95 0.92!) Jun 24 2009)
- (jam) GNU Fortran (GCC) 4.1.2 20080704
- (Red Hat 4.1.2-46)
- PGI C, Fortran, C++ 8.0-5 32-bit
- PGI C, Fortran, C++ 8.0-1 32-bit
- Intel(R) C Compiler for 32-bit
- applications, Versions 11.0, 11.1
- Intel(R) C++ Compiler for 32-bit
- applications, Version 11.0, 11.1
- Intel(R) Fortran Compiler for 32-bit
- applications, Version 11.0, 11.1
- Absoft 32-bit Fortran 95 10.0.7
- MPICH mpich2-1.0.8 compiled with
- gcc (GCC) 4.1.2 and G95
- (GCC 4.0.3 (g95 0.92!)
-
- Linux 2.6.18-164.el5 #1 SMP gcc 4.1.2 20080704
- x86_64 GNU/Linux G95 (GCC 4.0.3 (g95 0.92!) Jun 24 2009)
- (amani) tested for both 32- and 64-bit binaries
- Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64,
- Versions 11.1.
- PGI C, Fortran, C++ Version 9.0-4
- for 64-bit target on x86-64
- gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
- MPICH mpich2-1.0.8 compiled with
- gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
- GNU Fortran (GCC) 4.1.2 20080704
- (Red Hat 4.1.2-46)
-
-
- Linux 2.6.16.60-0.42.5 #1 Intel(R) C++ Version 10.1.017
- SGI Altix SMP ia64 Intel(R) Fortran Itanium(R) Version 10.1.017
- (cobalt) SGI MPI 1.38
-
- SunOS 5.10 32- and 64-bit Sun C 5.9 SunOS_sparc Patch 124867-11 2009/04/30
- (linew) Sun Fortran 95 8.3 SunOS_sparc
- Patch 127000-11 2009/10/06
- Sun C++ 5.9 SunOS_sparc
- Patch 124863-16 2009/09/15
-
- Intel Xeon Linux 2.6.18- Intel(R) C++ Version 10.0.026
- 92.1.10.el5_lustre.1.6.6smp- Intel(R) Fortran Compiler Version 10.0.026
- perfctr #6 SMP Open MPI 1.2.2
- (abe) MVAPICH2-0.9.8p28p2patched-intel-ofed-1.2
- compiled with icc v10.0.026 and ifort 10.0.026
-
- IA-64 Linux 2.4.21-309.tg1 gcc (GCC) 3.2.2
- #1 SMP ia64 Intel(R) C++ Version 8.1.037
- (NCSA tg-login) Intel(R) Fortran Compiler Version 8.1.033
- mpich-gm-1.2.7p1..16-intel-8.1.037-r1
-
- Linux 2.6.9-55.0.9.EL_lustre Intel(R) C, C++, Fortran Compilers for
- .1.4.11.1smp #1 SMP applications running on Intel(R) 64,
- SMP x86_64 GNU/Linux Versions 10.1.
- (SNL Thunderbird)
-
- Linux 2.6.18-76chaos #1 SMP Intel(R) C, C++, Fortran Compilers for
- SMP x86_64 GNU/Linux applications running on Intel(R) 64,
- (SNL Glory) Versions 10.1.
-
- Windows XP Visual Studio 2005 w/ Intel Fortran 9.1
- Cygwin(native gcc compiler and g95)
-
- Windows XP x64 Visual Studio 2005 w/ Intel Fortran 9.1
-
- Windows Vista Visual Studio 2005 w/ Intel Fortran 9.1
-
- Windows Vista x64 Visual Studio 2005 w/ Intel Fortran 9.1
-
- MAC OS 10.5.6 (Intel) i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1
- GNU Fortran (GCC) 4.3.0 20070810
- G95 (GCC 4.0.3 (g95 0.91!) Apr 24 2008)
- Intel C, C++ and Fortran compilers 10.1
-
-
-Supported Configuration Features Summary
-========================================
-
- In the tables below
- y = tested and supported
- n = not supported or not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-Solaris2.10 32-bit n y n y y y
-Solaris2.10 64-bit n y n y y y
-Windows XP n y(4) n(4) y y y
-Windows XP x64 n y(4) n(4) y y y
-Windows Vista n n n y y y
-Mac OS X 10.5 Intel n y n y y y
-AIX 5.3 32- and 64-bit n y n y y n
-FreeBSD 6.3-STABLE 32&64 bit n y n y y y
-RedHat EL5 2.6.18-164 i686 GNU (1)W y y(2) y y y y
-RedHat EL5 2.6.18-164 i686 Intel W n y n y y n
-RedHat EL5 2.6.18-164 i686 PGI W n y n y y n
-RedHat EL5 2.6.18-164 x86_64 GNU(1)W y y(3) y y y y
-RedHat EL5 2.6.18-164 x86_64 IntelW n y n y y n
-RedHat EL5 2.6.18-164 x86_64 PGI W n y n y y y
-SuSe Linux 2.6.16 SGI Altix ia64 C y y y y y y
-RedHat EL4 2.6.18 Xeon Lustre C y y y y y n
-SuSe Linux 2.4.21 ia64 Intel C y y y y y n
-Cray XT3 2.0.62 y y y y y n
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.10 32-bit y y y y
-Solaris2.10 64-bit y y y y
-Windows XP y y(4) y y
-Windows XP x64 y y(4) y y
-Windows Vista y n n y
-Mac OS X 10.5 y n y n
-AIX 5.3 32- and 64-bit n n n n
-FreeBSD 6.3-STABLE 32&64 bit y y y y
-RedHat EL5 2.6.18-164 i686 GNU (1)W y y(2) y y
-RedHat EL5 2.6.18-164 i686 Intel W y y y n
-RedHat EL5 2.6.18-164 i686 PGI W y y y n
-RedHat EL5 2.6.18-164 x86_64 GNU(1)W y y y y
-RedHat EL5 2.6.18-164 x86_64 IntelW y y y n
-RedHat EL5 2.6.18-164 x86_64 PGI W y y y n
-SuSe Linux 2.6.16 SGI Altix ia64 C y n
-RedHat EL4 2.6.18 Xeon Lustre C y y y n
-SuSe Linux 2.4.21 ia64 Intel C y y y n
-Cray XT3 2.0.62 n n n n
-
- (1) Fortran compiled with g95.
- (2) With PGI and Absoft compilers.
- (3) With PGI compiler for Fortran.
- (4) Using Visual Studio 2005 or Cygwin
- Compiler versions for each platform are listed in the preceding
- "Platforms Tested" table.
-
-
-Known Problems
-==============
-* Parallel mode in AIX will fail some of the testcheck_version.sh tests where
- it treats "exit(134) the same as if process 0 had received an abort signal.
- This is fixed and will be available in the next release. AKC - 2009/11/3
-
-* Some tests in tools/h5repack may fail in AIX systems when -q32 mode is used.
- The error is due to insufficient memory requested. Request a large amount
- of runtime memory by setting the following environment variable for more
- memory.
- LDR_CNTRL=MAXDATA=0x20000000@DSA
- AKC - 2009/10/31
-
-* The PathScale MPI implementation, accessing a Panasas file system, would
- cause H5Fcreate() with H5F_ACC_EXCL to fail even when the file is not
- existing. This is due to the MPI_File_open() call failing if the amode has
- the MPI_MODE_EXCL bit set. (See bug 1468 for details.) AKC - 2009/8/11
-
-* Parallel tests failed with 16 processes with data inconsistency at testphdf5
- / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
- collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
- with MPI IO. CMC - 2009/04/28
-
-* There is a known issue in which HDF5 will change the timestamp on a file
- simply by opening it with read/write permissions, even if the file is not
- modified in any way. This is due to the way in which HDF5 manages the file
- superblock. A fix is currently underway and should be included in the 1.8.4
- release of HDF5. MAM - 2009/04/28
-
-* For gcc v4.3 and v4.4, with production mode, if -O3 is used, H5Tinit.c
- would fail to compile. Actually bad H5Tinit.c is produced. If -O (same
- as -O1) is used, H5Tinit.c compiled okay but test/dt_arith would fail.
- When -O0 (no optimizatio) is used, H5Tinit.c compilete okay and all
- tests passed. Therefore, -O0 is imposed for v4.3 and v4.4 of gcc.
- AKC - 2009/04/20
-
-* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
- tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
- are expected to fail and should exit with a non-zero code but the yod
- command does not propagate the exit code of the executables. Yod always
- returns 0 if it can launch the executable. The test suite shell expects
- a non-zero for this particular test, therefore it concludes the test has
- failed when it receives 0 from yod. Skip all the "failing" test for now
- by changing them as following.
-
- ======== Original tools/h5ls/testh5ls.sh =========
- TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ======== Change to ===============================
- echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ==================================================
-
- ======== Original tools/h5copy/testh5copy.sh =========
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- H5LSTEST $FILEOUT
- ======== Change to ===============================
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- echo SKIP H5LSTEST $FILEOUT
- ==================================================
- AKC - 2008/11/10
-
-* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
- message, "yod allocation delayed for node recovery". This interferes with
- test suites that do not expect seeing this message. See the section of "Red
- Storm" in file INSTALL_parallel for a way to deal with this problem.
- AKC - 2008/05/28
-
-* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
- the application asks to do collective IO, we have found that when using 4
- processors, a simple collective write will sometimes be hung. This can be
- verified with t_mpi test under testpar.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- SLU - 2005/6/30
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command `poe'.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
-
- The tests may fail with messages like "The socket name is already in use",
- but HDF5 does not use sockets. This failure is due to problems with the
- poe command trying to set up the debug socket. To resolve this problem,
- check to see whether there are many old /tmp/s.pedb.* files staying around.
- These are sockets used by the poe command and left behind due to failed
- commands. First, ask your system administrator to clean them out.
- Lastly, request IBM to provide a means to run poe without the debug socket.
-
-* The --enable-static-exec configure flag will only statically link libraries
- if the static version of that library is present. If only the shared version
- of a library exists (i.e., most system libraries on Solaris, AIX, and Mac,
- for example, only have shared versions), the flag should still result in a
- successful compilation, but note that the installed executables will not be
- fully static. Thus, the only guarantee on these systems is that the
- executable is statically linked with just the HDF5 library.
-
-* There is also a configure error on Altix machines that incorrectly reports
- when a version of Szip without an encoder is being used.
-
-%%%%1.8.3%%%%
-
-
-HDF5 version 1.8.3 released on Mon May 4 09:21:00 CDT 2009
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.2 and
-HDF5 1.8.3, and contains information on the platforms tested and
-known problems in HDF5-1.8.3.
-For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.3 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.3 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.3 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.3 (current
-release) versus Release 1.8.2":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for New Platforms, Languages, and Compilers
-- Bug Fixes since HDF5-1.8.2
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - Added libtool version numbers to generated c++, fortran, and
- hl libraries. MAM 2009/04/19.
- - Regenerated Makefile.ins using Automake 1.10.2. MAM 2009/04/19.
- - Added a Make target of check-all-install to test the correctness of
- installing via the prefix= or $DESTDIR options. AKC - 2009/04/14
-
- Library
- -------
- - Embed the content of libhdf5.settings into the hdf5 executables
- so that an "orphaned" executables can display (via the Unix
- strings command, for example) the library settings used to build
- the executables. This is a prototype implementation. Improvement will
- be added in next release. AKC - 2009/04/20
- - Separated "factory" free list class from block free lists. These free
- lists are dynamically created and manage blocks of a fixed size.
- H5set_free_list_limits() will use the same settings specified for block
- free lists for factory free lists. NAF - 2009/04/08
- - Added support for dense attributes to H5Ocopy. XCao/NAF - 2009/01/29
- - Added H5Pset_elink_cb and H5Pget_elink_cb functions to support a
- user-defined callback function for external link traversal.
- NAF - 2009/01/08
- - Added H5Pset_elink_acc_flags and H5Pget_elink_acc_flags functions to
- allow the user to specify the file access flags used to open the target
- file of an external link. NAF - 2009/01/08
- - Added H5Pset_chunk_cache() and H5Pget_chunk_cache() functions to allow
- individual rdcc configuration for each dataset. Added
- H5Dget_access_plist() function to retrieve a dataset access property
- list from a dataset. NAF - 2008/11/12
- - Added H5Iis_valid() function to check if an id is valid without
- producing an error message. NAF - 2008/11/5
- - Added code to maintain a min_clean_fraction in the metadata cache when
- in serial mode. MAM - 2009/01/9
-
- Parallel Library
- ----------------
- - Modified parallel tests to run with arbitrary number of processes. The
- modified tests are testphdf5 (parallel dataset access), t_chunk_alloc
- (chunk allocation), and t_posix_compliant (posix compliance). The rest of
- the parallel tests already use in the code the number of processes
- available in the communicator. (CMC - 2009/04/28)
-
- Tools
- -----
- - h5diff new flag, -c, --compare, list objects that are not comparable.
- PVN - 2009/4/2 - 1368
- - h5diff new flag, -N, --nan, avoids NaNs detection. PVN - 2009/4/2
- - h5dump correctly specifies XML dtd / schema urls ADB - 2009/4/3 - 1519
- - h5repack now handles group creation order. PVN - 2009/4/2 - 1402
- - h5repack: When user doesn't specify a chunk size, h5repack now
- defines a default chunk size as the same size of the size of the
- hyperslab used to read the chunks. The size of the hyperslabs are
- defined as the size of each dimension or a predefined constant,
- whatever is smaller. This assures that the chunk read fits in the
- chunk cache. PVN - 2008/11/21
-
- High-Level APIs
- ---------------
- - Table: In version 3.0 of Table, the writing of the "NROWS" attribute
- (used to store number of records) was deprecated. PVN - 2008/11/24
-
- F90 API
- -------
- - Added for the C APIs the Fortran wrappers:
- h5dget_access_plist_f
- h5iis_valid_f
- h5pset_chunk_cache_f
- h5pget_chunk_cache_f
- MSB - 2009/04/17
-
- C++ API
- -------
- - None
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
-
-
-Bug Fixes since HDF5-1.8.2
-==========================
-
- Configuration
- -------------
- - The --includedir=DIR configuration option now works as intended, and
- can be used to specify the location to install C header files. The
- default location remains unchanged, residing at ${prefix}/include.
- MAM - 2009/03/10 - BZ #1381
- - Configure no longer removes the '-g' flag from CFLAGS when in production
- mode if it has been explicitly set in the CFLAGS environment variable
- prior to configuration. MAM - 2009/03/09 - BZ #1401
-
- Library
- -------
- - Added versioning to H5Z_class_t struct to allow compatibility with 1.6
- API. NAF - 2009/04/20 - 1533
- - Fixed a problem with using data transforms with non-native types in the
- file. NAF - 2009/04/20 - 1548
- - Added direct.h include file to windows section of H5private.h
- to fix _getcwd() warning. ADB - 2009/04/14 - 1536
- - Fixed a bug that prevented external links from working after calling
- H5close(). NAF - 2009/04/10 - 1539
- - Modified library to write cached symbol table information to the
- superblock, to allow library versions 1.3.0 to 1.6.3 to read files created
- by this version. NAF - 2009/04/08 - 1423
- - Changed skip lists to use a deterministic algorithm. The library should
- now never call rand() or srand(). NAF - 2009/04/08 - 503
- - Fixed a bug where H5Lcopy and H5Lmove wouldn't create intermediate groups
- when that property was set. NAF - 2009/04/07 - 1526
- - Fixed a bug that caused files with a user block to grow by the size of the
- user block every time they were opened. NAF - 2009/03/26 - 1499
- - Fixed a rare problem that could occur with files using the old (pre 1.4)
- array datatype. NAF - 2009/03/23
- - Modified library to be able to open files with corrupt root group symbol
- table messages, and correct these errors if they are found. Such files
- can only be successfully opened with write access. NAF - 2009/03/23 - 1189
- - Removed the long_long #define and replaced all instances with
- "long long". This caused problems with third party products. All
- currently supported compilers support the type. ADB - 2009/03/05
- - Fixed various bugs that could prevent the fill value from being written
- in certain rare cases. NAF - 2009/02/26 - 1469
- - Fixed a bug that prevented more than one dataset chunk from being cached
- at a time. NAF - 2009/02/12 - 1015
- - Fixed an assertion failure caused by opening an attribute multiple times
- through multiple file handles. NAF - 2009/02/12 - 1420
- - Fixed a problem that could prevent the user from adding attributes (or any
- object header message) in some circumstances. NAF - 2009/02/12 - 1427
- - Fixed a bug that could cause problems when an attribute was added to a
- committed datatype using the committed datatype's datatype.
- NAF - 2009/02/12
- - Fixed a bug that could cause problems when copying an object with a shared
- message in its own object header. NAF - 2009/01/29
- - Changed H5Tset_order to properly reject H5T_ORDER_NONE for most datatypes.
- NAF - 2009/01/27 - 1443
- - Fixed a bug where H5Tpack wouldn't remove trailing space from an otherwise
- packed compound type. NAF - 2009/01/14
- - Fixed up some old v2 btree assertions that get run in debug mode that
- were previously failing on compilation, and removed some of the
- more heavily outdated and non-rewritable ones. MAM - 2008/12/15
- - Fixed a bug that could cause problems when "automatically" unmounting
- multiple files. NAF - 2008/11/17
- - H5Dset_extent: when shrinking dimensions, some chunks were not deleted.
- PVN - 2009/01/8
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - Fixed many problems that could occur when using h5repack with named
- datatypes. NAF - 2009/4/20 - 1516/1466
- - h5dump, h5diff, h5repack were not reading (by hyperslabs) datasets
- that have a datatype datum size greater than H5TOOLS_BUFSIZE, a constant
- defined as 1024Kb, such as array types with large dimensions.
- PVN - 2009/4/1 - 1501
- - h5import: By selecting a compression type, a big endian byte order
- was being selected. PVN - 2009/3/11 - 1462
- - zip_perf.c had missing argument on one of the open() calls. Fixed.
- AKC - 2008/12/9
-
- F90 API
- ------
- - None
-
- C++ API
- ------
- - None
-
- High-Level APIs:
- ------
- - Dimension scales: The scale index return value in H5DSiterate_scales
- was not always incremented. PVN - 2009/4/8 - 1538
-
- Fortran High-Level APIs:
- ------
- - Lite: The h5ltget_dataset_info_f function (gets information about
- a dataset) was not correctly returning the dimension array
- PVN - 2009/3/23
-
-
-Platforms Tested
-================
-The following platforms and compilers have been tested for this release.
-
- AIX 5.3 xlc 7.0.0.8
- (LLNL Up) xlf 09.01.0000.0008
- xlC 7.0.0.8
- mpcc_r 7.0.0.8
- mpxlf_r 09.01.0000.0008
-
- Cray XT3 (2.0.41) cc (pgcc) 7.1-4
- (SNL red storm) ftn (pgf90) 7.1-4
- CC (pgCC) 7.1-4
-
- FreeBSD 6.3-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
- (duty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.3.4 20090419
- g++ 4.3.4 20090419
- gfortran 4.3.4 20090419
-
- FreeBSD 6.3-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
- (liberty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.4.1 20090421
- g++ 4.4.1 20090421
- gfortran 4.4.1 20090421
-
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.4.4m
- F90 MIPSpro 7.4.4m
- C++ MIPSpro cc 7.4.4m
-
- Linux 2.6.18-128.1.6.el5xen gcc (GCC) 4.1.2
- #1 SMP i686 i686 i386 G95 (GCC 4.0.3 (g95 0.92!) Feb 4 2009)
- (jam) PGI C, Fortran, C++ 7.2-1 32-bit
- PGI C, Fortran, C++ 8.0-1 32-bit
- Intel(R) C Compiler for 32-bit
- applications, Versions 10.1, 11.0
- Intel(R) C++ Compiler for 32-bit
- applications, Version 10.1, 11.0
- Intel(R) Fortran Compiler for 32-bit
- applications, Version 10.1, 11.0
- Absoft 32-bit Fortran 95 10.0.7
- MPICH mpich2-1.0.8 compiled with
- gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
-
- Linux 2.6.9-42.0.10.ELsmp #1 gcc (GCC) 3.4.6
- SMP i686 i686 i386 G95 (GCC 4.0.3 (g95 0.92!) Feb 4 2009)
- (kagiso) MPICH mpich2-1.0.8 compiled with
- gcc 3.4.6 and G95 (GCC 4.0.3 (g95 0.92!)
-
- Linux 2.6.16.60-0.37-smp #1 gcc 4.1.2
- SMP x86_64 GNU/Linux G95 (GCC 4.0.3 (g95 0.92!) Feb 4 2009)
- (smirom) Intel(R) C, C++, Fortran Compilers for
- applications running on Intel(R) 64,
- Versions 10.1, 11.0.
- PGI C, Fortran, C++ Version 7.2-1, 8.0-1
- for 64-bit target on x86-64
- gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
- MPICH mpich2-1.0.8 compiled with
- gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
- tested for both 32- and 64-bit binaries
-
- Linux 2.6.16.54-0.2.5 #1 Intel(R) C++ Version 10.1.017
- SGI Altix SMP ia64 Intel(R) Fortran Itanium(R) Version 10.1.017
- (cobalt) SGI MPI 1.38
-
- SunOS 5.10 32- and 64-bit Sun WorkShop 6 update 2 C 5.9 Patch 124867-09
- (linew) Sun WorkShop 6 update 2 Fortran 95 8.3
- Patch 127000-07
- Sun WorkShop 6 update 2 C++ 5.8
- Patch 124863-11
-
- Intel Xeon Linux 2.6.18- gcc 3.4.6 20060404
- 92.1.10.el5_lustre.1.6.6smp- Intel(R) C++ Version 10.0.026
- perfctr #2 SMP Intel(R) Fortran Compiler Version 10.0.026
- (abe) Open MPI 1.2.2
- MVAPICH2-0.9.8p28p2patched-intel-ofed-1.2
- compiled with icc v10.0.026 and ifort 10.0.026
-
- IA-64 Linux 2.4.21-309.tg1 gcc (GCC) 3.2.2
- #1 SMP ia64 Intel(R) C++ Version 8.1.037
- (NCSA tg-login) Intel(R) Fortran Compiler Version 8.1.033
- mpich-gm-1.2.7p1..16-intel-8.1.037-r1
-
- Linux 2.6.9-55.0.9.EL_lustre Intel(R) C, C++, Fortran Compilers for
- .1.4.11.1smp #1 SMP applications running on Intel(R) 64,
- SMP x86_64 GNU/Linux Versions 9.1.
- (SNL Spirit)
-
- Linux 2.6.9-55.0.9.EL_lustre Intel(R) C, C++, Fortran Compilers for
- .1.4.11.1smp #1 SMP applications running on Intel(R) 64,
- SMP x86_64 GNU/Linux Versions 10.1.
- (SNL Thunderbird)
-
- Linux 2.6.18-63chaos #1 SMP Intel(R) C, C++, Fortran Compilers for
- SMP x86_64 GNU/Linux applications running on Intel(R) 64,
- (SNL Glory) Versions 10.1.
-
- Linux 2.6.18-63chaos #1 SMP Intel(R) C, C++, Fortran Compilers for
- SMP x86_64 GNU/Linux applications running on Intel(R) 64,
- (LLNL Zeus) Versions 9.1.
- gcc/gfortran/g++ (GCC) 4.1.2.
-
- Windows XP Visual Studio .NET
- Visual Studio 2005 w/ Intel Fortran 9.1
- Cygwin(native gcc compiler and g95)
-
- Windows XP x64 Visual Studio 2005 w/ Intel Fortran 9.1
-
- Windows Vista Visual Studio 2005
-
- MAC OS 10.5.6 (Intel) i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1
- GNU Fortran (GCC) 4.3.0 20070810
- G95 (GCC 4.0.3 (g95 0.91!) Apr 24 2008)
- Intel C, C++ and Fortran compilers 10.1
-
-
-Supported Configuration Features Summary
-========================================
-
- In the tables below
- y = tested and supported
- n = not supported or not tested in this release
- C = Cluster
- W = Workstation
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-Solaris2.10 32-bit n y n y y y
-Solaris2.10 64-bit n y n y y y
-IRIX64_6.5 32-bit n n n n y y
-IRIX64_6.5 64-bit n y y y y y
-Windows XP n y(4) n(4) y y y
-Windows XP x64 n y(4) n(4) y y y
-Windows Vista n n n y y y
-Mac OS X 10.5 Intel n y n y y y
-AIX 5.3 32- and 64-bit n y n y y n
-FreeBSD 6.3-STABLE 32&64 bit n y n y y y
-RedHat EL4 2.6.9-42 i686 GNU (1) W y y y y y y
-RedHat EL5 2.6.18-128 i686 GNU (1)W y y(2) y y y y
-RedHat EL5 2.6.18-128 i686 Intel W n y n y y n
-RedHat EL5 2.6.18-128 i686 PGI W n y n y y n
-SuSe Linux 2.6.16 x86_64 GNU (1) W y y(3) y y y y
-SuSe Linux 2.6.16 x86_64 Intel W n y n y y n
-SuSe Linux 2.6.16 x86_64 PGI W n y n y y y
-SuSe Linux 2.6.16 SGI Altix ia64 C y y y y y y
-RedHat EL4 2.6.18 Xeon Lustre C y y y y y n
-SuSe Linux 2.4.21 ia64 Intel C y y y y y n
-Cray XT3 2.0.41 y y y y y n
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.10 32-bit y y y y
-Solaris2.10 64-bit y y y y
-IRIX64_6.5 32-bit y dna y y
-IRIX64_6.5 64-bit y y n y
-Windows XP y y(4) y y
-Windows XP x64 y y(4) y y
-Windows Vista y n n y
-Mac OS X 10.5 y n y n
-AIX 5.3 32- and 64-bit n n n n
-FreeBSD 6.3-STABLE 32&64 bit y n y y
-RedHat EL4 2.6.9-42 i686 GNU (1) W y y y y
-RedHat EL5 2.6.18-128 i686 GNU (1)W y y(2) y y
-RedHat EL5 2.6.18-128 i686 Intel W y y y n
-RedHat EL5 2.6.18-128 i686 PGI W y y y n
-SuSe Linux 2.6.16 x86_64 GNU (1) W y y y y
-SuSe Linux 2.6.16 x86_64 Intel W y y y n
-SuSe Linux 2.6.16 x86_64 PGI W y y y n
-SuSe Linux 2.6.16 SGI Altix ia64 C y n
-RedHat EL4 2.6.18 Xeon Lustre C y y y n
-SuSe Linux 2.4.21 ia64 Intel C y y y n
-Cray XT3 2.0.41 n n n n
-
- (1) Fortran compiled with g95.
- (2) With PGI and Absoft compilers.
- (3) With PGI compiler for Fortran.
- (4) Using Visual Studio 2005 or Cygwin
- Compiler versions for each platform are listed in the preceding
- "Platforms Tested" table.
-
-
-Known Problems
-==============
-* Parallel tests failed with 16 processes with data inconsistency at testphdf5
- / dataset_readAll. Parallel tests also failed with 32 and 64 processes with
- collective abort of all ranks at t_posix_compliant / allwrite_allread_blocks
- with MPI IO. CMC - 2009/04/28
-
-* There is a known issue in which HDF5 will change the timestamp on a file
- simply by opening it with read/write permissions, even if the file is not
- modified in any way. This is due to the way in which HDF5 manages the file
- superblock. A fix is currently underway and should be included in the 1.8.4
- release of HDF5. MAM - 2009/04/28
-
-* For gcc v4.3 and v4.4, with production mode, if -O3 is used, H5Tinit.c
- would fail to compile. Actually bad H5Tinit.c is produced. If -O (same
- as -O1) is used, H5Tinit.c compiled okay but test/dt_arith would fail.
- When -O0 (no optimizatio) is used, H5Tinit.c compilete okay and all
- tests passed. Therefore, -O0 is imposed for v4.3 and v4.4 of gcc.
- AKC - 2009/04/20
-
-* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
- tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
- are expected to fail and should exit with a non-zero code but the yod
- command does not propagate the exit code of the executables. Yod always
- returns 0 if it can launch the executable. The test suite shell expects
- a non-zero for this particular test, therefore it concludes the test has
- failed when it receives 0 from yod. Skip all the "failing" test for now
- by changing them as following.
-
- ======== Original tools/h5ls/testh5ls.sh =========
- TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ======== Change to ===============================
- echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ==================================================
-
- ======== Original tools/h5copy/testh5copy.sh =========
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- H5LSTEST $FILEOUT
- ======== Change to ===============================
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- echo SKIP H5LSTEST $FILEOUT
- ==================================================
- AKC - 2008/11/10
-
-* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
- message, "yod allocation delayed for node recovery". This interferes with
- test suites that do not expect seeing this message. See the section of "Red
- Storm" in file INSTALL_parallel for a way to deal with this problem.
- AKC - 2008/05/28
-
-* We have discovered two problems when running collective IO parallel HDF5
- tests with chunking storage on the ChaMPIon MPI compiler on tungsten, a
- Linux cluster at NCSA.
-
- Under some complex selection cases:
- 1) MPI_Get_element returns the wrong value.
- 2) MPI_Type_struct also generates the wrong derived datatype and corrupt
- data may be generated.
- These issues arise only when turning on collective IO with chunking storage
- with some complex selections. We have not found these problems on other
- MPI-IO compilers. If you encounter these problems, you may use independent
- IO instead.
-
- To avoid this behavior, change the following line in your code
- H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
- to
- H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
- KY - 2007/08/24
-
-* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* For LLNL, uP: both serial and parallel tests pass.
- Zeus: Serial tests pass but parallel tests fail with a known problem in MPI.
- ubgl: Serial tests pass but parallel tests fail.
-
-* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
- the application asks to do collective IO, we have found that when using 4
- processors, a simple collective write will sometimes be hung. This can be
- verified with t_mpi test under testpar.
-
-* On IRIX6.5, when the C compiler version is greater than 7.4, complicated
- MPI derived datatype code will work. However, the user should increase
- the value of the MPI_TYPE_MAX environment variable to some appropriate value
- to use collective irregular selection code. For example, the current
- parallel HDF5 test needs to raise MPI_TYPE_MAX to 200,000 to pass the test.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- SLU - 2005/6/30
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command `poe'.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
-
- The tests may fail with messages like "The socket name is already in use",
- but HDF5 does not use sockets. This failure is due to problems with the
- poe command trying to set up the debug socket. To resolve this problem,
- check to see whether there are many old /tmp/s.pedb.* files staying around.
- These are sockets used by the poe command and left behind due to failed
- commands. First, ask your system administrator to clean them out.
- Lastly, request IBM to provide a means to run poe without the debug socket.
-
-* The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system libraries on
- Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on IBM SP2 platforms for serial mode. The parallel mode works fine with
- this option.
-
- It is suggested that you do not use this option on these platforms
- during configuration.
-
-* There is also a configure error on Altix machines that incorrectly reports
- when a version of Szip without an encoder is being used.
-
-* Information about building with PGI and Intel compilers is available in
- the INSTALL file sections 4.7 and 4.8.
-
-
-%%%%1.8.2%%%%
-
-
-HDF5 version 1.8.2 released on Mon Nov 10 15:43:09 CST 2008
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between HDF5-1.8.1 and HDF5 1.8.2,
-and contains information on the platforms tested and known problems in
-HDF5-1.8.2. For more details, see the files HISTORY-1_0-1_8_0_rc3.txt
-and HISTORY-1_8.txt in the release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.2 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.2 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.2 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.2 (current
-release) versus Release 1.8.1":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.8.1
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - Upgraded libtool to version 2.2.6a. (MAM - 2008/10/15).
-
- Library
- -------
- - Added two new public routines: H5Pget_elink_fapl() and
- H5Pset_elink_fapl(). (see bug #1247) (VC - 2008/10/13)
- - Improved free space tracking in file to be faster. (QAK - 2008/10/06)
- - Added 'mounted' field to H5G_info_t struct. (QAK - 2008/07/15)
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - h5repack: added new options -u and -b to add a userblock to an HDF5
- file during the repack. (PVN - 2008/08/26)
- - h5repack: added options -t and -a to call H5Pset_alignment while
- creating a repacked file. (PVN - 2008/08/29)
- - h5ls: added capability to traverse through external links when the -r
- (recursive) flag is given. (NAF - 2008/09/16)
- - h5ls: added -E option to enable traversal of external links.
- h5ls will not traverse external links without this flag being set.
- (NAF - 2008/10/06)
- - h5dump: when -b flag is used without a keyword after it, binary
- output defaults to NATIVE. MEMORY keyword was deprecated
- and replaced by NATIVE keyword. (PVN - 2008/10/30)
- - h5diff: returns 1 when file graphs differ by any object.
- Error return code was changed to 2 from -1. (PVN - 2008/10/30)
- - h5import: TEXTFPE (scientific format) was deprecated. Use TEXTFP
- instead (PVN - 2008/10/30)
-
-
-
- F90 API
- ------
- - Added optional parameter 'mounted' to H5Gget_info_f,
- H5Gget_info_by_idx_f, H5Gget_info_by_name_f (MSB - 2008/09/24)
- - Added H5Tget_native_type_f (MSB - 2008/09/30)
-
-
- C++ API
- ------
- - These member functions were added as wrapper for H5Rdereference to
- replace the incorrect IdComponent::dereference().
- void H5Object::dereference(H5Object& obj, void* ref,
- H5R_type_t ref_type=H5R_OBJECT)
- void H5Object::dereference(H5File& h5file, void* ref,
- H5R_type_t ref_type=H5R_OBJECT)
- void H5Object::dereference(Attribute& obj, void* ref,
- H5R_type_t ref_type=H5R_OBJECT)
-
- In addition, these constructors were added to create the associated
- objects by way of dereference:
- DataSet(H5Object& obj, void* ref, H5R_type_t ref_type=H5R_OBJECT)
- DataSet(H5File& file, void* ref, H5R_type_t ref_type=H5R_OBJECT)
- DataSet(Attribute& attr, void* ref, H5R_type_t ref_type=H5R_OBJECT)
- Group(H5Object& obj, void* ref, H5R_type_t ref_type=H5R_OBJECT)
- Group(H5File& obj, void* ref, H5R_type_t ref_type=H5R_OBJECT)
- Group(Attribute& attr, void* ref, H5R_type_t ref_type=H5R_OBJECT)
- DataType(H5Object& obj, void* ref, H5R_type_t ref_type=H5R_OBJECT)
- DataType(H5File& file, void* ref, H5R_type_t ref_type=H5R_OBJECT)
- DataType(Attribute& attr, void* ref, H5R_type_t ref_type=H5R_OBJECT)
- (BMR - 2008/10/29)
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - Intel 10.1 is supported on Mac OS X 10.5.4.
- Note:
- When Fortran is enabled, configure automatically
- disables the build of shared libraries (i.e., only
- static C and C++ HDF5 libraries will be built
- along with the static HDF5 Fortran library).
- Intel 10.1 C and C++ compilers require
- "-no-multibyte-chars" compilation flag due to the known
- bug in the compilers.
- (EIP - 2008/10/30)
-
-
-Bug Fixes since HDF5-1.8.1
-==========================
-
- Configuration
- -------------
- - Fixed error with 'make check install' failing due to h5dump
- needing other tools built first. (MAM - 2008/10/15).
- - When using shared szip, it is no longer necessary to specify
- the path to the shared szip libraries in LD_LIBRARY_PATH.
- (MAM - 2008/10/15).
- - The file libhdf5_fortran.settings is not installed since its content
- is included in libhdf5.settings now. (AKC - 2008/10/21)
- - "make DESTDIR=xxx install" failed to install some tools and files
- (e.g., h5cc and fortran modules). Fixed. (AKC - 2008/10/8).
-
- Library
- -------
- - H5Ovisit and H5Ovisit_by_name will now properly terminate when the
- callback function returns a positive value on the starting object.
- (NAF - 2008/11/03)
- - Fixed an error where a null message could be created that was larger
- than could be written to the file. (NAF - 2008/10/23)
- - Corrected error with family/split/multi VFD not updating driver info
- when "latest" version of the file format used. (QAK - 2008/10/14)
- - Corrected alignment+threshold errors to work correctly when metadata
- aggregation is enabled. (QAK - 2008/10/06)
- - Changed H5Fget_obj_count and H5Fget_obj_ids to ignore objects
- registered by the library for internal library use.
- (NAF - 2008/10/06)
- - Fixed potential memory leak during compound conversion.
- (NAF - 2008/10/06)
- - Changed the return value of H5Fget_obj_count from INT to SSIZE_T.
- Also changed the return value of H5Fget_obj_ids from HERR_T to
- SSIZE_T and the type of the parameter MAX_OBJS from INT to SIZE_T.
- (SLU - 2008/09/26)
- - Fixed an issue that could cause data to be improperly overwritten
- during compound type conversion. (NAF - 2008/09/19)
- - Fixed pointer alignment violations that could occur during vlen
- conversion. (NAF - 2008/09/16)
- - Fixed problem where library could cause a segmentation fault when
- an invalid location ID was given to H5Giterate(). (QAK - 2008/08/19)
- - Fixed improper shutdown when objects have reference count > 1. The
- library now tracks reference count due to the application separately
- from that due to internal library routines. (NAF - 2008/08/19)
- - Fixed assertion failure caused by incorrect array datatype version.
- (NAF - 2008/08/08)
- - Fixed an issue where mount point traversal would fail when using
- multiple handles for the child. (NAF - 2008/08/07)
- - Fixed an issue where mount points were inaccessible when using
- multiple file handles for the parent. The mount table is now in
- the shared file structure (the parent pointer is still in the
- top structure). (NAF - 2008/08/07)
- - Fixed assertion failure caused by incorrect array datatype version.
- (NAF - 2008/08/04)
- - Fixed issue where a group could have a file mounted on it twice.
- (QAK - 2008/07/15)
- - When an attribute was opened twice and data was written with
- one of the handles, the file didn't have the data. It happened
- because each handle had its own object structure, and the empty
- one overwrote the data with fill value. This is fixed by making
- some attribute information like the data be shared in the
- attribute structure. (SLU - 2008/07/07)
- - Fixed a Windows-specific issue in the ohdr test which was causing
- users in some timezones to get false errors. This a deficiency in
- the Windows mktime() function, and has been handled properly.
- (SJW - 2008/06/19)
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - h5dump now checks for uniqueness of committed datatypes.
- (NAF - 2008/10/15)
- - Fixed unnecessary indentation of committed datatypes in h5dump.
- (NAF - 2008/10/15)
- - Fixed bugs in h5stat: segmemtation fault when printing groups and
- print warning message when traversal of objects is unsuccessful.
- (see bug #1253) (VC- 2008/10/13)
- - Fixed bug in h5ls that prevented relative group listings (like
- "h5ls foo.h5/bar") from working correctly (QAK - 2008/06/03)
- - h5dump: when doing binary output (-b), the stdout printing of
- attributes was done incorrectly. Removed printing of attributes
- when doing binary output. (PVN - 2008/06/05)
-
-
- F90 API
- ------
- - h5sselect_elements_f: Added additional operators H5S_SELECT_APPEND
- and H5S_SELECT_PREPEND (MSB - 2008/09/30)
- - h5sget_select_elem_pointlist: Fixed list of returned points by
- rearranging the point list correctly by accounting for C
- conventions. (MSB - 2008/09/30)
- - h5sget_select_hyper_blocklist_f: Fixed error in transposed dimension
- of arrays.(MSB - 2008/9/30)
- - h5sget_select_bounds_f: Swapped array bounds to account for C and
- Fortran reversed array notation (MSB - 2008/9/30)
- - Changed to initializing string to a blank character instead of a
- null type in tH5P.f90 to fix compiling error using AIX 5.3.0
- (MSB - 2008/7/29)
- - Fixed missing commas in H5test_kind.f90 detected by NAG compiler
- (MSB - 2008/7/29)
- - Fixed passing and array to a scalar in tH5A_1_8.f90 detected by
- NAG compiler (MSB - 2008/7/29)
- - Added the ability of the test programs to use the status of
- HDF5_NOCLEANUP to determine if the *.h5 files should be removed
- or not after the tests are completed (MSB - 2008/10/1)
- - In nh5tget_offset_c: (MSB 9/12/2008)
- If offset was equal to 0 it returned the error code of -1,
- this was changed to return an error code of -1 when the offset
- value is < 0.
- - Uses intrinsic Fortran function SIZEOF if available when detecting
- type of INTEGERs and REALs in H5test_kind.f90 (MSB - 2008/9/3)
- - Put the DOUBLE PRECISION interfaces in a separate module and
- added a USE statement for the module. The interfaces are
- included/excluded depending on the state of FORTRAN_DEFAULT_REAL
- is DBLE_F which detects if the default REAL is DOUBLE PRECISION.
- This allows the library to be compiled with -r8 Fortran flag
- without the user needing to edit the source code.
- (MSB - 200/8/27)
- - Enable building shared library for fortran by adding the flag -fPIC
- to the compile flags for versions of Intel Fortran compiler >=9
- (MSB - 2008/8/26)
-
- C++ API
- ------
- - Fixed a design bug which allowed an Attribute object to create/modify
- attributes (bugzilla #1068). The API class hierarchy was revised
- to address the problem. Classes AbstractDS and Attribute are moved
- out of H5Object. Class Attribute now multiply inherits from
- IdComponent and AbstractDs and class DataSet from H5Object and
- AbstractDs. In addition, the data member IdComponent::id was
- moved into subclasses: Attribute, DataSet, DataSpace, DataType,
- H5File, Group, and PropList. (BMR - 2008/05/20)
- - IdComponent::dereference was incorrect and replaced as described
- in "New Features" section.
- (BMR - 2008/10/29)
-
-
-Platforms Tested
-================
-The following platforms and compilers have been tested for this release.
-
- AIX 5.3 xlc 7.0.0.8
- xlf 09.01.0000.0008
- xlC 7.0.0.8
- mpcc_r 7.0.0.8
- mpxlf_r 09.01.0000.0008
-
- Cray XT3 (2.0.41) cc (pgcc) 7.1-4
- (red storm) ftn (pgf90) 7.1-4
- CC (pgCC) 7.1-4
-
- FreeBSD 6.3-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
- (duty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.2.5 20080702
- g++ 4.2.5 20080702
- gfortran 4.2.5 20080702
-
- FreeBSD 6.3-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
- (liberty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.2.5 20080702
- g++ 4.2.5 20080702
- gfortran 4.2.5 20080702
-
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.4.4m
- F90 MIPSpro 7.4.4m
- C++ MIPSpro cc 7.4.4m
-
- Linux 2.6.9-42.0.10.ELsmp #1 gcc (GCC) 3.4.6
- SMP i686 i386 G95 (GCC 4.0.3 (g95 0.92!) April 18 2007)
- (kagiso) PGI C, Fortran, C++ 7.2-1 32-bit
- Intel(R) C Compiler for 32-bit
- applications, Version 10.1
- Intel(R) C++ Compiler for 32-bit
- applications, Version 10.1
- Intel(R) Fortran Compiler for 32-bit
- applications, Version 10.1
- Absoft 32-bit Fortran 95 10.0.4
- MPICH mpich-1.2.7 compiled with
- gcc 3.4.6 and G95 (GCC 4.0.3 (g95 0.92!)
- MPICH mpich2-1.0.6p1 compiled with
- gcc 3.4.6 and G95 (GCC 4.0.3 (g95 0.92!)
-
- Linux 2.6.16.46-0.14-smp #1 Intel(R) C++ for Intel(R) EM64T
- SMP x86_64 GNU/Linux Ver. 10.1.013
- (smirom) Intel(R) Fortran Intel(R) EM64T
- Ver. 10.1.013
- PGI C, Fortran, C++ Version 7.2-1
- for 64-bit target on x86-64
- MPICH mpich-1.2.7 compiled with
- gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
- MPICH mpich2-1.0.7 compiled with
- gcc 4.1.2 and G95 (GCC 4.0.3 (g95 0.92!)
- tested for both 32- and 64-bit binaries
-
- Linux 2.6.16.54-0.2.5 #1 Intel(R) C++ Version 10.1.017
- Altix SMP ia64 Intel(R) Fortran Itanium(R) Version 10.1.017
- (cobalt) SGI MPI 1.16
-
- SunOS 5.10 32- and 64-bit Sun WorkShop 6 update 2 C 5.8
- (linew) Sun WorkShop 6 update 2 Fortran 95 8.2
- Sun WorkShop 6 update 2 C++ 5.8
- Patch 121019-06
-
- Xeon Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
- (abe) Intel(R) C++ Version 10.0.026
- Intel(R) Fortran Compiler Version 10.0.026
- Open MPI 1.2.2
- MVAPICH2-0.9.8p28p2patched-intel-ofed-1.2
- compiled with icc v10.0.026 and
- ifort 10.0.026
-
- IA-64 Linux 2.4.21-309.tg1 #1 SMP
- ia64 gcc (GCC) 3.2.2
- (NCSA tg-login) Intel(R) C++ Version 8.1.037
- Intel(R) Fortran Compiler Version 8.1.033
- mpich-gm-1.2.7p1..16-intel-8.1.037-r1
-
- Intel 64 Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
- (abe) gcc 3.4.6 20060404
- Intel(R) C++ Version 10.0
- Intel (R) Fortran Compiler Version 10.0
- mvapich2-0.9.8p2patched-intel-ofed-1.2
-
- Windows XP Visual Studio .NET
- Visual Studio 2005 w/ Intel Fortran 9.1
- Cygwin(native gcc compiler and g95)
-
- Windows XP x64 Visual Studio 2005 w/ Intel Fortran 9.1
-
- Windows Vista Visual Studio 2005
-
- MAC OS 10.5.4 (Intel) i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1
- GNU Fortran (GCC) 4.3.0 20070810
- G95 (GCC 4.0.3 (g95 0.91!) Apr 24 2008)
- Intel C, C++ and Fortran compilers 10.1
-
-
-Supported Configuration Features Summary
-========================================
-
- In the tables below
- y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-Solaris2.10 32-bit n y n y y y
-Solaris2.10 64-bit n y n y y y
-IRIX64_6.5 32-bit n n n n y y
-IRIX64_6.5 64-bit n y y y y y
-Windows XP n y(15) n(15) y y y
-Windows XP x64 n y(15) n(15) y y y
-Windows Vista n n n y y y
-Mac OS X 10.5 Intel n y n y y y
-AIX 5.3 32- and 64-bit n y n y y n
-FreeBSD 6.3-STABLE
-32&64 bit n y n y y y
-RedHat EL4 (3) W y(1) y(10) y(1) y y y
-RedHat EL4 Intel (3) W n y n y y n
-RedHat EL4 PGI (3) W n y n y y n
-SuSe x86_64 gcc(3,12) W y(2) y(11) y(2) y y y
-SuSe x86_64 Int(3,12) W n y(13) n y y n
-SuSe x86_64 PGI(3,12) W n y(8) n y y y
-Linux 2.6 SuSE ia64 C
- Intel (3,7) y y y y y n
-Linux 2.6 SGI Altix
- ia64 Intel (3) y y y y y y
-Linux 2.6 RHEL C
- Lustre Intel (5) y(4) y y(4) y y n
-Cray XT3 2.0.41 y y y y y n
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.10 32-bit y y y y
-Solaris2.10 64-bit y y y y
-IRIX64_6.5 32-bit y dna y y
-IRIX64_6.5 64-bit y y n y
-Windows XP y y(15) y y
-Windows XP x64 y y(15) y y
-Windows Vista y n n y
-Mac OS X 10.5 y n y n
-AIX 5.3 32- and 64-bit n n n n
-FreeBSD 6.2 32&64 bit y n y y
-RedHat EL4 (3) W y y(10) y y
-RedHat EL4 Intel (3) W y y y n
-RedHat EL4 PGI (3) W y y y n
-SuSe x86_64 GNU(3,12) W y y y y
-SuSe x86_64 Int(3,12) W y y y n
-SuSe x86_64 PGI(3,12) W y y y n
-Linux 2.4 SuSE C
- ia64 C Intel (7) y y y n
-Linux 2.4 SGI Altix C
- ia64 Intel y n
-Linux 2.6 RHEL C
- Lustre Intel (5) y y y n
-Cray XT3 2.0.41 n n n n
-
- Notes: (1) Using mpich2 1.0.6.
- (2) Using mpich2 1.0.7.
- (3) Linux 2.6 with GNU, Intel, and PGI compilers, as indicated.
- W or C indicates workstation or cluster, respectively.
- (4) Using mvapich2 0.9.8.
- (5) Linux 2.6.9-42.0.10. Xeon cluster with ELsmp_perfctr_lustre
- and Intel compilers
- (6) Linux 2.4.21-32.0.1. Xeon cluster with ELsmp_perfctr_lustre
- and Intel compilers
- (7) Linux 2.4.21, SuSE_292.till. Ia64 cluster with Intel compilers
- (8) pgf90
- (9) With Compaq Visual Fortran 6.6c compiler.
- (10) With PGI and Absoft compilers.
- (11) PGI and Intel compilers for both C and Fortran
- (12) AMD Opteron x86_64
- (13) ifort
- (14) Yes with C and Fortran, but not with C++
- (15) Using Visual Studio 2005 or Cygwin
- (16) Not tested for this release.
- Compiler versions for each platform are listed in the preceding
- "Platforms Tested" table.
-
-
-Known Problems
-==============
-* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh and
- tools/h5copy/testh5copy.sh will fail some of its sub-tests. These sub-tests
- are expected to fail and should exit with a non-zero code but the yod
- command does not propagate the exit code of the executables. Yod always
- returns 0 if it can launch the executable. The test suite shell expects
- a non-zero for this particular test, therefore it concludes the test has
- failed when it receives 0 from yod. Skip all the "failing" test for now
- by changing them as following.
-
- ======== Original tools/h5ls/testh5ls.sh =========
- TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ======== Change to ===============================
- echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ==================================================
-
- ======== Original tools/h5copy/testh5copy.sh =========
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- H5LSTEST $FILEOUT
- ======== Change to ===============================
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d grp_rename
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -v -s grp_dsets -d /grp_rename/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_dsets -d /E/F/grp_dsets
- echo SKIP TOOLTEST_FAIL -i $TESTFILE -o $FILEOUT -vp -s /grp_nested -d /G/H/grp_nested
- echo SKIP H5LSTEST $FILEOUT
- ==================================================
- AKC - 2008/11/10
-
-* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
- message, "yod allocation delayed for node recovery". This interferes with
- test suites that do not expect seeing this message. See the section of "Red
- Storm" in file INSTALL_parallel for a way to deal with this problem.
- AKC - 2008/05/28
-
-* We have discovered two problems when running collective IO parallel HDF5
- tests with chunking storage on the ChaMPIon MPI compiler on tungsten, a
- Linux cluster at NCSA.
-
- Under some complex selection cases:
- 1) MPI_Get_element returns the wrong value.
- 2) MPI_Type_struct also generates the wrong derived datatype and corrupt
- data may be generated.
- These issues arise only when turning on collective IO with chunking storage
- with some complex selections. We have not found these problems on other
- MPI-IO compilers. If you encounter these problems, you may use independent
- IO instead.
-
- To avoid this behavior, change the following line in your code
- H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
- to
- H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
-
- KY - 2007/08/24
-
-* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* For LLNL, uP: both serial and parallel tests pass.
- Zeus: Serial tests pass but parallel tests fail with a known problem in MPI.
- ubgl: Serial tests pass but parallel tests fail.
-
-* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
- the application asks to do collective IO, we have found that when using 4
- processors, a simple collective write will sometimes be hung. This can be
- verified with t_mpi test under testpar.
-
-* On IRIX6.5, when the C compiler version is greater than 7.4, complicated
- MPI derived datatype code will work. However, the user should increase
- the value of the MPI_TYPE_MAX environment variable to some appropriate value
- to use collective irregular selection code. For example, the current
- parallel HDF5 test needs to raise MPI_TYPE_MAX to 200,000 to pass the test.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- SLU - 2005/6/30
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command `poe'.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
-
- The tests may fail with messages like "The socket name is already in use",
- but HDF5 does not use sockets. This failure is due to problems with the
- poe command trying to set up the debug socket. To resolve this problem,
- check to see whether there are many old /tmp/s.pedb.* files staying around.
- These are sockets used by the poe command and left behind due to failed
- commands. First, ask your system administrator to clean them out.
- Lastly, request IBM to provide a means to run poe without the debug socket.
-
-* The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system libraries on
- Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on IBM SP2 platforms for serial mode. The parallel mode works fine with
- this option.
-
- It is suggested that you do not use this option on these platforms
- during configuration.
-
-* There is also a configure error on Altix machines that incorrectly reports
- when a version of Szip without an encoder is being used.
-
-* Information about building with PGI and Intel compilers is available in
- the INSTALL file sections 4.7 and 4.8.
-
-
-
-
-%%%%1.8.1%%%%
-
-
-HDF5 version 1.8.1 released on Thu May 29 15:28:55 CDT 2008
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between the HDF5-1.8.1 release
-and HDF5 1.8.0, and contains information on the platforms tested and known
-problems in HDF5-1.8.1. For more details, see the files
-HISTORY-1_0-1_8_0_rc3.txt and HISTORY-1_8.txt in the release_docs/ directory
-of the HDF5 source.
-
-Links to the HDF5 1.8.1 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.1 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.1 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in the HDF5-1.8.x release series, including brief general
-descriptions of some new and modified APIs, are described in the "What's New
-in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.1 (current
-release) versus Release 1.8.0":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.8.0
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
-
- Configuration
- -------------
- - The lib/libhdf5.settings file contains much more configure
- information. (AKC - 2008/05/18)
-
- - The new configure option "--disable-sharedlib-rpath" disables
- embedding the '-Wl,-rpath' information into executables when
- shared libraries are produced, and instead solely relies on the
- information in LD_LIBRARY_PATH. (MAM - 2008/05/15)
-
- - Configuration suite now uses Autoconf 2.61, Automake 1.10.1, and
- Libtool 2.2.2 (MAM - 2008/05/01)
-
- Source code distribution
- ========================
-
- Library
- -------
- - None
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - h5repack: Reinstated the -i and -o command line flags to specify
- input and output files. h5repack now understands both the old
- syntax (with -i and -o) and the new syntax introduced in Release
- 1.8.0. (PVN - 2008/05/23)
- - h5dump: Added support for external links, displaying the object that
- an external link points to. (PVN - 2008/05/12)
- - h5dump: Added an option, -m, to allow user-defined formatting in the
- output of floating point numbers. (PVN - 2008/05/06)
- - h5dump, in output of the -p option: Added effective data compression
- ratio to the dataset storage layout output when a compression filter
- has been applied to a dataset. (PVN - 2008/05/01)
-
- F90 API
- ------
- - New H5A, H5G, H5L, H5O, and H5P APIs to enable 1.8 features were
- added. See "Release 1.8.1 (current release) versus Release 1.8.0" in
- the document "HDF5 Software Changes from Release to Release"
- (http://hdfgroup.org/HDF5/doc/ADGuide/Changes.html) for the
- complete list of the new APIs.
-
- C++ API
- ------
- - None
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - Both serial and parallel HDF5 are supported for the Red Storm machine
- which is a Cray XT3 system.
-
- - The Fortran library will work correctly if compiled with the -i8
- flag. This has been tested with the g95, PGI and Intel Fortran
- compilers.
-
-
-Bug Fixes since HDF5-1.8.0
-==========================
-
- Configuration
- -------------
- - None
-
- Source code distribution
- ========================
-
- Library
- -------
- - Chunking: Chunks greater than 4GB are disallowed.
- (QAK - 2008/05/16)
- - Fixed the problem with searching for a target file when following
- an external link. The search pattern will depend on whether the
- target file's pathname is an absolute or a relative path.
- Please see the H5Lcreate_external description in the "HDF5
- Reference Manual" (http://hdfgroup.org/HDF5/doc/RM/RM_H5L.html).
- (VC - 2008/04/08)
- - Fixed possible file corruption bug when encoding datatype
- descriptions for compound datatypes whose size was between
- 256 and 511 bytes and the file was opened with the "use the
- latest format" property enabled (with H5Pset_libver_bounds).
- (QAK - 2008/03/13)
- - Fixed bug in H5Aget_num_attrs() routine to correctly handle an
- invalid location identifier. (QAK - 2008/03/11)
-
- Parallel Library
- ----------------
- - None
-
- Tools
- -----
- - Fixed bug in h5diff that prevented datasets and attributes with
- variable-length string elements from comparing correctly.
- (QAK - 2008/02/28)
- - Fixed bug in h5dump that caused binary output to be made only for
- the first dataset, when several datasets were requested.
- (PVN - 2008/04/07)
-
- F90 API
- ------
- - The h5tset(get)_fields subroutines were missing the parameter to
- specify a sign position; fixed. (EIP - 2008/05/23)
- - Many APIs were fixed to work with the 8-byte integers in Fortran vs.
- 4-byte integers in C. This change is transparent to user applications.
-
- C++ API
- ------
- - The class hierarchy was revised to address the problem reported
- in bugzilla #1068, Attribute should not be derived from base
- class H5Object. Classes AbstractDS was moved out of H5Object.
- Class Attribute now multiply inherits from IdComponent and
- AbstractDs and class DataSet from H5Object and AbstractDs.
- In addition, data member IdComponent::id was moved into subclasses:
- Attribute, DataSet, DataSpace, DataType, H5File, Group, and PropList.
- (BMR - 2008/05/20)
- - IdComponent::dereference was incorrect; it was changed from:
- void IdComponent::dereference(IdComponent& obj, void* ref)
- to:
- void H5Object::dereference(H5File& h5file, void* ref)
- void H5Object::dereference(H5Object& obj, void* ref)
- (BMR - 2008/05/20)
- - Revised Attribute::write and Attribute::read wrappers to handle
- memory allocation/deallocation properly. (bugzilla 1045)
- (BMR - 2008/05/20)
-
-
-Platforms Tested
-================
-The following platforms and compilers have been tested for this release.
-
- Cray XT3 (2.0.41) cc (pgcc) 7.1-4
- (red storm) ftn (pgf90) 7.1-4
- CC (pgCC) 7.1-4
- mpicc 1.0.2
- mpif90 1.0.2
-
- FreeBSD 6.2-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
- (duty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.2.1 20080123
- g++ 4.2.1 20080123
- gfortran 4.2.1 20070620
-
- FreeBSD 6.2-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
- (liberty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.2.1 20080123
- g++ 4.2.1 20080123
- gfortran 4.2.1 20080123
-
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.4.4m
- F90 MIPSpro 7.4.4m
- C++ MIPSpro cc 7.4.4m
-
- Linux 2.6.9 (RHEL4) Intel 10.0 compilers
- (abe.ncsa.uiuc.edu)
-
- Linux 2.4.21-47 gcc 3.2.3 20030502
- (osage)
-
- Linux 2.6.9-42.0.10 gcc,g++ 3.4.6 20060404, G95 (GCC 4.0.3)
- (kagiso) PGI 7.1-6 (pgcc, pgf90, pgCC)
- Intel 9.1 (icc, ifort, icpc)
-
- Linux 2.6.16.27 x86_64 AMD gcc 4.1.0 (SuSE Linux), g++ 4.1.0,
- (smirom) g95 (GCC 4.0.3)
- PGI 7.1-6 (pgcc, pgf90, pgCC)
- Intel 9.1 (icc, ifort, icpc)
-
- Linux 2.6.5-7.252.1-rtgfx #1 Intel(R) C++ Version 9.0
- SMP ia64 Intel(R) Fortran Itanium(R) Version 9.0
- (cobalt) SGI MPI
-
- SunOS 5.8 32,46 Sun WorkShop 6 update 2 C 5.3
- (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 95 6.2
- Sun WorkShop 6 update 2 C++ 5.3
-
- SunOS 5.10 cc: Sun C 5.8
- (linew) f90: Sun Fortran 95 8.2
- CC: Sun C++ 5.8
-
- Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
- (tungsten) gcc 3.2.2 20030222
- Intel(R) C++ Version 9.0
- Intel(R) Fortran Compiler Version 9.0
-
- IA-64 Linux 2.4.21.SuSE_309.tg1 ia64
- (NCSA tg-login) gcc 3.2.2
- Intel(R) C++ Version 8.1
- Intel(R) Fortran Compiler Version 8.1
- mpich-gm-1.2.6..14b-intel-r2
-
- Intel 64 Linux 2.6.9-42.0.10.EL_lustre-1.4.10.1smp
- (abe) gcc 3.4.6 20060404
- Intel(R) C++ Version 10.0
- Intel (R) Fortran Compiler Version 10.0
- mvapich2-0.9.8p2patched-intel-ofed-1.2
-
- Windows XP Visual Studio .NET
- Visual Studio 2005 w/ Intel Fortran 9.1
- Cygwin(native gcc compiler and g95)
- MinGW(native gcc compiler and g95)
-
- Windows XP x64 Visual Studio 2005 w/ Intel Fortran 9.1
-
- Windows Vista Visual Studio 2005
-
- MAC OS 10.5.2 (Intel) i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1
- GNU Fortran (GCC) 4.3.0 20070810
- G95 (GCC 4.0.3 (g95 0.91!) Apr 24 2008)
-
-
-Supported Configuration Features Summary
-========================================
-
- In the tables below
- y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-SunOS5.10 64-bit n y n y y y
-SunOS5.10 32-bit n y n y y y
-IRIX64_6.5 64-bit n y y y y y
-IRIX64_6.5 32-bit n n n n y y
-Windows XP n y(15) n(15) y y y
-Windows XP x64 n y(15) n(15) y y y
-Windows Vista n n n y y y
-Mac OS X 10.5 Intel n y n y y y
-FreeBSD 4.11 n n n y y y
-RedHat EL3 W (3) y(1) y(10) y(1) y y y
-RedHat EL3 W Intel (3) n y n y y n
-RedHat EL3 W PGI (3) n y n y y n
-SuSe x86_64 gcc (3,12) y(2) y(11) y(2) y y y
-SuSe x86_64 Int (3,12) n y(13) n y y n
-SuSe x86_64 PGI (3,12) n y(8) n y y y
-Linux 2.4 Xeon C
- Lustre Intel (3,6) n y n y y n
-Linux 2.6 SuSE ia64 C
- Intel (3,7) y y y y y n
-Linux 2.6 SGI Altix
- ia64 Intel (3) y y y y y y
-Linux 2.6 RHEL C
- Lustre Intel (5) y(4) y y(4) y y n
-Cray XT3 2.0.41 y y y y y n
-
-
-Platform Shared Shared Shared Thread-
- C libs F90 libs C++ libs safe
-Solaris2.10 64-bit y y y y
-Solaris2.10 32-bit y y y y
-IRIX64_6.5 64-bit y y n y
-IRIX64_6.5 32-bit y dna y y
-Windows XP y y(15) y y
-Windows XP x64 y y(15) y y
-Windows Vista y n n y
-Mac OS X 10.3 y n
-FreeBSD 4.11 y n y y
-RedHat EL3 W (3) y y(10) y y
-RedHat EL3 W Intel (3) y y y n
-RedHat EL3 W PGI (3) y y y n
-SuSe x86_64 W GNU (3,12) y y y y
-SuSe x86_64 W Int (3,12) y y y n
-SuSe x86_64 W PGI (3,12) y y y n
-Linux 2.4 Xeon C
- Lustre Intel (6) y y y n
-Linux 2.4 SuSE
- ia64 C Intel (7) y y y n
-Linux 2.4 SGI Altix
- ia64 Intel y n
-Linux 2.6 RHEL C
- Lustre Intel (5) y y y n
-Cray XT3 2.0.41 n n n n n
-
- Notes: (1) Using mpich2 1.0.6.
- (2) Using mpich2 1.0.7.
- (3) Linux 2.6 with GNU, Intel, and PGI compilers, as indicated.
- W or C indicates workstation or cluster, respectively.
- (4) Using mvapich2 0.9.8.
- (5) Linux 2.6.9-42.0.10. Xeon cluster with ELsmp_perfctr_lustre
- and Intel compilers
- (6) Linux 2.4.21-32.0.1. Xeon cluster with ELsmp_perfctr_lustre
- and Intel compilers
- (7) Linux 2.4.21, SuSE_292.till. Ia64 cluster with Intel compilers
- (8) pgf90
- (9) With Compaq Visual Fortran 6.6c compiler.
- (10) With PGI and Absoft compilers.
- (11) PGI and Intel compilers for both C and Fortran
- (12) AMD Opteron x86_64
- (13) ifort
- (14) Yes with C and Fortran, but not with C++
- (15) Using Visual Studio 2005 or Cygwin
- (16) Not tested for this release.
- Compiler versions for each platform are listed in the preceding
- "Platforms Tested" table.
-
-
-Known Problems
-==============
-* For Red Storm, a Cray XT3 system, the yod command sometimes gives the
- message, "yod allocation delayed for node recovery". This interferes with
- test suites that do not expect seeing this message. See the section of "Red
- Storm" in file INSTALL_parallel for a way to deal with this problem.
- AKC - 2008/05/28
-
-* For Red Storm, a Cray XT3 system, the tools/h5ls/testh5ls.sh will fail on
- the test "Testing h5ls -w80 -r -g tgroup.h5" fails. This test is
- expected to fail and exit with a non-zero code but the yod command does
- not propagate the exit code of the executables. Yod always returns 0 if it
- can launch the executable. The test suite shell expects a non-zero for
- this particular test, therefore it concludes the test has failed when it
- receives 0 from yod. To bypass this problem for now, change the following
- lines in the tools/h5ls/testh5ls.sh.
- ======== Original =========
- # The following combination of arguments is expected to return an error message
- # and return value 1
- TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ======== Skip the test =========
- echo SKIP TOOLTEST tgroup-1.ls 1 -w80 -r -g tgroup.h5
- ======== end of bypass ========
- AKC - 2008/05/28
-
-* We have discovered two problems when running collective IO parallel HDF5
- tests with chunking storage on the ChaMPIon MPI compiler on tungsten, a
- Linux cluster at NCSA.
-
- Under some complex selection cases:
- 1) MPI_Get_element returns the wrong value.
- 2) MPI_Type_struct also generates the wrong derived datatype and corrupt
- data may be generated.
- These issues arise only when turning on collective IO with chunking storage
- with some complex selections. We have not found these problems on other
- MPI-IO compilers. If you encounter these problems, you may use independent
- IO instead.
-
- To avoid this behavior, change the following line in your code
- H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
- to
- H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
-
- KY - 2007/08/24
-
-* For SNL, spirit/liberty/thunderbird: The serial tests pass but parallel
- tests failed with MPI-IO file locking message. AKC - 2007/6/25
-
-* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* For LLNL, uP: both serial and parallel tests pass.
- Zeus: Serial tests pass but parallel tests fail with a known problem in MPI.
- ubgl: Serial tests pass but parallel tests fail.
-
-* Configuring with --enable-debug=all produces compiler errors on most
- platforms: Users who want to run HDF5 in debug mode should use
- --enable-debug rather than --enable-debug=all to enable debugging
- information on most modules.
-
-* On Mac OS 10.4, test/dt_arith.c has some errors in conversion from long
- double to (unsigned) long long and from (unsigned) long long to long double.
-
-* On Altix SGI with Intel 9.0, testmeta.c would not compile with -O3
- optimization flag.
-
-* On VAX, the Scaleoffset filter is not supported. The Scaleoffset filter
- supports only the IEEE standard for floating-point data; it cannot be applied
- to HDF5 data generated on VAX.
-
-* On Cray X1, a lone colon on the command line of h5dump --xml (as in
- the testh5dumpxml.sh script) is misinterpereted by the operating system
- and causes an error.
-
-* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
- the application asks to do collective IO, we have found that when using 4
- processors, a simple collective write will sometimes be hung. This can be
- verified with t_mpi test under testpar.
-
-* On IRIX6.5, when the C compiler version is greater than 7.4, complicated
- MPI derived datatype code will work. However, the user should increase
- the value of the MPI_TYPE_MAX environment variable to some appropriate value
- to use collective irregular selection code. For example, the current
- parallel HDF5 test needs to raise MPI_TYPE_MAX to 200,000 to pass the test.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculation of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- SLU - 2005/6/30
-
-* For version 6 (6.02 and 6.04) of the Portland Group compiler on the AMD
- Opteron processor, there is a bug in the compiler for optimization(-O2).
- The library failed in several tests, all related to the MULTI driver.
- The problem has been reported to the vendor.
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command `poe'.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
-
- The tests may fail with messages like "The socket name is already in use",
- but HDF5 does not use sockets. This failure is due to problems with the
- poe command trying to set up the debug socket. To resolve this problem,
- check to see whether there are many old /tmp/s.pedb.* files staying around.
- These are sockets used by the poe command and left behind due to failed
- commands. First, ask your system administrator to clean them out.
- Lastly, request IBM to provide a means to run poe without the debug socket.
-
-* The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system libraries on
- Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on IBM SP2 platforms for serial mode. The parallel mode works fine with
- this option.
-
- It is suggested that you do not use this option on these platforms
- during configuration.
-
-* With the gcc 2.95.2 compiler, HDF5 uses the `-ansi' flag during
- compilation. The ANSI version of the compiler complains about not being
- able to handle the `long long' datatype with the warning:
-
- warning: ANSI C does not support `long long'
-
- This warning is innocuous and can be safely ignored.
-
-* The ./dsets tests fail on the TFLOPS machine if the test program,
- dsets.c, is compiled with the -O option. The HDF5 library still works
- correctly with the -O option. The test program works fine if it is
- compiled with -O1 or -O0. Only -O (same as -O2) causes the test
- program to fail.
-
-* Not all platforms behave correctly with Szip's shared libraries. Szip is
- disabled in these cases, and a message is relayed at configure time. Static
- libraries should be working on all systems that support Szip and should be
- used when shared libraries are unavailable.
-
- There is also a configure error on Altix machines that incorrectly reports
- when a version of Szip without an encoder is being used.
-
-* On some platforms that use Intel and Absoft compilers to build the HDF5
- Fortran library, compilation may fail for fortranlib_test.f90, fflush1.f90
- and fflush2.f90 complaining about the exit subroutine. Comment out the line
- IF (total_error .ne. 0) CALL exit (total_error).
-
-* Information about building with PGI and Intel compilers is available in
- the INSTALL file sections 4.7 and 4.8.
-
-* On at least one system, SDSC DataStar, the scheduler (in this case
- LoadLeveler) sends job status updates to standard error when you run
- any executable that was compiled with the parallel compilers.
-
- This causes problems when running "make check" on parallel builds, as
- many of the tool tests function by saving the output from test runs,
- and comparing it to an exemplar.
-
- The best solution is to reconfigure the target system so it no longer
- inserts the extra text. However, this may not be practical.
-
- In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
- the configure and build. This will cause "make check" to continue after
- detecting errors in the tool tests. However, in the case of SDSC DataStar,
- it also leaves you with some 150 "failed" tests to examine by hand.
-
- A second solution is to write a script to run serial tests and filter
- out the text added by the scheduler. A sample script used on SDSC
- DataStar is given below, but you will probably have to customize it
- for your installation.
-
- Observe that the basic idea is to insert the script as the first item
- on the command line which executes the the test. The script then
- executes the test and filters out the offending text before passing
- it on.
-
- #!/bin/csh
-
- set STDOUT_FILE=~/bin/serial_filter.stdout
- set STDERR_FILE=~/bin/serial_filter.stderr
-
- rm -f $STDOUT_FILE $STDERR_FILE
-
- ($* > $STDOUT_FILE) >& $STDERR_FILE
-
- set RETURN_VALUE=$status
-
- cat $STDOUT_FILE
-
- tail +3 $STDERR_FILE
-
- exit $RETURN_VALUE
-
- You get the HDF5 make files and test scripts to execute your filter script
- by setting the environment variable "RUNSERIAL" to the full path of the
- script prior to running configure for parallel builds. Remember to
- "unsetenv RUNSERIAL" before running configure for a serial build.
-
- Note that the RUNSERIAL environment variable exists so that we can
- prefix serial runs as necessary on the target system. On DataStar,
- no prefix is necessary. However on an MPICH system, the prefix might
- have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
- get the serial tests to run at all.
-
- In such cases, you will have to include the regular prefix in your
- filter script.
-
-* H5Ocopy() does not copy reg_ref attributes correctly when shared-message
- is turn on. The value of the reference in the destination attriubte is
- wrong. This H5Ocopy problem will affect the h5copy tool.
-
-* In the C++ API, it appears that there are bugs in Attribute::write/read
- and DataSet::write/read for fixed- and variable-len strings. The problems
- are being worked on and a patch will be provided when the fixes are
- available.
-
-
-%%%%1.8.0%%%%
-
-
-HDF5 version 1.8.0 released on Tue Feb 12 20:41:19 CST 2008
-================================================================================
-
-INTRODUCTION
-============
-
-This document describes the differences between the HDF5-1.6.x release series
-and HDF5 1.8.0, and contains information on the platforms tested and known
-problems in HDF5-1.8.0. For more details, see the HISTORY-1_0-1_8_0_rc3.txt
-file in the
-release_docs/ directory of the HDF5 source.
-
-Links to the HDF5 1.8.0 source code, documentation, and additional materials
-can be found on the HDF5 web page at:
-
- http://www.hdfgroup.org/products/hdf5/
-
-The HDF5 1.8.0 release can be obtained from:
-
- http://www.hdfgroup.org/HDF5/release/obtain5.html
-
-User documentation for 1.8.0 can be accessed directly at this location:
-
- http://www.hdfgroup.org/HDF5/doc/
-
-New features in 1.8.0, including brief general descriptions of some new
-and modified APIs, are described in the "What's New in 1.8.0?" document:
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-All new and modified APIs are listed in detail in the "HDF5 Software Changes
-from Release to Release" document, in the section "Release 1.8.0 (current
-release) versus Release 1.6.x":
-
- http://www.hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-If you have any questions or comments, please send them to the HDF Help Desk:
-
- help@hdfgroup.org
-
-
-CONTENTS
-========
-
-- New Features
-- Removed Feature
-- Support for new platforms and languages
-- Bug Fixes since HDF5-1.6.0
-- Platforms Tested
-- Supported Configuration Features Summary
-- Known Problems
-
-
-New Features
-============
-
- HDF5 Release 1.8.0 is a major release with many changes and new features.
-
- New format and interface features discussed in the "What's New in
- HDF5 1.8.0" document include the following:
-
- Enhanced group object management
- Enhanced attribute management and more efficient meta data handling
- Expanded datatype features
- Creation order tracking and indexing
- Improved meta data caching and cache control
- UTF-8 encoding
- New I/O filters: n-bit and scale+offset compression
- New link (H5L) and object (H5O) interfaces and features
- External and user-defined links
- New high-level APIs:
- HDF5 Packet Table (H5PT) and HDF5 Dimension Scale (H5DS)
- C++ and Fortran interfaces for older high-level APIs:
- H5Lite (H5LT), H5Image (H5IM), and H5Table (H5TB)
- New and improved tools
- And more...
-
- http://hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
-
-
- New APIs associated with these features, other interface changes
- (e.g., ENUM and struct definitions), and new library configuration flags
- are listed in the "Release 1.8.0 (current release) versus Release 1.6.x"
- section of "HDF5 Software Changes from Release to Release."
-
- http://hdfgroup.org/HDF5/doc/ADGuide/Changes.html
-
-Compatibility
--------------
- Many HDF5 users and user communities have existing applications that
- they may wish to port to Release 1.8.0. Alternatively, some users may
- wish to take advantage of Release 1.8.0's improved performance without
- having to port such applications. To facilitate managing application
- compatibility and porting applications from release to release, the HDF
- Team has implemented the following features:
- Individually-configurable macros that selectively map common
- interface names to the old and new interfaces
- Library configuration options to configure the macro mappings
-
- Two related documents accompany this release:
- "API Compatibility Macros in HDF5" discusses the specifics of the
- new individually-configurable macros and library configuration
- options.
- http://hdfgroup.org/HDF5/doc/RM/APICompatMacros.html
-
- "New Features in HDF5 Release 1.8.0 and Backward/Forward Format
- Compatibility Issues" discusses each new feature with regard to
- its impact on format compatibility.
- http://hdfgroup.org/HDF5/doc/ADGuide/CompatFormat180.html
-
-Referenced documents
---------------------
- http://hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
- "What's New in HDF5 1.8.0"
-
- http://hdfgroup.org/HDF5/doc/ADGuide/Changes.html
- The "Release 1.8.0 (current release) versus Release 1.6.x "
- section in "HDF5 Software Changes from Release to Release"
-
- http://hdfgroup.org/HDF5/doc/RM/APICompatMacros.html
- "API Compatibility Macros in HDF5"
-
- http://hdfgroup.org/HDF5/doc/ADGuide/CompatFormat180.html
- "New Features in HDF5 Release 1.8.0 and Backward/Forward Format
- Compatibility Issues"
-
-
-Removed Feature
-===============
-The stream virtual file driver (H5FD_STREAM) have been removed in this
-release. This affects the functions H5Pset_fapl_stream and H5Pget_fapl_stream
-and the constant H5FD_STREAM.
-
-This virtual file driver will be available at
-http://hdf5-addons.origo.ethz.ch/. Note that at the time of this release,
-the transition is still in progress; the necessary integration tools may
-not be available when HDF5 Release 1.8.0 first comes out.
-
-
-Support for New Platforms, Languages, and Compilers
-===================================================
- - Support for Open VMS 7.3 was added.
-
-
-Bug Fixes since HDF5-1.6.0
-==========================
- This release contains numerous bug fixes. For details, see the
- "Changes from 1.6.0 to 1.8.0-rc3" section of the HISTORY.txt file for
- this release.
-
-
-Platforms Tested
-================
-The following platforms and compilers have been tested for for this release.
-
- AIX 5.2 (32/64 bit) xlc 8.0.0.11
- xlC 8.0
- xlf 10.01.0000.0
- mpcc_r 6.0.0.8
- mpxlf_r 8.1.1.7
-
- FreeBSD 6.2-STABLE i386 gcc 3.4.6 [FreeBSD] 20060305
- (duty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.2.1 20080123
- g++ 4.2.1 20080123
- gfortran 4.2.1 20070620
-
- FreeBSD 6.2-STABLE amd64 gcc 3.4.6 [FreeBSD] 20060305
- (liberty) g++ 3.4.6 [FreeBSD] 20060305
- gcc 4.2.1 20080123
- g++ 4.2.1 20080123
- gfortran 4.2.1 20080123
-
- IRIX64 6.5 (64 & n32) MIPSpro cc 7.4.4m
- F90 MIPSpro 7.4.4m
- C++ MIPSpro cc 7.4.4m
-
- Linux 2.6.9 (RHEL4) Intel 10.0 compilers
- (abe.ncsa.uiuc.edu)
-
- Linux 2.4.21-47 gcc 3.2.3 20030502
- (osage)
-
- Linux 2.6.9-42.0.10 gcc 3.4.6 20060404
- (kagiso) PGI 7.0-7 (pgcc, pgf90, pgCC)
- Intel 9.1 (icc, ifort, icpc)
-
- Linux 2.6.16.27 x86_64 AMD gcc 4.1.0 (SuSE Linux), g++ 4.1.0,
- (smirom) g95 (GCC 4.0.3)
- PGI 6.2-5 (pgcc, pgf90, pgCC)
- Intel 9.1 (icc, iort, icpc)
-
- Linux 2.6.5-7.252.1-rtgfx #1 Intel(R) C++ Version 9.0
- SMP ia64 Intel(R) Fortran Itanium(R) Version 9.0
- (cobalt) SGI MPI
-
- SunOS 5.8 32,46 Sun WorkShop 6 update 2 C 5.3
- (Solaris 2.8) Sun WorkShop 6 update 2 Fortran 95 6.2
- Sun WorkShop 6 update 2 C++ 5.3
-
- SunOS 5.10 cc: Sun C 5.8
- (linew) f90: Sun Fortran 95 8.2
- CC: Sun C++ 5.8
-
- Xeon Linux 2.4.21-32.0.1.ELsmp-perfctr-lustre
- (tungsten) gcc 3.2.2 20030222
- Intel(R) C++ Version 9.0
- Intel(R) Fortran Compiler Version 9.0
-
- IA-64 Linux 2.4.21.SuSE_292.til1 ia64
- (NCSA tg-login) gcc 3.2.2
- Intel(R) C++ Version 8.1
- Intel(R) Fortran Compiler Version 8.1
- mpich-gm-1.2.5..10-intel-r2
-
- Windows XP Visual Studio .NET
- Visual Studio 2005 w/ Intel Fortran 9.1
- Cygwin(native gcc compiler and g95)
- MinGW(native gcc compiler and g95)
-
- Windows XP x64 Visual Studio 2005 w/ Intel Fortran 9.1
-
- Windows Vista Visual Studio 2005
-
- MAC OS 10.4 (Intel) gcc i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1
- G95 (GCC 4.0.3 (g95 0.91!) Nov 21 2006)
-
- Alpha Open VMS 7.3 Compaq C V6.5-001-48BCD
- HP Fortran V7.6-3276
- Compaq C++ V6.5-004
-
-
-Supported Configuration Features Summary
-========================================
-
- In the tables below
- y = tested and supported
- n = not supported or not tested in this release
- x = not working in this release
- dna = does not apply
- ( ) = footnote appears below second table
- = testing incomplete on this feature or platform
-
-Platform C F90 F90 C++ zlib SZIP
- parallel parallel
-SunOS5.8 64-bit n y n y y y
-SunOS5.8 32-bit n y n y y y
-SunOS5.10 64-bit y(1) y n y y y
-SunOS5.10 32-bit y(1) y n y y y
-IRIX64_6.5 64-bit n y y y y y
-IRIX64_6.5 32-bit n n n n y y
-AIX-5.2 32-bit y y y y y y
-AIX-5.2 64-bit y y y y y y
-Windows XP n y(15) n(15) y y y
-Windows XP x64 n y(15) n(15) y y y
-Windows Vista n n n y y y
-Mac OS X 10.4 PowerPC n n
-Mac OS X 10.4 Intel n y n y y y
-FreeBSD 4.11 n n n y y y
-RedHat EL3 W (3) y(1a) y(10) y(1a) y y y
-RedHat EL3 W Intel (3) n y n y y n
-RedHat EL3 W PGI (3) n y n y y n
-SuSe x86_64 gcc (3,12) y(1a) y(11) n y y y
-SuSe x86_64 Int (3,12) n y(13) n y y n
-SuSe x86_64 PGI (3,12) n y(8) n y y y
-Linux 2.4 Xeon C
- Lustre Intel (3,6) n y n y y n
-Linux 2.6 SuSE ia64 C
- Intel (3,7) y y y y y n
-Linux 2.6 SGI Altix
- ia64 Intel (3) y y y y y y
-Alpha OpenVMS 7.3.2 n y n y n n
-
-
-
-Platform Shared Shared Shared static- Thread-
- C libs F90 libs C++ libs exec safe
-Solaris2.8 64-bit y y y x y
-Solaris2.8 32-bit y y y x y
-Solaris2.10 64-bit y x y
-Solaris2.10 32-bit y x y
-IRIX64_6.5 64-bit y y n y y
-IRIX64_6.5 32-bit y dna y y y
-AIX-5.2 & 5.3 32-bit n n n y n
-AIX-5.2 & 5.3 64-bit n n n y n
-Windows XP y y(15) y y y
-Windows XP x64 y y(15) y y y
-Windows Vista y n n y y
-Mac OS X 10.3 y y n
-FreeBSD 4.11 y n y y y
-RedHat EL3 W (3) y y(10) y y y
-RedHat EL3 W Intel (3) y y y y n
-RedHat EL3 W PGI (3) y y y y n
-SuSe x86_64 W GNU (3,12) y y y y y
-SuSe x86_64 W Int (3,12) y y y y(14) n
-SuSe x86_64 W PGI (3,12) y y y y(14) n
-Linux 2.4 Xeon C
- Lustre Intel (6) y y y y n
-Linux 2.4 SuSE
- ia64 C Intel (7) y y y y n
-Linux 2.4 SGI Altix
- ia64 Intel y y n
-Alpha OpenVMS 7.3.2 n n n y n
-
- Notes: (1) Using mpich 1.2.6.
- (1a) Using mpich2 1.0.6.
- (2) Using mpt and mpich 1.2.6.
- (3) Linux 2.6 with GNU, Intel, and PGI compilers, as indicated.
- W or C indicates workstation or cluster, respectively.
-
- (6) Linux 2.4.21-32.0.1. Xeon cluster with ELsmp_perfctr_lustre
- and Intel compilers
- (7) Linux 2.4.21, SuSE_292.till. Ia64 cluster with Intel
-compilers
- (8) pgf90
- (9) With Compaq Visual Fortran 6.6c compiler.
- (10) With PGI and Absoft compilers.
- (11) PGI and Intel compilers for both C and Fortran
- (12) AMD Opteron x86_64
- (13) ifort
- (14) Yes with C and Fortran, but not with C++
- (15) Using Visual Studio 2005 or Cygwin
- (16) Not tested for this release.
- Compiler versions for each platform are listed in the preceding
- "Platforms Tested" table.
-
-
-Known Problems
-==============
-* We have discovered two problems when running collective IO parallel HDF5
- tests with chunking storage on the ChaMPIon MPI compiler on tungsten, a
- Linux cluster at NCSA.
-
- Under some complex selection cases:
- 1) MPI_Get_element returns the wrong value.
- 2) MPI_Type_struct also generates the wrong derived datatype and corrupt
- data may be generated.
- These issues arise only when turning on collective IO with chunking storage
- with some complex selections. We have not found these problems on other
- MPI-IO compilers. If you encounter these problems, you may use independent
- IO instead.
-
- To avoid this behavior, change the following line in your code
- H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_COLLECTIVE);
-
- to
- H5Pset_dxpl_mpio(xfer_plist, H5FD_MPIO_INDEPENDENT);
-
- KY - 2007/08/24
-
-* For SNL, spirit/liberty/thunderbird: The serial tests pass but parallel
- tests failed with MPI-IO file locking message. AKC - 2007/6/25
-
-* On Intel 64 Linux cluster (RH 4, Linux 2.6.9) with Intel 10.0 compilers,
- use -mp -O1 compilation flags to build the libraries. A higher level of
- optimization causes failures in several HDF5 library tests.
-
-* For SNL, Red Storm: Only parallel HDF5 is supported. The serial tests pass
- when run against the parallel library; the parallel tests also pass, but
- with lots of non-fatal error messages.
-
-* For LLNL, uP: both serial and parallel tests pass.
- Zeus: Serial tests pass but parallel tests fail with a known problem in MPI.
- ubgl: Serial tests pass but parallel tests fail.
-
-* On SUN 5.10 C++, testing fails in the "Testing Shared Datatypes with
- Attributes" test.
-
-* Configuring with --enable-debug=all produces compiler errors on most
- platforms: Users who want to run HDF5 in debug mode should use
- --enable-debug rather than --enable-debug=all to enable debugging
- information on most modules.
-
-* On Mac OS 10.4, test/dt_arith.c has some errors in conversion from long
- double to (unsigned) long long and from (unsigned) long long to long double.
-
-* On Altix SGI with Intel 9.0, testmeta.c would not compile with -O3
- optimization flag.
-
-* On VAX, the Scaleoffset filter is not supported. The filter cannot be
- applied to HDF5 data generated on VAX. The Scaleoffset filter only supports
- the IEEE standard for floating-point data.
-
-* On Cray X1, a lone colon on the command line of h5dump --xml (as in
- the testh5dumpxml.sh script) is misinterpereted by the operating system
- and causes an error.
-
-* On mpich 1.2.5 and 1.2.6, if more than two processes contribute no IO and
- the application asks to do collective IO, we have found that when using 4
- processors, a simple collective write will sometimes be hung. This can be
- verified with t_mpi test under testpar.
-
-* On IRIX6.5, when the C compiler version is greater than 7.4, complicated
- MPI derived datatype code will work. However, the user should increase
- the value of the MPI_TYPE_MAX environment variable to some appropriate value
- to use collective irregular selection code. For example, the current
- parallel HDF5 test needs to raise MPI_TYPE_MAX to 200,000 to pass the test.
-
-* A dataset created or rewritten with a v1.6.3 library or after cannot be read
- with the v1.6.2 library or before when the Fletcher32 EDC filter is enabled.
- There was a bug in the calculating code of the Fletcher32 checksum in the
- library before v1.6.3; the checksum value was not consistent between big-
- endian and little-endian systems. This bug was fixed in Release 1.6.3.
- However, after fixing the bug, the checksum value was no longer the same as
- before on little-endian system. Library releases after 1.6.4 can still read
- datasets created or rewritten with an HDF5 library of v1.6.2 or before.
- SLU - 2005/6/30
-
-* For version 6 (6.02 and 6.04) of the Portland Group compiler on the AMD
- Opteron processor, there is a bug in the compiler for optimization(-O2).
- The library failed in several tests, all related to the MULTI driver.
- The problem has been reported to the vendor.
-
-* On IBM AIX systems, parallel HDF5 mode will fail some tests with error
- messages like "INFO: 0031-XXX ...". This is from the command `poe'.
- Set the environment variable MP_INFOLEVEL to 0 to minimize the messages
- and run the tests again.
-
- The tests may fail with messages like "The socket name is already in use",
- but HDF5 does not use sockets. This failure is due to problems with the
- poe command trying to set up the debug socket. To resolve this problem,
- check to see whether there are many old /tmp/s.pedb.* files staying around.
- These are sockets used by the poe command and left behind due to failed
- commands. First, ask your system administrator to clean them out.
- Lastly, request IBM to provide a means to run poe without the debug socket.
-
-* The --enable-static-exec configure flag fails to compile for Solaris
- platforms. This is due to the fact that not all of the system libraries on
- Solaris are available in a static format.
-
- The --enable-static-exec configure flag also fails to correctly compile
- on IBM SP2 platform for the serial mode. The parallel mode works fine with
- this option.
-
- It is suggested that you do not use this option on these platforms
- during configuration.
-
-* With the gcc 2.95.2 compiler, HDF5 uses the `-ansi' flag during
- compilation. The ANSI version of the compiler complains about not being
- able to handle the `long long' datatype with the warning:
-
- warning: ANSI C does not support `long long'
-
- This warning is innocuous and can be safely ignored.
-
-* The ./dsets tests fail on the TFLOPS machine if the test program,
- dsets.c, is compiled with the -O option. The HDF5 library still works
- correctly with the -O option. The test program works fine if it is
- compiled with -O1 or -O0. Only -O (same as -O2) causes the test
- program to fail.
-
-* Not all platforms behave correctly with Szip's shared libraries. Szip is
- disabled in these cases, and a message is relayed at configure time. Static
- libraries should be working on all systems that support Szip and should be
- used when shared libraries are unavailable.
-
- There is also a configure error on Altix machines that incorrectly reports
- when a version of Szip without an encoder is being used.
-
-* On some platforms that use Intel and Absoft compilers to build the HDF5
- Fortran library, compilation may fail for fortranlib_test.f90, fflush1.f90
- and fflush2.f90 complaining about the exit subroutine. Comment out the line
- IF (total_error .ne. 0) CALL exit (total_error).
-
-* Information about building with PGI and Intel compilers is available in
- the INSTALL file sections 4.7 and 4.8.
-
-* On at least one system, SDSC DataStar, the scheduler (in this case
- LoadLeveler) sends job status updates to standard error when you run
- any executable that was compiled with the parallel compilers.
-
- This causes problems when running "make check" on parallel builds, as
- many of the tool tests function by saving the output from test runs,
- and comparing it to an exemplar.
-
- The best solution is to reconfigure the target system so it no longer
- inserts the extra text. However, this may not be practical.
-
- In such cases, one solution is to "setenv HDF5_Make_Ignore yes" prior to
- the configure and build. This will cause "make check" to continue after
- detecting errors in the tool tests. However, in the case of SDSC DataStar,
- it also leaves you with some 150 "failed" tests to examine by hand.
-
- A second solution is to write a script to run serial tests and filter
- out the text added by the scheduler. A sample script used on SDSC
- DataStar is given below, but you will probably have to customize it
- for your installation.
-
- Observe that the basic idea is to insert the script as the first item
- on the command line which executes the the test. The script then
- executes the test and filters out the offending text before passing
- it on.
-
- #!/bin/csh
-
- set STDOUT_FILE=~/bin/serial_filter.stdout
- set STDERR_FILE=~/bin/serial_filter.stderr
-
- rm -f $STDOUT_FILE $STDERR_FILE
-
- ($* > $STDOUT_FILE) >& $STDERR_FILE
-
- set RETURN_VALUE=$status
-
- cat $STDOUT_FILE
-
- tail +3 $STDERR_FILE
-
- exit $RETURN_VALUE
-
- You get the HDF5 make files and test scripts to execute your filter script
- by setting the environment variable "RUNSERIAL" to the full path of the
- script prior to running configure for parallel builds. Remember to
- "unsetenv RUNSERIAL" before running configure for a serial build.
-
- Note that the RUNSERIAL environment variable exists so that we can
- can prefix serial runs as necessary on the target system. On DataStar,
- no prefix is necessary. However on an MPICH system, the prefix might
- have to be set to something like "/usr/local/mpi/bin/mpirun -np 1" to
- get the serial tests to run at all.
-
- In such cases, you will have to include the regular prefix in your
- filter script.
-
-* H5Ocopy() does not copy reg_ref attributes correctly when shared-message
- is turn on. The value of the reference in the destination attriubte is
- wrong. This H5Ocopy problem will affect the h5copy tool.
-
diff --git a/release_docs/NEWSLETTER.txt b/release_docs/NEWSLETTER.txt
new file mode 100644
index 0000000..f03f710
--- /dev/null
+++ b/release_docs/NEWSLETTER.txt
@@ -0,0 +1,25 @@
+INTRODUCTION
+============
+
+This purpose of this document is to contain entries that can be used to quickly
+produce a release newsletter. When something is added to the library that is
+"newsletter worthy" (i.e., new feature, CVE fix, etc.) a summary note should
+be added here.
+
+The format should look like this:
+
+* SUMMARY OF NEWSLETTER-WORTHY THING
+
+ Here is where you describe the summary. Summarize the feature, fix, or
+ change in general language. Remember, RELEASE.txt is for communicating
+ technical specifics. Text entered here is more like advertising.
+
+ (GitHub #123, #125)
+
+The GitHub #s could be relevant issues or PRs. They will probably not appear
+in the final newsletter, but are so that the person writing the newsletter
+has easy access to context if they have questions.
+
+Every entry in RELEASE.txt does NOT require an entry here. The newsletter is
+for communicating major changes that are of interest to anyone. Minor bugfixes,
+memory leak fixes, etc. do not require entries.
diff --git a/release_docs/README.md b/release_docs/README.md
new file mode 100644
index 0000000..1532f1a
--- /dev/null
+++ b/release_docs/README.md
@@ -0,0 +1,102 @@
+# The `release_docs` directory
+
+## Intro
+
+This directory contains instructions for building and using the library as
+well as the HDF5 history files.
+
+## HISTORY files
+
+The `HISTORY` files contain the history of this branch of HDF5. They fall into
+three categories.
+
+### HISTORY-\[VERSION 1\]-\[VERSION 2\].txt
+
+These files are created when we release a new major version and include all
+the changes that were made to the `develop` branch while creating a major release.
+
+### HISTORY-\[VERSION\].txt
+
+This file contains the changes that were made to a maintenance branch since
+it split off from `develop`. It will also be found in the `develop` branch
+when experimental releases have been created.
+
+### RELEASE.txt
+
+This is the changelog for the current version of the library.
+
+For a MAJOR release (or in `develop`) this files lists all the changes since the
+last major version. For a MINOR release (or in a maintenance branch), this file
+lists all the changes since the last release in the maintenance branch.
+
+Examples:
+
+* The file for HDF5 1.14.0 includes all the changes since HDF5 1.12.0
+* The file for HDF5 1.10.9 includes all the changes since HDF5 1.10.8
+* The file in `develop` includes all the changes since the last major release
+* The file in `hdf5_1_14` includes all the changes since the last minor HDF5 1.14 release
+
+Note that we make no effort to bring maintenance branch `HISTORY` files back to
+develop. If you want to compare, say, 1.10.4 with 1.12.3, you'd have to get
+the history files from those releases and compare them by hand.
+
+## Creating new releases
+
+### MAJOR release
+
+* If there were experimental releases, merge the experimental `HISTORY` file
+ and the current `RELEASE.txt` by category to create a separate, unified
+ file that ignores the experimental releases. Don't check this in yet or
+ clobber any existing `HISTORY`/`RELEASE` files, but put it someplace handy for
+ use in later steps.
+
+* Create the new maintenance branch
+
+In develop:
+* Create the new `HISTORY-\[VERSION 1\]-\[VERSION 2\].txt` file
+ * If there is an experimental `HISTORY` file, add `RELEASE.txt` to the beginning of it and use that
+ * Otherwise, start with `RELEASE.txt`
+ * Add the introduction boilerplate like in the other `HISTORY` files (TOC, etc.)
+* Delete any experimental `HISTORY` file
+* Clear out `RELEASE.txt`
+
+Note that we're KEEPING any experimental release history information in the
+`HISTORY-\[VERSION 1\]-\[VERSION 2\].txt` file, so do NOT use the merged file in
+the above steps!
+
+In the new maintenance branch:
+* Create the new `HISTORY-\[VERSION\].txt` file
+ * If there is an experimental `HISTORY` file use the combined file you created earlier
+ * Otherwise, start with `RELEASE.txt`
+ * Add the introduction boilerplate like in the other `HISTORY` files (TOC, etc.)
+* Delete any experimental `HISTORY` file
+* Clear out `RELEASE.txt`
+
+* Create the new release branch
+
+In the new release branch:
+* If there were experimental releases, use the combined file you created earlier as `RELEASE.txt`
+* Otherwise the `RELEASE.txt` will be used as-is
+
+### MINOR release
+
+* Create the release branch
+
+In the maintenance branch:
+* Add the contents of `RELEASE.txt` to the beginnnig of `HISTORY-\[VERSION\].txt`
+* Clear out `RELEASE.txt`
+
+### EXPERIMENTAL release
+
+* Add the contents of `RELEASE.txt` to the beginnnig of `HISTORY-\[VERSION\].txt`
+* Clear out `RELEASE.txt`
+
+## INSTALL files
+
+These files include instructions for building and installing HDF5 on various
+platforms.
+
+## USING files
+
+These files document how to build HDF5 applications with an installed HDF5
+library.
diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt
index 2cef92d..052428a 100644
--- a/release_docs/RELEASE.txt
+++ b/release_docs/RELEASE.txt
@@ -21,7 +21,7 @@ The official HDF5 releases can be obtained from:
https://www.hdfgroup.org/downloads/hdf5/
-Changes from Release to Release and New Features in the HDF5-1.13.x release series
+Changes from release to release and new features in the HDF5-1.14.x release series
can be found at:
https://portal.hdfgroup.org/display/HDF5/Release+Specific+Information
@@ -36,7 +36,7 @@ CONTENTS
- New Features
- Support for new platforms and languages
-- Bug Fixes since HDF5-1.13.3
+- Bug Fixes since HDF5-1.14.0
- Platforms Tested
- Known Problems
- CMake vs. Autotools installations
@@ -47,108 +47,13 @@ New Features
Configuration:
-------------
- - Removal of MPE support
-
- The ability to build with MPE instrumentation has been removed along with
- the following configure options:
-
- Autotools:
- --with-mpe=
-
- CMake has never supported building with MPE support.
-
- (DER - 2022/11/08)
-
- - Removal of dmalloc support
-
- The ability to build with dmalloc support has been removed along with
- the following configure options:
-
- Autotools:
- --with-dmalloc=
-
- CMake:
- HDF5_ENABLE_USING_DMALLOC
-
- (DER - 2022/11/08)
-
- - Removal of memory allocation sanity checks configure options
-
- With the removal of the memory allocation sanity checks feature, the
- following configure options are no longer necessary and have been
- removed:
-
- Autotools:
- --enable-memory-alloc-sanity-check
-
- CMake:
- HDF5_MEMORY_ALLOC_SANITY_CHECK
- HDF5_ENABLE_MEMORY_STATS
+ -
- (DER - 2022/11/03)
Library:
--------
- - Overhauled the Virtual Object Layer (VOL)
-
- The virtual object layer (VOL) was added in HDF5 1.12.0 but the initial
- implementation required API-breaking changes to better support optional
- operations and pass-through VOL connectors. The original VOL API is
- now considered deprecated and VOL users and connector authors should
- target the 1.14 VOL API.
-
- The specific changes are too extensive to document in a release note, so
- VOL users and connector authors should consult the updated VOL connector
- author's guide and the 1.12-1.14 VOL migration guide.
-
- (DER - 2022/12/28)
-
- - H5VLquery_optional() signature change
-
- The last parameter of this API call has changed from a pointer to hbool_t
- to a pointer to uint64_t. Due to the changes in how optional operations
- are handled in the 1.14 VOL API, we cannot make the old API call work
- with the new scheme, so there is no API compatibility macro for it.
-
- (DER - 2022/12/28)
-
- - H5I_free_t callback signature change
-
- In order to support asynchronous operations and future IDs, the signature
- of the H5I_free_t callback has been modified to take a second 'request'
- parameter. Due to the nature of the internal library changes, no API
- compatibility macro is available for this change.
-
- (DER - 2022/12/28)
-
- - Fix for CVE-2019-8396
-
- Malformed HDF5 files may have truncated content which does not match
- the expected size. When H5O__pline_decode() attempts to decode these it
- may read past the end of the allocated space leading to heap overflows
- as bounds checking is incomplete.
-
- The fix ensures each element is within bounds before reading.
-
- (2022/11/09 - HDFFV-10712, CVE-2019-8396, GitHub #2209)
-
- - Removal of memory allocation sanity checks feature
-
- This feature added heap canaries and statistics tracking for internal
- library memory operations. Unfortunately, the heap canaries caused
- problems when library memory operations were mixed with standard C
- library memory operations (such as in the filter pipeline, where
- buffers may have to be reallocated). Since any platform with a C
- compiler also usually has much more sophisticated memory sanity
- checking tools than the HDF5 library provided (e.g., valgrind), we
- have decided to to remove the feature entirely.
-
- In addition to the configure changes described above, this also removes
- the following from the public API:
- H5get_alloc_stats()
- H5_alloc_stats_t
+ -
- (DER - 2022/11/03)
Parallel Library:
-----------------
@@ -198,132 +103,13 @@ New Features
Support for new platforms, languages and compilers
==================================================
-
-
-Bug Fixes since HDF5-1.13.3 release
+
+
+Bug Fixes since HDF5-1.14.0 release
===================================
Library
-------
- - Seg fault on file close
-
- h5debug fails at file close with core dump on a file that has an
- illegal file size in its cache image. In H5F_dest(), the library
- performs all the closing operations for the file and keeps track of
- the error encountered when reading the file cache image.
- At the end of the routine, it frees the file's file structure and
- returns error. Due to the error return, the file object is not removed
- from the ID node table. This eventually causes assertion failure in
- H5VL__native_file_close() when the library finally exits and tries to
- access that file object in the table for closing.
-
- The closing routine, H5F_dest(), will not free the file structure if
- there is error, keeping a valid file structure in the ID node table.
- It will be freed later in H5VL__native_file_close() when the
- library exits and terminates the file package.
-
- (VC - 2022/12/14, HDFFV-11052, CVE-2020-10812)
-
- - Fix CVE-2018-13867 / GHSA-j8jr-chrh-qfrf
-
- Validate location (offset) of the accumulated metadata when comparing.
-
- Initially, the accumulated metadata location is initialized to HADDR_UNDEF
- - the highest available address. Bogus input files may provide a location
- or size matching this value. Comparing this address against such bogus
- values may provide false positives. Thus make sure, the value has been
- initialized or fail the comparison early and let other parts of the
- code deal with the bogus address/size.
- Note: To avoid unnecessary checks, it is assumed that if the 'dirty'
- member in the same structure is true the location is valid.
-
- (EFE - 2022/10/10 GH-2230)
-
- - Fix CVE-2018-16438 / GHSA-9xmm-cpf8-rgmx
-
- Make sure info block for external links has at least 3 bytes.
-
- According to the specification, the information block for external links
- contains 1 byte of version/flag information and two 0 terminated strings
- for the object linked to and the full path.
- Although not very useful, the minimum string length for each (with
- terminating 0) would be one byte.
- Checking this helps to avoid SEGVs triggered by bogus files.
-
- (EFE - 2022/10/09 GH-2233)
-
- - CVE-2021-46244 / GHSA-vrxh-5gxg-rmhm
-
- Compound datatypes may not have members of size 0
-
- A member size of 0 may lead to an FPE later on as reported in
- CVE-2021-46244. To avoid this, check for this as soon as the
- member is decoded.
-
- (EFE - 2022/10/05 GEH-2242)
-
-
- - Fix CVE-2021-45830 / GHSA-5h2h-fjjr-x9m2
-
- Make H5O__fsinfo_decode() more resilient to out-of-bound reads.
-
- When decoding a file space info message in H5O__fsinfo_decode() make
- sure each element to be decoded is still within the message. Malformed
- hdf5 files may have trunkated content which does not match the
- expected size. Checking this will prevent attempting to decode
- unrelated data and heap overflows. So far, only free space manager
- address data was checked before decoding.
-
- (EFE - 2022/10/05 GH-2228)
-
- - Fix CVE-2021-46242 / GHSA-x9pw-hh7v-wjpf
-
- When evicting driver info block, NULL the corresponding entry.
-
- Since H5C_expunge_entry() called (from H5AC_expunge_entry()) sets the flag
- H5C__FLUSH_INVALIDATE_FLAG, the driver info block will be freed. NULLing
- the pointer in f->shared->drvinfo will prevent use-after-free when it is
- used in other functions (like H5F__dest()) - as other places will check
- whether the pointer is initialized before using its value.
-
- (EFE - 2022/09/29 GH-2254)
-
- - Fix CVE-2021-45833 / GHSA-x57p-jwp6-4v79
-
- Report error if dimensions of chunked storage in data layout < 2
-
- For Data Layout Messages version 1 & 2 the specification state
- that the value stored in the data field is 1 greater than the
- number of dimensions in the dataspace. For version 3 this is
- not explicitly stated but the implementation suggests it to be
- the case.
- Thus the set value needs to be at least 2. For dimensionality
- < 2 an out-of-bounds access occurs.
-
- (EFE - 2022/09/28 GH-2240)
-
- - Fix CVE-2018-14031 / GHSA-2xc7-724c-r36j
-
- Parent of enum datatype message must have the same size as the
- enum datatype message itself.
- Functions accessing the enumeration values use the size of the
- enumeration datatype to determine the size of each element and
- how much data to copy.
- Thus the size of the enumeration and its parent need to match.
- Check in H5O_dtype_decode_helper() to avoid unpleasant surprises
- later.
-
- (EFE - 2022/09/28 GH-2236)
-
- - Fix CVE-2018-17439 / GHSA-vcxv-vp43-rch7
-
- H5IMget_image_info(): Make sure to not exceed local array size
-
- Malformed hdf5 files may provide more dimensions than the array dim[] in
- H5IMget_image_info() is able to hold. Check number of elements first by calling
- H5Sget_simple_extent_dims() with NULL for both 'dims' and 'maxdims' arguments.
- This will cause the function to return only the number of dimensions.
- The fix addresses a stack overflow on write.
-
- (EFE - 2022/09/27 HDFFV-10589, GH-2226)
+ -
Java Library
@@ -333,49 +119,12 @@ Bug Fixes since HDF5-1.13.3 release
Configuration
-------------
- - Remove Javadoc generation
-
- The use of doxygen now supersedes the requirement to build javadocs. We do not
- have the resources to continue to support two documentation methods and have
- chosen doxygen as our standard.
-
- (ADB - 2022/12/19)
-
- - Change the default for building the high-level tools
-
- The gif2hdf5 and hdf2gif high-level tools are deprecated and will be removed
- in a future release. The default build setting for them have been changed from enabled
- to disabled. A user can enable the build of these tools if needed.
- autotools: --enable-hlgiftools
- cmake: HDF5_BUILD_HL_GIF_TOOLS=ON
-
- (ADB - 2022/12/16)
-
- - Change the settings of the *pc files to use the correct format
-
- The pkg-config files generated by CMake uses incorrect syntax for the 'Requires'
- settings. Changing the set to use 'lib-name = version' instead 'lib-name-version'
- fixes the issue
-
- (ADB - 2022/12/06 HDFFV-11355)
-
- - Move MPI libraries link from PRIVATE to PUBLIC
-
- The install dependencies were not including the need for MPI libraries when
- an application or library was built with the C library. Also updated the
- CMake target link command to use the newer style MPI::MPI_C link variable.
-
- (ADB - 2022/10/27)
+ -
Tools
-----
- - Fix h5repack to only print output when verbose option is selected
-
- When timing option was added to h5repack, the check for verbose was
- incorrectly implemented.
-
- (ADB - 2022/12/02, GH #2270)
+ -
Performance
@@ -387,6 +136,7 @@ Bug Fixes since HDF5-1.13.3 release
-----------
-
+
High-Level Library
------------------
-
--
cgit v0.12