summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2009-02-03 12:11:07 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2009-02-03 12:11:07 (GMT)
commit5436f45bd11f2867b3c9e93b976df427a0ffb10e (patch)
tree96b05a07633ee3907ef02e2390663be4adc15f2a
parentcde7807ceb3cd66bf60d9b6d87570f4f8422cbce (diff)
downloadhdf5-5436f45bd11f2867b3c9e93b976df427a0ffb10e.zip
hdf5-5436f45bd11f2867b3c9e93b976df427a0ffb10e.tar.gz
hdf5-5436f45bd11f2867b3c9e93b976df427a0ffb10e.tar.bz2
[svn-r16403] Description:
Bring r16395:16402 back from trunk (and adjust slightly for layout version changes). Tested on: FreeBSD/32 6.3 (duty) (h5committest not required on this branch)
-rw-r--r--MANIFEST1
-rw-r--r--README.txt2
-rw-r--r--config/lt_vers.am2
-rwxr-xr-xconfigure22
-rw-r--r--configure.in2
-rw-r--r--release_docs/RELEASE.txt2
-rw-r--r--src/H5Dchunk.c5
-rw-r--r--src/H5Gobj.c3
-rw-r--r--src/H5Goh.c37
-rw-r--r--src/H5Olayout.c3
-rw-r--r--src/H5public.h4
-rw-r--r--src/Makefile.in2
-rw-r--r--test/Makefile.in4
-rwxr-xr-xtools/h5repack/h5repack.sh.in5
-rw-r--r--tools/h5repack/testfiles/h5repack_layouto.h5bin0 -> 1576 bytes
-rw-r--r--vms/src/h5pubconf.h6
-rwxr-xr-xwindows/src/H5pubconf.h6
17 files changed, 55 insertions, 51 deletions
diff --git a/MANIFEST b/MANIFEST
index b523b18..1d4c795 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -1501,6 +1501,7 @@
./tools/h5repack/testfiles/h5repack_attr.h5
./tools/h5repack/testfiles/h5repack_hlink.h5
./tools/h5repack/testfiles/h5repack_layout.h5
+./tools/h5repack/testfiles/h5repack_layouto.h5
./tools/h5repack/testfiles/h5repack_early.h5
./tools/h5repack/testfiles/h5repack_szip.h5
./tools/h5repack/testfiles/h5repack_deflate.h5
diff --git a/README.txt b/README.txt
index 2d9aef6..fe64891 100644
--- a/README.txt
+++ b/README.txt
@@ -1,4 +1,4 @@
-HDF5 version 1.9.29 currently under development
+HDF5 version 1.9.30 currently under development
==> README.txt <==
Messages to be sent to the list should be sent to "<list>@hdfgroup.org".
diff --git a/config/lt_vers.am b/config/lt_vers.am
index 64bacbe..2821e1f 100644
--- a/config/lt_vers.am
+++ b/config/lt_vers.am
@@ -17,7 +17,7 @@
# Add libtool shared library version numbers to the HDF5 library
# See libtool versioning documentation online.
LT_VERS_INTERFACE = 6
-LT_VERS_REVISION = 19
+LT_VERS_REVISION = 20
LT_VERS_AGE = 0
## If the API changes *at all*, increment LT_VERS_INTERFACE and
diff --git a/configure b/configure
index 8701756..3407690 100755
--- a/configure
+++ b/configure
@@ -1,7 +1,7 @@
#! /bin/sh
-# From configure.in Id: configure.in 16329 2009-01-18 11:04:40Z hdftest .
+# From configure.in Id: configure.in 16344 2009-01-25 12:22:44Z hdftest .
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for HDF5 1.9.29.
+# Generated by GNU Autoconf 2.61 for HDF5 1.9.30.
#
# Report bugs to <help@hdfgroup.org>.
#
@@ -724,8 +724,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='HDF5'
PACKAGE_TARNAME='hdf5'
-PACKAGE_VERSION='1.9.29'
-PACKAGE_STRING='HDF5 1.9.29'
+PACKAGE_VERSION='1.9.30'
+PACKAGE_STRING='HDF5 1.9.30'
PACKAGE_BUGREPORT='help@hdfgroup.org'
ac_unique_file="src/H5.c"
@@ -1501,7 +1501,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures HDF5 1.9.29 to adapt to many kinds of systems.
+\`configure' configures HDF5 1.9.30 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1571,7 +1571,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of HDF5 1.9.29:";;
+ short | recursive ) echo "Configuration of HDF5 1.9.30:";;
esac
cat <<\_ACEOF
@@ -1753,7 +1753,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-HDF5 configure 1.9.29
+HDF5 configure 1.9.30
generated by GNU Autoconf 2.61
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1767,7 +1767,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by HDF5 $as_me 1.9.29, which was
+It was created by HDF5 $as_me 1.9.30, which was
generated by GNU Autoconf 2.61. Invocation command line was
$ $0 $@
@@ -2462,7 +2462,7 @@ fi
# Define the identity of the package.
PACKAGE='hdf5'
- VERSION='1.9.29'
+ VERSION='1.9.30'
cat >>confdefs.h <<_ACEOF
@@ -51948,7 +51948,7 @@ exec 6>&1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by HDF5 $as_me 1.9.29, which was
+This file was extended by HDF5 $as_me 1.9.30, which was
generated by GNU Autoconf 2.61. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -52001,7 +52001,7 @@ Report bugs to <bug-autoconf@gnu.org>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-HDF5 config.status 1.9.29
+HDF5 config.status 1.9.30
configured by $0, generated by GNU Autoconf 2.61,
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/configure.in b/configure.in
index 05cd52d..4fc9bd0 100644
--- a/configure.in
+++ b/configure.in
@@ -26,7 +26,7 @@ dnl
dnl NOTE: Don't forget to change the version number here when we do a
dnl release!!!
dnl
-AC_INIT([HDF5], [1.9.29], [help@hdfgroup.org])
+AC_INIT([HDF5], [1.9.30], [help@hdfgroup.org])
AC_CONFIG_SRCDIR([src/H5.c])
AM_CONFIG_HEADER([src/H5config.h])
diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt
index 7ca6ecf..d544e87 100644
--- a/release_docs/RELEASE.txt
+++ b/release_docs/RELEASE.txt
@@ -1,4 +1,4 @@
-HDF5 version 1.9.29 currently under development
+HDF5 version 1.9.30 currently under development
================================================================================
diff --git a/src/H5Dchunk.c b/src/H5Dchunk.c
index 1437d58..9e04e7f 100644
--- a/src/H5Dchunk.c
+++ b/src/H5Dchunk.c
@@ -2582,11 +2582,6 @@ H5D_chunk_lock(const H5D_io_info_t *io_info, H5D_chunk_ud_t *udata,
else {
H5D_fill_value_t fill_status;
-#ifdef OLD_WAY
- /* Clear the error stack from not finding the chunk on disk */
- H5E_clear_stack(NULL);
-#endif /* OLD_WAY */
-
/* Chunk size on disk isn't [likely] the same size as the final chunk
* size in memory, so allocate memory big enough. */
if(NULL == (chunk = H5D_chunk_alloc(chunk_size, pline)))
diff --git a/src/H5Gobj.c b/src/H5Gobj.c
index e0d5434..a6b2d7f 100644
--- a/src/H5Gobj.c
+++ b/src/H5Gobj.c
@@ -1066,9 +1066,6 @@ H5G_obj_remove_by_idx(H5O_loc_t *grp_oloc, H5RS_str_t *grp_full_path_r,
} /* end else */
} /* end if */
else {
- /* Clear error stack from not finding the link info message */
- H5E_clear_stack(NULL);
-
/* Can only perform name lookups on groups with symbol tables */
if(idx_type != H5_INDEX_NAME)
HGOTO_ERROR(H5E_SYM, H5E_BADVALUE, FAIL, "no creation order index to query")
diff --git a/src/H5Goh.c b/src/H5Goh.c
index 2dab8aa..aa0fbe6 100644
--- a/src/H5Goh.c
+++ b/src/H5Goh.c
@@ -260,9 +260,9 @@ done:
herr_t
H5O_group_bh_info(H5F_t *f, hid_t dxpl_id, H5O_t *oh, H5_ih_info_t *bh_info)
{
- H5O_linfo_t linfo; /* Link info message */
- H5HF_t *fheap = NULL; /* Fractal heap handle */
- herr_t ret_value = SUCCEED; /* Return value */
+ htri_t exists; /* Flag if header message of interest exists */
+ H5HF_t *fheap = NULL; /* Fractal heap handle */
+ herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_NOAPI(H5O_group_bh_info, FAIL)
@@ -272,21 +272,15 @@ H5O_group_bh_info(H5F_t *f, hid_t dxpl_id, H5O_t *oh, H5_ih_info_t *bh_info)
HDassert(bh_info);
/* Check for "new style" group info */
- if(NULL == H5O_msg_read_oh(f, dxpl_id, oh, H5O_LINFO_ID, &linfo)) {
- H5O_stab_t stab; /* Info about symbol table */
-
- /* Must be "old style" group, clear error stack */
- H5E_clear_stack(NULL);
+ if((exists = H5O_msg_exists_oh(oh, H5O_LINFO_ID)) < 0)
+ HGOTO_ERROR(H5E_SYM, H5E_CANTINIT, FAIL, "unable to read object header")
+ if(exists > 0) {
+ H5O_linfo_t linfo; /* Link info message */
- /* Get symbol table message */
- if(NULL == H5O_msg_read_oh(f, dxpl_id, oh, H5O_STAB_ID, &stab))
- HGOTO_ERROR(H5E_SYM, H5E_CANTGET, FAIL, "can't find LINFO nor STAB messages")
+ /* Get "new style" group info */
+ if(NULL == H5O_msg_read_oh(f, dxpl_id, oh, H5O_LINFO_ID, &linfo))
+ HGOTO_ERROR(H5E_SYM, H5E_CANTGET, FAIL, "can't read LINFO message")
- /* Get symbol table size info */
- if(H5G_stab_bh_size(f, dxpl_id, &stab, bh_info) < 0)
- HGOTO_ERROR(H5E_SYM, H5E_CANTGET, FAIL, "can't retrieve symbol table size info")
- } /* end if */
- else { /* LINFO */
/* Get creation order B-tree size, if available */
if(H5F_addr_defined(linfo.corder_bt2_addr))
if(H5B2_iterate_size(f, dxpl_id, H5G_BT2_CORDER, linfo.corder_bt2_addr, &bh_info->index_size) < 0)
@@ -312,6 +306,17 @@ H5O_group_bh_info(H5F_t *f, hid_t dxpl_id, H5O_t *oh, H5_ih_info_t *bh_info)
HGOTO_ERROR(H5E_HEAP, H5E_CLOSEERROR, FAIL, "can't close fractal heap")
fheap = NULL;
} /* end if */
+ } /* end if */
+ else {
+ H5O_stab_t stab; /* Info about symbol table */
+
+ /* Must be "old style" group, get symbol table message */
+ if(NULL == H5O_msg_read_oh(f, dxpl_id, oh, H5O_STAB_ID, &stab))
+ HGOTO_ERROR(H5E_SYM, H5E_CANTGET, FAIL, "can't find LINFO nor STAB messages")
+
+ /* Get symbol table size info */
+ if(H5G_stab_bh_size(f, dxpl_id, &stab, bh_info) < 0)
+ HGOTO_ERROR(H5E_SYM, H5E_CANTGET, FAIL, "can't retrieve symbol table size info")
} /* end else */
done:
diff --git a/src/H5Olayout.c b/src/H5Olayout.c
index f2bfab0..9ca6ba6 100644
--- a/src/H5Olayout.c
+++ b/src/H5Olayout.c
@@ -343,7 +343,8 @@ H5O_layout_encode(H5F_t *f, hbool_t UNUSED disable_shared, uint8_t *p, const voi
HDassert(p);
/* Message version */
- *p++ = (uint8_t)mesg->version;
+ *p++ = (uint8_t)((mesg->version < H5O_LAYOUT_VERSION_3) ?
+ H5O_LAYOUT_VERSION_3 : mesg->version);
/* Layout class */
*p++ = mesg->type;
diff --git a/src/H5public.h b/src/H5public.h
index c1a8449..db2d407 100644
--- a/src/H5public.h
+++ b/src/H5public.h
@@ -71,10 +71,10 @@ extern "C" {
/* Version numbers */
#define H5_VERS_MAJOR 1 /* For major interface/format changes */
#define H5_VERS_MINOR 9 /* For minor interface/format changes */
-#define H5_VERS_RELEASE 29 /* For tweaks, bug-fixes, or development */
+#define H5_VERS_RELEASE 30 /* For tweaks, bug-fixes, or development */
#define H5_VERS_SUBRELEASE "" /* For pre-releases like snap0 */
/* Empty string for real releases. */
-#define H5_VERS_INFO "HDF5 library version: 1.9.29" /* Full version string */
+#define H5_VERS_INFO "HDF5 library version: 1.9.30" /* Full version string */
#define H5check() H5check_version(H5_VERS_MAJOR,H5_VERS_MINOR, \
H5_VERS_RELEASE)
diff --git a/src/Makefile.in b/src/Makefile.in
index 6638703..96b1f3a 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -408,7 +408,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog
# Add libtool shared library version numbers to the HDF5 library
# See libtool versioning documentation online.
LT_VERS_INTERFACE = 6
-LT_VERS_REVISION = 19
+LT_VERS_REVISION = 20
LT_VERS_AGE = 0
H5detect_CFLAGS = -g
diff --git a/test/Makefile.in b/test/Makefile.in
index d2e9484..45f3aa7 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -639,8 +639,8 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog cmpd_dset.h5 \
unlink.h5 unicode.h5 coord.h5 fillval_[0-9].h5 fillval.raw \
mount_[0-9].h5 testmeta.h5 ttime.h5 trefer[1-3].h5 tvltypes.h5 \
tvlstr.h5 tvlstr2.h5 flush.h5 enum1.h5 titerate.h5 ttsafe.h5 \
- tarray1.h5 tgenprop.h5 tmisc[0-9]*.h5 set_extent_read.h5 \
- set_extent_create.h5 getname.h5 getname[1-3].h5 sec2_file.h5 \
+ tarray1.h5 tgenprop.h5 tmisc[0-9]*.h5 set_extent[1-5].h5 \
+ ext[12].bin getname.h5 getname[1-3].h5 sec2_file.h5 \
direct_file.h5 family_file000[0-3][0-9].h5 multi_file-[rs].h5 \
core_file new_move_[ab].h5 ntypes.h5 dangle.h5 error_test.h5 \
err_compat.h5 dtransform.h5 test_filters.h5 get_file_name.h5 \
diff --git a/tools/h5repack/h5repack.sh.in b/tools/h5repack/h5repack.sh.in
index 422c8dd..ba3bdfe 100755
--- a/tools/h5repack/h5repack.sh.in
+++ b/tools/h5repack/h5repack.sh.in
@@ -51,6 +51,8 @@ FILE10=h5repack_fletcher.h5
FILE11=h5repack_filters.h5
FILE12=h5repack_nbit.h5
FILE13=h5repack_soffset.h5
+FILE14=h5repack_layouto.h5 # A file with an older version of the layout message
+ # (copy of test/tlayouto.h5)
nerrors=0
@@ -498,6 +500,9 @@ TOOLTEST $arg
arg="$FILE1 -t 1 -a 1 "
TOOLTEST $arg
+# Check repacking file with old version of layout message (should get upgraded
+# to new version and be readable, etc.)
+TOOLTEST $FILE14
if test $nerrors -eq 0 ; then
echo "All $H5REPACK tests passed."
diff --git a/tools/h5repack/testfiles/h5repack_layouto.h5 b/tools/h5repack/testfiles/h5repack_layouto.h5
new file mode 100644
index 0000000..a038e68
--- /dev/null
+++ b/tools/h5repack/testfiles/h5repack_layouto.h5
Binary files differ
diff --git a/vms/src/h5pubconf.h b/vms/src/h5pubconf.h
index 3991ad3..4ab1766 100644
--- a/vms/src/h5pubconf.h
+++ b/vms/src/h5pubconf.h
@@ -480,13 +480,13 @@
#define H5_PACKAGE_NAME "HDF5"
/* Define to the full name and version of this package. */
-#define H5_PACKAGE_STRING "HDF5 1.9.29"
+#define H5_PACKAGE_STRING "HDF5 1.9.30"
/* Define to the one symbol short name of this package. */
#define H5_PACKAGE_TARNAME "hdf5"
/* Define to the version of this package. */
-#define H5_PACKAGE_VERSION "1.9.29"
+#define H5_PACKAGE_VERSION "1.9.30"
/* Width for printf() for type `long long' or `__int64', use `ll' */
#define H5_PRINTF_LL_WIDTH "ll"
@@ -639,7 +639,7 @@
/* #undef H5_USING_MEMCHECKER */
/* Version number of package */
-#define H5_VERSION "1.9.29"
+#define H5_VERSION "1.9.30"
/* Define if vsnprintf() returns the correct value for formatted strings that
don't fit into size allowed */
diff --git a/windows/src/H5pubconf.h b/windows/src/H5pubconf.h
index 3f36974..5c6e550 100755
--- a/windows/src/H5pubconf.h
+++ b/windows/src/H5pubconf.h
@@ -475,13 +475,13 @@
#define H5_PACKAGE_NAME "HDF5"
/* Define to the full name and version of this package. */
-#define H5_PACKAGE_STRING "HDF5 1.9.29"
+#define H5_PACKAGE_STRING "HDF5 1.9.30"
/* Define to the one symbol short name of this package. */
#define H5_PACKAGE_TARNAME "hdf5"
/* Define to the version of this package. */
-#define H5_PACKAGE_VERSION "1.9.29"
+#define H5_PACKAGE_VERSION "1.9.30"
/* Width for printf() for type `long long' or `__int64', use `ll' */
#define H5_PRINTF_LL_WIDTH "I64"
@@ -638,7 +638,7 @@
/* #undef H5_USING_MEMCHECKER */
/* Version number of package */
-#define H5_VERSION "1.9.29"
+#define H5_VERSION "1.9.30"
/* Define if vsnprintf() returns the correct value for formatted strings that
don't fit into size allowed */