summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--release_docs/RELEASE.txt20
-rw-r--r--tools/lib/h5diff_attr.c21
-rw-r--r--tools/test/h5diff/h5diffgentest.c2
-rw-r--r--tools/test/h5diff/testfiles/h5diff_58.txt2
-rw-r--r--tools/test/h5diff/testfiles/h5diff_80.txt2
-rw-r--r--tools/test/h5diff/testfiles/h5diff_dset1.h5bin23624 -> 23416 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_dset2.h5bin23624 -> 23416 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_dset3.h5bin23416 -> 23416 bytes
8 files changed, 31 insertions, 16 deletions
diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt
index c670066..8fb56cc 100644
--- a/release_docs/RELEASE.txt
+++ b/release_docs/RELEASE.txt
@@ -74,15 +74,15 @@ New Features
Tools:
------
- -
+ -
High-Level APIs:
---------------
- -
+ -
C Packet Table API
------------------
- -
+ -
Internal header file
--------------------
@@ -105,7 +105,7 @@ Bug Fixes since HDF5-1.10.1 release
Configuration
-------------
- -
+ -
Performance
-------------
@@ -117,7 +117,9 @@ Bug Fixes since HDF5-1.10.1 release
Tools
-----
- -
+ - Improved h5diff compare of strings and arrays.
+
+ (ADB, 2017/05/18, HDFFV-9055, HDFFV-10128)
High-Level APIs:
------
@@ -302,16 +304,16 @@ The following platforms are not supported but have been tested for this release.
(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
+ gcc, g++ (GCC) 6.1.1 20160621
(Red Hat 6.1.1-3)
- GNU Fortran (GCC) 6.1.1 20160621
+ 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)
+ gcc, g++ (Ubuntu 5.4.0-6ubuntu1~16.04.2)
5.4.0 20160609
- GNU Fortran (Ubuntu 5.4.0-6ubuntu1~16.04.2)
+ GNU Fortran (Ubuntu 5.4.0-6ubuntu1~16.04.2)
5.4.0 20160609
(cmake and autotools)
diff --git a/tools/lib/h5diff_attr.c b/tools/lib/h5diff_attr.c
index 004672e..74607da 100644
--- a/tools/lib/h5diff_attr.c
+++ b/tools/lib/h5diff_attr.c
@@ -91,7 +91,7 @@ static void table_attrs_free( table_attrs_t *table )
/*-------------------------------------------------------------------------
* Function: table_attr_mark_exist
*
- * Purpose: mark given attribute name to table as sign of exsit
+ * Purpose: mark given attribute name to table as sign of exist
*
* Parameter:
* - exist [IN]
@@ -155,6 +155,7 @@ static herr_t build_match_list_attrs(hid_t loc1_id, hid_t loc2_id, table_attrs_t
unsigned i;
table_attrs_t *table_lp = NULL;
+ h5difftrace("build_match_list_attrs start\n");
if(H5Oget_info(loc1_id, &oinfo1) < 0)
goto error;
if(H5Oget_info(loc2_id, &oinfo2) < 0)
@@ -162,6 +163,7 @@ static herr_t build_match_list_attrs(hid_t loc1_id, hid_t loc2_id, table_attrs_t
table_attrs_init( &table_lp );
+ h5diffdebug3("build_match_list_attrs: %ld - %ld\n", curr1 < oinfo1.num_attrs, curr2 < oinfo2.num_attrs);
/*--------------------------------------------------
* build the list
@@ -226,6 +228,7 @@ static herr_t build_match_list_attrs(hid_t loc1_id, hid_t loc2_id, table_attrs_t
/* get name */
if(H5Aget_name(attr1_id, (size_t)ATTR_NAME_MAX, name1) < 0)
goto error;
+ h5diffdebug2("build_match_list_attrs #1 name - %s\n", name1);
table_attr_mark_exist(infile, name1, table_lp);
table_lp->nattrs_only1++;
@@ -247,6 +250,7 @@ static herr_t build_match_list_attrs(hid_t loc1_id, hid_t loc2_id, table_attrs_t
/* get name */
if(H5Aget_name(attr2_id, (size_t)ATTR_NAME_MAX, name2) < 0)
goto error;
+ h5diffdebug2("build_match_list_attrs #2 name - %s\n", name2);
table_attr_mark_exist(infile, name2, table_lp);
table_lp->nattrs_only2++;
@@ -278,6 +282,7 @@ static herr_t build_match_list_attrs(hid_t loc1_id, hid_t loc2_id, table_attrs_t
*table_out = table_lp;
+ h5difftrace("build_match_list_attrs end\n");
return 0;
error:
@@ -286,6 +291,7 @@ error:
if (0 < attr2_id)
H5Aclose(attr2_id);
+ h5difftrace("build_match_list_attrs end with error\n");
return -1;
}
@@ -322,8 +328,8 @@ hsize_t diff_attr(hid_t loc1_id,
hid_t space2_id=-1; /* space ID */
hid_t ftype1_id=-1; /* file data type ID */
hid_t ftype2_id=-1; /* file data type ID */
- int vstrtype1=0; /* ftype1 is a variable string */
- int vstrtype2=0; /* ftype2 is a variable string */
+ int vstrtype1=0; /* ftype1 is a variable string */
+ int vstrtype2=0; /* ftype2 is a variable string */
hid_t mtype1_id=-1; /* memory data type ID */
hid_t mtype2_id=-1; /* memory data type ID */
size_t msize1; /* memory size of memory type */
@@ -346,12 +352,15 @@ hsize_t diff_attr(hid_t loc1_id,
hsize_t nfound_total = 0;
int j;
- table_attrs_t * match_list_attrs = NULL;
+ table_attrs_t *match_list_attrs = NULL;
+ h5difftrace("diff_attr start\n");
+
if(build_match_list_attrs(loc1_id, loc2_id, &match_list_attrs, options) < 0)
goto error;
/* if detect any unique extra attr */
if(match_list_attrs->nattrs_only1 || match_list_attrs->nattrs_only2) {
+ h5difftrace("diff_attr attributes only in one file\n");
/* exit will be 1 */
options->contents = 0;
}
@@ -359,6 +368,7 @@ hsize_t diff_attr(hid_t loc1_id,
for(u = 0; u < (unsigned)match_list_attrs->nattrs; u++) {
if((match_list_attrs->attrs[u].exist[0]) && (match_list_attrs->attrs[u].exist[1])) {
name1 = name2 = match_list_attrs->attrs[u].name;
+ h5diffdebug2("diff_attr name - %s\n", name1);
/*--------------
* attribute 1 */
@@ -370,6 +380,7 @@ hsize_t diff_attr(hid_t loc1_id,
if((attr2_id = H5Aopen(loc2_id, name2, H5P_DEFAULT)) < 0)
goto error;
+ h5difftrace("diff_attr got attributes\n");
/* get the datatypes */
if((ftype1_id = H5Aget_type(attr1_id)) < 0)
goto error;
@@ -556,6 +567,7 @@ hsize_t diff_attr(hid_t loc1_id,
table_attrs_free(match_list_attrs);
+ h5difftrace("diff_attr end\n");
return nfound_total;
error:
@@ -584,6 +596,7 @@ error:
} H5E_END_TRY;
options->err_stat = 1;
+ h5difftrace("diff_attr end with error\n");
return nfound_total;
}
diff --git a/tools/test/h5diff/h5diffgentest.c b/tools/test/h5diff/h5diffgentest.c
index 6a84365..708f371 100644
--- a/tools/test/h5diff/h5diffgentest.c
+++ b/tools/test/h5diff/h5diffgentest.c
@@ -7237,7 +7237,7 @@ void write_dset_in(hid_t loc_id,
n=1;
for (i = 0; i < 24; i++) {
- for (j = 0; j < (int)dimarray[0]; j++) {
+ for (j = 0; j < 3; j++) {
if (make_diffs) buf63[i][j]=0;
else buf63[i][j]=n++;
}
diff --git a/tools/test/h5diff/testfiles/h5diff_58.txt b/tools/test/h5diff/testfiles/h5diff_58.txt
index 768dd97..d27a0c9 100644
--- a/tools/test/h5diff/testfiles/h5diff_58.txt
+++ b/tools/test/h5diff/testfiles/h5diff_58.txt
@@ -1,5 +1,5 @@
dataset: </refreg> and </refreg>
-Referenced dataset 10720 10720
+Referenced dataset 10784 10784
------------------------------------------------------------
Region blocks
block #0 (2,2)-(7,7) (0,0)-(2,2)
diff --git a/tools/test/h5diff/testfiles/h5diff_80.txt b/tools/test/h5diff/testfiles/h5diff_80.txt
index 5957d72..836e073 100644
--- a/tools/test/h5diff/testfiles/h5diff_80.txt
+++ b/tools/test/h5diff/testfiles/h5diff_80.txt
@@ -865,7 +865,7 @@ position vlen3D vlen3D difference
[ 3 2 1 ] 59 0 59
59 differences found
dataset: </refreg> and </refreg>
-Referenced dataset 10720 10720
+Referenced dataset 10784 10784
------------------------------------------------------------
Region blocks
block #0 (2,2)-(7,7) (0,0)-(2,2)
diff --git a/tools/test/h5diff/testfiles/h5diff_dset1.h5 b/tools/test/h5diff/testfiles/h5diff_dset1.h5
index 123e141..fefd86a 100644
--- a/tools/test/h5diff/testfiles/h5diff_dset1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_dset1.h5
Binary files differ
diff --git a/tools/test/h5diff/testfiles/h5diff_dset2.h5 b/tools/test/h5diff/testfiles/h5diff_dset2.h5
index 3ae6993..598e481 100644
--- a/tools/test/h5diff/testfiles/h5diff_dset2.h5
+++ b/tools/test/h5diff/testfiles/h5diff_dset2.h5
Binary files differ
diff --git a/tools/test/h5diff/testfiles/h5diff_dset3.h5 b/tools/test/h5diff/testfiles/h5diff_dset3.h5
index 7a1f3dd..893c135 100644
--- a/tools/test/h5diff/testfiles/h5diff_dset3.h5
+++ b/tools/test/h5diff/testfiles/h5diff_dset3.h5
Binary files differ