[svn-r18279] Purpose:

Work for bugzilla 1754: h5diff: support comparing through links.

Description:
    merged from hdf5 trunk (18164, 18165, 18166, 18167, 18170, 18266, 18273)

Tested:
    h5committest (jam, amani and linew)
This commit is contained in:
Jonathan Kim
2010-02-18 21:39:22 -05:00
parent 6b9ddd6598
commit 52d87caef3
125 changed files with 3248 additions and 651 deletions

View File

@@ -3,63 +3,99 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[obj2]]
file2 File name of the second HDF5 file
[obj1] Name of an HDF5 object, in absolute path
[obj2] Name of an HDF5 object, in absolute path
OPTIONS
-h, --help Print a usage message and exit
-V, --version Print version number and exit
-r, --report Report mode. Print differences
-v, --verbose Verbose mode. Print differences, list of objects
-q, --quiet Quiet mode. Do not do output
-h, --help Print a usage message and exit.
-V, --version Print version number and exit.
-r, --report Report mode. Print differences.
-v, --verbose Verbose mode. Print differences, list of objects.
-q, --quiet Quiet mode. Do not produce output.
--follow-links Follow symbolic links (soft links and external links)
and compare the links' target objects.
If symbolic link(s) with the same name exist in the
files being compared, then determine whether the
target of each link is an existing object (dataset,
group, or named datatype) or the link is a dangling
link (a soft or external link pointing to a target
object that does not yet exist).
- If both symbolic links are dangling links, they
are treated as being the same; by default, h5diff
returns an exit code of 0. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If only one of the two links is a dangling link,
they are treated as being different and h5diff
returns an exit code of 1. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If both symbolic links point to existing objects,
h5diff compares the two objects.
If any symbolic link specified in the call to h5diff
does not exist, h5diff treats it as an error and
returns an exit code of 2.
--no-dangling-links Must be used with --follow-links option;
otherwise, h5diff shows error message and returns
an exit code of 2.
Check for any symbolic links (soft links or external
links) that do not resolve to an existing object
(dataset, group, or named datatype). If any
dangling link is found, this situation is treated as
an error and h5diff returns an exit code of 2.
-c, --compare List objects that are not comparable
-N, --nan Avoid NaNs detection
-n C, --count=C Print differences up to C number, C is a positive integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive number.
-n C, --count=C Print differences up to C number, C is a positive
integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive
number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive
number.
--use-system-epsilon Print difference if (|a-b| > EPSILON),
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the system epsilon value.
If the system epsilon is not defined, use the value below:
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the
system epsilon value.
If the system epsilon is not defined, use the value
below:
FLT_EPSILON = 1.19209E-07 for float
DBL_EPSILON = 2.22045E-16 for double
-d, -p, and --use-system-epsilon options are used for comparing floating point values.
By default, strict equality is used. Use -p or -d to set specific tolerance.
-d, -p, and --use-system-epsilon options are used for
comparing floating point values.
By default, strict equality is used. Use -p or -d to
set specific tolerance.
Modes of output:
Default mode: print the number of differences found and where they occured
-r Report mode: print the above plus the differences
-v Verbose mode: print the above plus a list of objects and warnings
-q Quiet mode: do not print output
Compare criteria
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
The compare criteria is:
1) datasets: numerical array differences 2) groups: name string difference
3) datatypes: the return value of H5Tequal 4) links: name string difference
of the linked value
1) datasets: numerical array differences
2) groups: name string difference
3) datatypes: the return value of H5Tequal
4) links: name string difference of the linked value as default
(refer to --follow-links option).
Return exit code:
1 if differences found, 0 if no differences, 2 if error
Exit code:
0 if no differences, 1 if differences found, 2 if error
Examples of use:
1) h5diff file1 file2 /g1/dset1 /g1/dset2
Compares object '/g1/dset1' in file1 with '/g1/dset2' in file2
2) h5diff file1 file2 /g1/dset1
Compares object '/g1/dset1' in both files
3) h5diff file1 file2
Compares all objects in both files
Note) file1 and file2 can be the same file. Use
h5diff file1 file1 /g1/dset1 /g1/dset2
to compare '/g1/dset1' and '/g1/dset2' in the same file
Notes:
file1 and file2 can be the same file.
Use h5diff file1 file1 /g1/dset1 /g1/dset2 to compare
'/g1/dset1' and '/g1/dset2' in the same file
EXIT CODE: 0

View File

@@ -1035,3 +1035,4 @@ position big big difference
[ 268436478 ] 31 0 31
[ 268436479 ] 31 0 31
1024 differences found
EXIT CODE: 1

View File

@@ -7,3 +7,4 @@ position d1 d2 difference
[ 1 1 ] 0 1e-09 1e-09
[ 2 0 ] 1e-09 0 1e-09
4 differences found
EXIT CODE: 1

View File

@@ -7,3 +7,4 @@ position fp1 fp2 difference
[ 1 1 ] 0 1e-05 1e-05
[ 2 0 ] 1e-05 0 1e-05
4 differences found
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
dataset: </g1/dset1> and </g1/dset1>
5 differences found
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
dataset: </g1/dset1> and </g1/dset2>
5 differences found
EXIT CODE: 1

View File

@@ -8,3 +8,4 @@ position dset1 dset1 difference
[ 1 1 ] 1 1.001 0.001
[ 2 1 ] 0 1 1
5 differences found
EXIT CODE: 1

View File

@@ -8,3 +8,4 @@ position dset1 dset2 difference
[ 1 1 ] 1 1.001 0.001
[ 2 1 ] 0 1 1
5 differences found
EXIT CODE: 1

View File

@@ -7,3 +7,4 @@ position dset3 dset4 difference
[ 2 0 ] 100 80 20
[ 2 1 ] 100 40 60
4 differences found
EXIT CODE: 1

View File

@@ -8,3 +8,4 @@ position dset5 dset6 difference relative
[ 1 1 ] 0 100 100 not comparable
[ 2 1 ] 100 50 50 0.500000
5 differences found
EXIT CODE: 1

View File

@@ -8,3 +8,4 @@ position dset7 dset8 difference relative
[ 1 1 ] 0 100 100 not comparable
[ 2 1 ] 100 50 50 0.500000
5 differences found
EXIT CODE: 1

View File

@@ -8,3 +8,4 @@ position dset9 dset10 difference relative
[ 1 1 ] 0 100 100 not comparable
[ 2 1 ] 100 50 50 0.5
5 differences found
EXIT CODE: 1

View File

@@ -51,3 +51,4 @@ position dset1 dset1 difference
[ 1 1 ] 1 1.001 0.001
[ 2 1 ] 0 1 1
5 differences found
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
dataset: </g1/fp19> and </g1/fp19>
0 differences found
EXIT CODE: 0

View File

@@ -1,2 +1,3 @@
dataset: </g1/fp20> and </g1/fp20>
0 differences found
EXIT CODE: 0

View File

@@ -0,0 +1 @@
EXIT CODE: 1

View File

@@ -0,0 +1,2 @@
Error: -q (quiet mode) cannot be added to verbose or report modes
EXIT CODE: 2

View File

@@ -3,3 +3,4 @@
Some objects are not comparable
--------------------------------
Use -c for a list of objects.
EXIT CODE: 0

View File

@@ -2,3 +2,4 @@
Some objects are not comparable
--------------------------------
Use -c for a list of objects.
EXIT CODE: 0

View File

@@ -1 +1,2 @@
Not comparable: </g2/dset1> or </g2/dset2> is an empty dataset
EXIT CODE: 0

View File

@@ -1,2 +1,3 @@
Not comparable: </g2/dset2> is of class H5T_FLOAT and </g2/dset3> is of class H5T_INTEGER
Not comparable: </g2/dset2> has sign H5T_SGN_ERROR and </g2/dset3> has sign H5T_SGN_2
EXIT CODE: 0

View File

@@ -1,2 +1,3 @@
Not comparable: </g2/dset3> has rank 1, dimensions [6], max dimensions [6]
and </g2/dset4> has rank 2, dimensions [3x2], max dimensions [3x2]
EXIT CODE: 0

View File

@@ -1,2 +1,3 @@
Not comparable: </g2/dset4> has rank 2, dimensions [3x2], max dimensions [3x2]
and </g2/dset5> has rank 2, dimensions [2x2], max dimensions [2x2]
EXIT CODE: 0

View File

@@ -1,3 +1,4 @@
Not comparable: </g2/dset5> has rank 2, dimensions [2x2], max dimensions [2x2]
and </g2/dset6> has rank 2, dimensions [3x2], max dimensions [3x2]
Not comparable: </g2/dset5> has sign H5T_SGN_2 and </g2/dset6> has sign H5T_SGN_NONE
EXIT CODE: 0

View File

@@ -1 +1,2 @@
Not comparable: </g2/dset7> has a class H5T_FLOAT and </g2/dset8> has a class H5T_INTEGER
EXIT CODE: 0

View File

@@ -1,2 +1,3 @@
Not comparable: </g2/dset8> or </g2/dset9> is an empty dataset
Not comparable: </g2/dset8> has 2 members </g2/dset9> has 1 members
EXIT CODE: 0

View File

@@ -3,3 +3,4 @@
Some objects are not comparable
--------------------------------
Use -c for a list of objects.
EXIT CODE: 0

View File

@@ -3,3 +3,4 @@
Some objects are not comparable
--------------------------------
Use -c for a list of objects.
EXIT CODE: 0

View File

@@ -1,2 +1,3 @@
group : </g1> and </g1>
0 differences found
EXIT CODE: 0

View File

@@ -1,2 +1,3 @@
datatype: </t1> and </t1>
0 differences found
EXIT CODE: 0

View File

@@ -1,2 +1,3 @@
link : </l1> and </l1>
0 differences found
EXIT CODE: 0

View File

@@ -1,2 +1,3 @@
group : </g1> and </g2>
1 differences found
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
datatype: </t1> and </t2>
1 differences found
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
link : </l1> and </l2>
1 differences found
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
link : </link_g1> and </link_g2>
1 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,48 @@
file1 file2
---------------------------------------
x x /
x x /softlink_dset1_1
x x /softlink_dset1_2
x x /softlink_dset2
x x /softlink_group1
x x /softlink_group2
x x /softlink_noexist
x x /target_dset1
x x /target_dset2
x x /target_group
x x /target_group/dset
group : </> and </>
0 differences found
link : </softlink_dset1_1> and </softlink_dset1_1>
dataset: </softlink_dset1_1> and </softlink_dset1_1>
0 differences found
0 differences found
link : </softlink_dset1_2> and </softlink_dset1_2>
dataset: </softlink_dset1_2> and </softlink_dset1_2>
0 differences found
0 differences found
link : </softlink_dset2> and </softlink_dset2>
dataset: </softlink_dset2> and </softlink_dset2>
0 differences found
0 differences found
link : </softlink_group1> and </softlink_group1>
group : </softlink_group1> and </softlink_group1>
0 differences found
0 differences found
link : </softlink_group2> and </softlink_group2>
group : </softlink_group2> and </softlink_group2>
0 differences found
0 differences found
dangling link: </softlink_noexist> and </softlink_noexist>
0 differences found
dataset: </target_dset1> and </target_dset1>
0 differences found
dataset: </target_dset2> and </target_dset2>
0 differences found
group : </target_group> and </target_group>
0 differences found
dataset: </target_group/dset> and </target_group/dset>
0 differences found
EXIT CODE: 0

View File

@@ -0,0 +1,13 @@
dataset: </softlink_dset1_1> and </target_dset2>
size: [2x4] [2x4]
position softlink_dset1_1 target_dset2 difference
------------------------------------------------------------
[ 0 1 ] 1 0 1
[ 0 2 ] 2 0 2
[ 0 3 ] 3 0 3
[ 1 0 ] 1 0 1
[ 1 1 ] 2 0 2
[ 1 2 ] 3 0 3
[ 1 3 ] 4 0 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,13 @@
dataset: </target_dset2> and </softlink_dset1_1>
size: [2x4] [2x4]
position target_dset2 softlink_dset1_1 difference
------------------------------------------------------------
[ 0 1 ] 0 1 1
[ 0 2 ] 0 2 2
[ 0 3 ] 0 3 3
[ 1 0 ] 0 1 1
[ 1 1 ] 0 2 2
[ 1 2 ] 0 3 3
[ 1 3 ] 0 4 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,13 @@
dataset: </softlink_dset1_1> and </softlink_dset2>
size: [2x4] [2x4]
position softlink_dset1_1 softlink_dset2 difference
------------------------------------------------------------
[ 0 1 ] 1 0 1
[ 0 2 ] 2 0 2
[ 0 3 ] 3 0 3
[ 1 0 ] 1 0 1
[ 1 1 ] 2 0 2
[ 1 2 ] 3 0 3
[ 1 3 ] 4 0 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,34 @@
file1 file2
---------------------------------------
x x /
x x /ext_link_dset1
x x /ext_link_dset2
x x /ext_link_grp1
x x /ext_link_grp2
x x /ext_link_noexist1
x x /ext_link_noexist2
group : </> and </>
0 differences found
external link: </ext_link_dset1> and </ext_link_dset1>
dataset: </ext_link_dset1> and </ext_link_dset1>
0 differences found
0 differences found
external link: </ext_link_dset2> and </ext_link_dset2>
dataset: </ext_link_dset2> and </ext_link_dset2>
0 differences found
0 differences found
external link: </ext_link_grp1> and </ext_link_grp1>
group : </ext_link_grp1> and </ext_link_grp1>
0 differences found
0 differences found
external link: </ext_link_grp2> and </ext_link_grp2>
group : </ext_link_grp2> and </ext_link_grp2>
0 differences found
0 differences found
dangling link: </ext_link_noexist1> and </ext_link_noexist1>
0 differences found
dangling link: </ext_link_noexist2> and </ext_link_noexist2>
0 differences found
EXIT CODE: 0

View File

@@ -0,0 +1,13 @@
dataset: </ext_link_dset1> and </target_group2/x_dset>
size: [2x4] [2x4]
position ext_link_dset1 x_dset difference
------------------------------------------------------------
[ 0 1 ] 1 0 1
[ 0 2 ] 2 0 2
[ 0 3 ] 3 0 3
[ 1 0 ] 1 0 1
[ 1 1 ] 2 0 2
[ 1 2 ] 3 0 3
[ 1 3 ] 4 0 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,13 @@
dataset: </target_group2/x_dset> and </ext_link_dset1>
size: [2x4] [2x4]
position x_dset ext_link_dset1 difference
------------------------------------------------------------
[ 0 1 ] 0 1 1
[ 0 2 ] 0 2 2
[ 0 3 ] 0 3 3
[ 1 0 ] 0 1 1
[ 1 1 ] 0 2 2
[ 1 2 ] 0 3 3
[ 1 3 ] 0 4 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,13 @@
dataset: </ext_link_dset1> and </ext_link_dset2>
size: [2x4] [2x4]
position ext_link_dset1 ext_link_dset2 difference
------------------------------------------------------------
[ 0 1 ] 1 0 1
[ 0 2 ] 2 0 2
[ 0 3 ] 3 0 3
[ 1 0 ] 1 0 1
[ 1 1 ] 2 0 2
[ 1 2 ] 3 0 3
[ 1 3 ] 4 0 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,13 @@
dataset: </softlink_dset1_1> and </ext_link_dset2>
size: [2x4] [2x4]
position softlink_dset1_1 ext_link_dset2 difference
------------------------------------------------------------
[ 0 1 ] 1 0 1
[ 0 2 ] 2 0 2
[ 0 3 ] 3 0 3
[ 1 0 ] 1 0 1
[ 1 1 ] 2 0 2
[ 1 2 ] 3 0 3
[ 1 3 ] 4 0 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,13 @@
dataset: </ext_link_dset2> and </softlink_dset1_1>
size: [2x4] [2x4]
position ext_link_dset2 softlink_dset1_1 difference
------------------------------------------------------------
[ 0 1 ] 0 1 1
[ 0 2 ] 0 2 2
[ 0 3 ] 0 3 3
[ 1 0 ] 0 1 1
[ 1 1 ] 0 2 2
[ 1 2 ] 0 3 3
[ 1 3 ] 0 4 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,86 @@
file1 file2
---------------------------------------
x x /
x x /softlink1_to_dset1
x x /softlink1_to_slink1
x x /softlink1_to_slink2
x x /softlink2_to_dset2
x x /softlink2_to_slink1
x x /softlink2_to_slink2
x x /softlink3_to_group1
x x /softlink3_to_slink1
x x /softlink3_to_slink2
x x /softlink4_to_group2
x x /softlink4_to_slink1
x x /softlink4_to_slink2
x x /target_dset1
x x /target_dset2
x x /target_group
x x /target_group/dset
x x /target_group1
x x /target_group2
group : </> and </>
0 differences found
link : </softlink1_to_dset1> and </softlink1_to_dset1>
dataset: </softlink1_to_dset1> and </softlink1_to_dset1>
0 differences found
0 differences found
link : </softlink1_to_slink1> and </softlink1_to_slink1>
dataset: </softlink1_to_slink1> and </softlink1_to_slink1>
0 differences found
0 differences found
link : </softlink1_to_slink2> and </softlink1_to_slink2>
dataset: </softlink1_to_slink2> and </softlink1_to_slink2>
0 differences found
0 differences found
link : </softlink2_to_dset2> and </softlink2_to_dset2>
dataset: </softlink2_to_dset2> and </softlink2_to_dset2>
0 differences found
0 differences found
link : </softlink2_to_slink1> and </softlink2_to_slink1>
dataset: </softlink2_to_slink1> and </softlink2_to_slink1>
0 differences found
0 differences found
link : </softlink2_to_slink2> and </softlink2_to_slink2>
dataset: </softlink2_to_slink2> and </softlink2_to_slink2>
0 differences found
0 differences found
link : </softlink3_to_group1> and </softlink3_to_group1>
group : </softlink3_to_group1> and </softlink3_to_group1>
0 differences found
0 differences found
link : </softlink3_to_slink1> and </softlink3_to_slink1>
group : </softlink3_to_slink1> and </softlink3_to_slink1>
0 differences found
0 differences found
link : </softlink3_to_slink2> and </softlink3_to_slink2>
group : </softlink3_to_slink2> and </softlink3_to_slink2>
0 differences found
0 differences found
link : </softlink4_to_group2> and </softlink4_to_group2>
group : </softlink4_to_group2> and </softlink4_to_group2>
0 differences found
0 differences found
link : </softlink4_to_slink1> and </softlink4_to_slink1>
group : </softlink4_to_slink1> and </softlink4_to_slink1>
0 differences found
0 differences found
link : </softlink4_to_slink2> and </softlink4_to_slink2>
group : </softlink4_to_slink2> and </softlink4_to_slink2>
0 differences found
0 differences found
dataset: </target_dset1> and </target_dset1>
0 differences found
dataset: </target_dset2> and </target_dset2>
0 differences found
group : </target_group> and </target_group>
0 differences found
dataset: </target_group/dset> and </target_group/dset>
0 differences found
group : </target_group1> and </target_group1>
0 differences found
group : </target_group2> and </target_group2>
0 differences found
EXIT CODE: 0

View File

@@ -0,0 +1,13 @@
dataset: </target_dset2> and </softlink1_to_slink2>
size: [2x4] [2x4]
position target_dset2 softlink1_to_slink2 difference
------------------------------------------------------------
[ 0 1 ] 0 1 1
[ 0 2 ] 0 2 2
[ 0 3 ] 0 3 3
[ 1 0 ] 0 1 1
[ 1 1 ] 0 2 2
[ 1 2 ] 0 3 3
[ 1 3 ] 0 4 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,13 @@
dataset: </softlink1_to_slink2> and </target_dset2>
size: [2x4] [2x4]
position softlink1_to_slink2 target_dset2 difference
------------------------------------------------------------
[ 0 1 ] 1 0 1
[ 0 2 ] 2 0 2
[ 0 3 ] 3 0 3
[ 1 0 ] 1 0 1
[ 1 1 ] 2 0 2
[ 1 2 ] 3 0 3
[ 1 3 ] 4 0 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,13 @@
dataset: </softlink1_to_slink2> and </softlink2_to_slink2>
size: [2x4] [2x4]
position softlink1_to_slink2 softlink2_to_slink2 difference
------------------------------------------------------------
[ 0 1 ] 1 0 1
[ 0 2 ] 2 0 2
[ 0 3 ] 3 0 3
[ 1 0 ] 1 0 1
[ 1 1 ] 2 0 2
[ 1 2 ] 3 0 3
[ 1 3 ] 4 0 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,3 @@
group : </target_group> and </softlink3_to_slink2>
1 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,3 @@
group : </softlink3_to_slink2> and </target_group>
1 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,3 @@
group : </softlink3_to_slink2> and </softlink4_to_slink2>
1 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,3 @@
obj1 </softlink_noexist> is a dangling link.
1 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,3 @@
obj2 </softlink_noexist> is a dangling link.
1 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,3 @@
obj1 </ext_link_noexist2> is a dangling link.
1 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,3 @@
obj2 </ext_link_noexist2> is a dangling link.
1 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,3 @@
obj2 </ext_link_noexist1> is a dangling link.
1 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,3 @@
obj1 </ext_link_noexist1> is a dangling link.
1 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,13 @@
dataset: </ext_link_to_slink1> and </dset2>
size: [2x4] [2x4]
position ext_link_to_slink1 dset2 difference
------------------------------------------------------------
[ 0 1 ] 0 1 1
[ 0 2 ] 0 2 2
[ 0 3 ] 0 3 3
[ 1 0 ] 0 1 1
[ 1 1 ] 0 2 2
[ 1 2 ] 0 3 3
[ 1 3 ] 0 4 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,13 @@
dataset: </dset2> and </ext_link_to_slink1>
size: [2x4] [2x4]
position dset2 ext_link_to_slink1 difference
------------------------------------------------------------
[ 0 1 ] 1 0 1
[ 0 2 ] 2 0 2
[ 0 3 ] 3 0 3
[ 1 0 ] 1 0 1
[ 1 1 ] 2 0 2
[ 1 2 ] 3 0 3
[ 1 3 ] 4 0 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,13 @@
dataset: </ext_link_to_slink1> and </ext_link_to_slink2>
size: [2x4] [2x4]
position ext_link_to_slink1 ext_link_to_slink2 difference
------------------------------------------------------------
[ 0 1 ] 0 1 1
[ 0 2 ] 0 2 2
[ 0 3 ] 0 3 3
[ 1 0 ] 0 1 1
[ 1 1 ] 0 2 2
[ 1 2 ] 0 3 3
[ 1 3 ] 0 4 4
7 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,35 @@
file1 file2
---------------------------------------
x x /
x x /dset1
x x /dset2
x x /ext_link1
x x /ext_link2
x x /ext_link3
x x /ext_link4
x x /soft_link1
x x /soft_link2
x x /soft_link3
group : </> and </>
0 differences found
dataset: </dset1> and </dset1>
0 differences found
dataset: </dset2> and </dset2>
0 differences found
dangling link: </ext_link1> and </ext_link1>
0 differences found
obj2 </ext_link2> is a dangling link.
1 differences found
obj1 </ext_link3> is a dangling link.
1 differences found
dangling link: </ext_link4> and </ext_link4>
0 differences found
dangling link: </soft_link1> and </soft_link1>
0 differences found
obj2 </soft_link2> is a dangling link.
1 differences found
obj1 </soft_link3> is a dangling link.
1 differences found
EXIT CODE: 1

View File

@@ -0,0 +1,28 @@
file1 file2
---------------------------------------
x x /
x x /dset1
x x /dset2
x x /ext_link1
x x /ext_link2
x x /ext_link3
x x /ext_link4
x x /soft_link1
x x /soft_link2
x x /soft_link3
group : </> and </>
0 differences found
dataset: </dset1> and </dset1>
0 differences found
dataset: </dset2> and </dset2>
0 differences found
Warning: </ext_link1> is a dangling link.
Warning: </ext_link2> is a dangling link.
Warning: </ext_link3> is a dangling link.
Warning: </ext_link4> is a dangling link.
Warning: </soft_link1> is a dangling link.
Warning: </soft_link2> is a dangling link.
Warning: </soft_link3> is a dangling link.
EXIT CODE: 2

View File

@@ -0,0 +1,2 @@
Error: --no-dangling-links must be used along with --follow-links option.
EXIT CODE: 2

View File

@@ -0,0 +1,47 @@
file1 file2
---------------------------------------
x x /
x x /softlink_dset1_1
x x /softlink_dset1_2
x x /softlink_dset2
x x /softlink_group1
x x /softlink_group2
x x /softlink_noexist
x x /target_dset1
x x /target_dset2
x x /target_group
x x /target_group/dset
group : </> and </>
0 differences found
link : </softlink_dset1_1> and </softlink_dset1_1>
dataset: </softlink_dset1_1> and </softlink_dset1_1>
0 differences found
0 differences found
link : </softlink_dset1_2> and </softlink_dset1_2>
dataset: </softlink_dset1_2> and </softlink_dset1_2>
0 differences found
0 differences found
link : </softlink_dset2> and </softlink_dset2>
dataset: </softlink_dset2> and </softlink_dset2>
0 differences found
0 differences found
link : </softlink_group1> and </softlink_group1>
group : </softlink_group1> and </softlink_group1>
0 differences found
0 differences found
link : </softlink_group2> and </softlink_group2>
group : </softlink_group2> and </softlink_group2>
0 differences found
0 differences found
Warning: </softlink_noexist> is a dangling link.
dataset: </target_dset1> and </target_dset1>
0 differences found
dataset: </target_dset2> and </target_dset2>
0 differences found
group : </target_group> and </target_group>
0 differences found
dataset: </target_group/dset> and </target_group/dset>
0 differences found
EXIT CODE: 2

View File

@@ -0,0 +1,2 @@
Warning: </softlink_noexist> is a dangling link.
EXIT CODE: 2

View File

@@ -0,0 +1,2 @@
Warning: </softlink_noexist> is a dangling link.
EXIT CODE: 2

View File

@@ -0,0 +1,32 @@
file1 file2
---------------------------------------
x x /
x x /ext_link_dset1
x x /ext_link_dset2
x x /ext_link_grp1
x x /ext_link_grp2
x x /ext_link_noexist1
x x /ext_link_noexist2
group : </> and </>
0 differences found
external link: </ext_link_dset1> and </ext_link_dset1>
dataset: </ext_link_dset1> and </ext_link_dset1>
0 differences found
0 differences found
external link: </ext_link_dset2> and </ext_link_dset2>
dataset: </ext_link_dset2> and </ext_link_dset2>
0 differences found
0 differences found
external link: </ext_link_grp1> and </ext_link_grp1>
group : </ext_link_grp1> and </ext_link_grp1>
0 differences found
0 differences found
external link: </ext_link_grp2> and </ext_link_grp2>
group : </ext_link_grp2> and </ext_link_grp2>
0 differences found
0 differences found
Warning: </ext_link_noexist1> is a dangling link.
Warning: </ext_link_noexist2> is a dangling link.
EXIT CODE: 2

View File

@@ -0,0 +1,2 @@
Warning: </ext_link_noexist1> is a dangling link.
EXIT CODE: 2

View File

@@ -0,0 +1,2 @@
Warning: </ext_link_noexist2> is a dangling link.
EXIT CODE: 2

View File

@@ -0,0 +1,2 @@
Warning: </ext_link_noexist1> is a dangling link.
EXIT CODE: 2

View File

@@ -10,3 +10,4 @@ position dset0a dset0b difference
[ 2 0 ] 1 5 4
[ 2 1 ] 1 6 5
4 differences found
EXIT CODE: 1

View File

@@ -7,3 +7,4 @@ position dset1a dset1b difference
[ 2 0 ] 1 5 4
[ 2 1 ] 1 6 5
4 differences found
EXIT CODE: 1

View File

@@ -7,3 +7,4 @@ position dset2a dset2b difference
[ 2 0 ] 1 5 4
[ 2 1 ] 1 6 5
4 differences found
EXIT CODE: 1

View File

@@ -7,3 +7,4 @@ position dset3a dset4b difference
[ 2 0 ] 1 5 4
[ 2 1 ] 1 6 5
4 differences found
EXIT CODE: 1

View File

@@ -7,3 +7,4 @@ position dset4a dset4b difference
[ 2 0 ] 1 5 4
[ 2 1 ] 1 6 5
4 differences found
EXIT CODE: 1

View File

@@ -7,3 +7,4 @@ position dset5a dset5b difference
[ 2 0 ] 1 5 4
[ 2 1 ] 1 6 5
4 differences found
EXIT CODE: 1

View File

@@ -7,3 +7,4 @@ position dset6a dset6b difference
[ 2 0 ] 1 5 4
[ 2 1 ] 1 6 5
4 differences found
EXIT CODE: 1

View File

@@ -8,3 +8,4 @@ Not comparable: </dset7a> has sign H5T_SGN_2 and </dset7b> has sign H5T_SGN_NONE
Some objects are not comparable
--------------------------------
Use -c for a list of objects.
EXIT CODE: 0

View File

@@ -8,3 +8,4 @@ point #1 (2,2) (3,3)
point #3 (1,6) (2,5)
point #4 (2,8) (1,7)
4 differences found
EXIT CODE: 1

View File

@@ -3,64 +3,100 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[obj2]]
file2 File name of the second HDF5 file
[obj1] Name of an HDF5 object, in absolute path
[obj2] Name of an HDF5 object, in absolute path
OPTIONS
-h, --help Print a usage message and exit
-V, --version Print version number and exit
-r, --report Report mode. Print differences
-v, --verbose Verbose mode. Print differences, list of objects
-q, --quiet Quiet mode. Do not do output
-h, --help Print a usage message and exit.
-V, --version Print version number and exit.
-r, --report Report mode. Print differences.
-v, --verbose Verbose mode. Print differences, list of objects.
-q, --quiet Quiet mode. Do not produce output.
--follow-links Follow symbolic links (soft links and external links)
and compare the links' target objects.
If symbolic link(s) with the same name exist in the
files being compared, then determine whether the
target of each link is an existing object (dataset,
group, or named datatype) or the link is a dangling
link (a soft or external link pointing to a target
object that does not yet exist).
- If both symbolic links are dangling links, they
are treated as being the same; by default, h5diff
returns an exit code of 0. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If only one of the two links is a dangling link,
they are treated as being different and h5diff
returns an exit code of 1. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If both symbolic links point to existing objects,
h5diff compares the two objects.
If any symbolic link specified in the call to h5diff
does not exist, h5diff treats it as an error and
returns an exit code of 2.
--no-dangling-links Must be used with --follow-links option;
otherwise, h5diff shows error message and returns
an exit code of 2.
Check for any symbolic links (soft links or external
links) that do not resolve to an existing object
(dataset, group, or named datatype). If any
dangling link is found, this situation is treated as
an error and h5diff returns an exit code of 2.
-c, --compare List objects that are not comparable
-N, --nan Avoid NaNs detection
-n C, --count=C Print differences up to C number, C is a positive integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive number.
-n C, --count=C Print differences up to C number, C is a positive
integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive
number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive
number.
--use-system-epsilon Print difference if (|a-b| > EPSILON),
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the system epsilon value.
If the system epsilon is not defined, use the value below:
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the
system epsilon value.
If the system epsilon is not defined, use the value
below:
FLT_EPSILON = 1.19209E-07 for float
DBL_EPSILON = 2.22045E-16 for double
-d, -p, and --use-system-epsilon options are used for comparing floating point values.
By default, strict equality is used. Use -p or -d to set specific tolerance.
-d, -p, and --use-system-epsilon options are used for
comparing floating point values.
By default, strict equality is used. Use -p or -d to
set specific tolerance.
Modes of output:
Default mode: print the number of differences found and where they occured
-r Report mode: print the above plus the differences
-v Verbose mode: print the above plus a list of objects and warnings
-q Quiet mode: do not print output
Compare criteria
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
The compare criteria is:
1) datasets: numerical array differences 2) groups: name string difference
3) datatypes: the return value of H5Tequal 4) links: name string difference
of the linked value
1) datasets: numerical array differences
2) groups: name string difference
3) datatypes: the return value of H5Tequal
4) links: name string difference of the linked value as default
(refer to --follow-links option).
Return exit code:
1 if differences found, 0 if no differences, 2 if error
Exit code:
0 if no differences, 1 if differences found, 2 if error
Examples of use:
1) h5diff file1 file2 /g1/dset1 /g1/dset2
Compares object '/g1/dset1' in file1 with '/g1/dset2' in file2
2) h5diff file1 file2 /g1/dset1
Compares object '/g1/dset1' in both files
3) h5diff file1 file2
Compares all objects in both files
Note) file1 and file2 can be the same file. Use
h5diff file1 file1 /g1/dset1 /g1/dset2
to compare '/g1/dset1' and '/g1/dset2' in the same file
Notes:
file1 and file2 can be the same file.
Use h5diff file1 file1 /g1/dset1 /g1/dset2 to compare
'/g1/dset1' and '/g1/dset2' in the same file
h5diff error: missing file names
EXIT CODE: 1

View File

@@ -4,63 +4,99 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[obj2]]
file2 File name of the second HDF5 file
[obj1] Name of an HDF5 object, in absolute path
[obj2] Name of an HDF5 object, in absolute path
OPTIONS
-h, --help Print a usage message and exit
-V, --version Print version number and exit
-r, --report Report mode. Print differences
-v, --verbose Verbose mode. Print differences, list of objects
-q, --quiet Quiet mode. Do not do output
-h, --help Print a usage message and exit.
-V, --version Print version number and exit.
-r, --report Report mode. Print differences.
-v, --verbose Verbose mode. Print differences, list of objects.
-q, --quiet Quiet mode. Do not produce output.
--follow-links Follow symbolic links (soft links and external links)
and compare the links' target objects.
If symbolic link(s) with the same name exist in the
files being compared, then determine whether the
target of each link is an existing object (dataset,
group, or named datatype) or the link is a dangling
link (a soft or external link pointing to a target
object that does not yet exist).
- If both symbolic links are dangling links, they
are treated as being the same; by default, h5diff
returns an exit code of 0. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If only one of the two links is a dangling link,
they are treated as being different and h5diff
returns an exit code of 1. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If both symbolic links point to existing objects,
h5diff compares the two objects.
If any symbolic link specified in the call to h5diff
does not exist, h5diff treats it as an error and
returns an exit code of 2.
--no-dangling-links Must be used with --follow-links option;
otherwise, h5diff shows error message and returns
an exit code of 2.
Check for any symbolic links (soft links or external
links) that do not resolve to an existing object
(dataset, group, or named datatype). If any
dangling link is found, this situation is treated as
an error and h5diff returns an exit code of 2.
-c, --compare List objects that are not comparable
-N, --nan Avoid NaNs detection
-n C, --count=C Print differences up to C number, C is a positive integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive number.
-n C, --count=C Print differences up to C number, C is a positive
integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive
number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive
number.
--use-system-epsilon Print difference if (|a-b| > EPSILON),
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the system epsilon value.
If the system epsilon is not defined, use the value below:
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the
system epsilon value.
If the system epsilon is not defined, use the value
below:
FLT_EPSILON = 1.19209E-07 for float
DBL_EPSILON = 2.22045E-16 for double
-d, -p, and --use-system-epsilon options are used for comparing floating point values.
By default, strict equality is used. Use -p or -d to set specific tolerance.
-d, -p, and --use-system-epsilon options are used for
comparing floating point values.
By default, strict equality is used. Use -p or -d to
set specific tolerance.
Modes of output:
Default mode: print the number of differences found and where they occured
-r Report mode: print the above plus the differences
-v Verbose mode: print the above plus a list of objects and warnings
-q Quiet mode: do not print output
Compare criteria
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
The compare criteria is:
1) datasets: numerical array differences 2) groups: name string difference
3) datatypes: the return value of H5Tequal 4) links: name string difference
of the linked value
1) datasets: numerical array differences
2) groups: name string difference
3) datatypes: the return value of H5Tequal
4) links: name string difference of the linked value as default
(refer to --follow-links option).
Return exit code:
1 if differences found, 0 if no differences, 2 if error
Exit code:
0 if no differences, 1 if differences found, 2 if error
Examples of use:
1) h5diff file1 file2 /g1/dset1 /g1/dset2
Compares object '/g1/dset1' in file1 with '/g1/dset2' in file2
2) h5diff file1 file2 /g1/dset1
Compares object '/g1/dset1' in both files
3) h5diff file1 file2
Compares all objects in both files
Note) file1 and file2 can be the same file. Use
h5diff file1 file1 /g1/dset1 /g1/dset2
to compare '/g1/dset1' and '/g1/dset2' in the same file
Notes:
file1 and file2 can be the same file.
Use h5diff file1 file1 /g1/dset1 /g1/dset2 to compare
'/g1/dset1' and '/g1/dset2' in the same file
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
dataset: </g1/dset3> and </g1/dset4>
6 differences found
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
dataset: </g1/dset3> and </g1/dset4>
6 differences found
EXIT CODE: 1

View File

@@ -4,63 +4,99 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[obj2]]
file2 File name of the second HDF5 file
[obj1] Name of an HDF5 object, in absolute path
[obj2] Name of an HDF5 object, in absolute path
OPTIONS
-h, --help Print a usage message and exit
-V, --version Print version number and exit
-r, --report Report mode. Print differences
-v, --verbose Verbose mode. Print differences, list of objects
-q, --quiet Quiet mode. Do not do output
-h, --help Print a usage message and exit.
-V, --version Print version number and exit.
-r, --report Report mode. Print differences.
-v, --verbose Verbose mode. Print differences, list of objects.
-q, --quiet Quiet mode. Do not produce output.
--follow-links Follow symbolic links (soft links and external links)
and compare the links' target objects.
If symbolic link(s) with the same name exist in the
files being compared, then determine whether the
target of each link is an existing object (dataset,
group, or named datatype) or the link is a dangling
link (a soft or external link pointing to a target
object that does not yet exist).
- If both symbolic links are dangling links, they
are treated as being the same; by default, h5diff
returns an exit code of 0. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If only one of the two links is a dangling link,
they are treated as being different and h5diff
returns an exit code of 1. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If both symbolic links point to existing objects,
h5diff compares the two objects.
If any symbolic link specified in the call to h5diff
does not exist, h5diff treats it as an error and
returns an exit code of 2.
--no-dangling-links Must be used with --follow-links option;
otherwise, h5diff shows error message and returns
an exit code of 2.
Check for any symbolic links (soft links or external
links) that do not resolve to an existing object
(dataset, group, or named datatype). If any
dangling link is found, this situation is treated as
an error and h5diff returns an exit code of 2.
-c, --compare List objects that are not comparable
-N, --nan Avoid NaNs detection
-n C, --count=C Print differences up to C number, C is a positive integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive number.
-n C, --count=C Print differences up to C number, C is a positive
integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive
number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive
number.
--use-system-epsilon Print difference if (|a-b| > EPSILON),
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the system epsilon value.
If the system epsilon is not defined, use the value below:
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the
system epsilon value.
If the system epsilon is not defined, use the value
below:
FLT_EPSILON = 1.19209E-07 for float
DBL_EPSILON = 2.22045E-16 for double
-d, -p, and --use-system-epsilon options are used for comparing floating point values.
By default, strict equality is used. Use -p or -d to set specific tolerance.
-d, -p, and --use-system-epsilon options are used for
comparing floating point values.
By default, strict equality is used. Use -p or -d to
set specific tolerance.
Modes of output:
Default mode: print the number of differences found and where they occured
-r Report mode: print the above plus the differences
-v Verbose mode: print the above plus a list of objects and warnings
-q Quiet mode: do not print output
Compare criteria
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
The compare criteria is:
1) datasets: numerical array differences 2) groups: name string difference
3) datatypes: the return value of H5Tequal 4) links: name string difference
of the linked value
1) datasets: numerical array differences
2) groups: name string difference
3) datatypes: the return value of H5Tequal
4) links: name string difference of the linked value as default
(refer to --follow-links option).
Return exit code:
1 if differences found, 0 if no differences, 2 if error
Exit code:
0 if no differences, 1 if differences found, 2 if error
Examples of use:
1) h5diff file1 file2 /g1/dset1 /g1/dset2
Compares object '/g1/dset1' in file1 with '/g1/dset2' in file2
2) h5diff file1 file2 /g1/dset1
Compares object '/g1/dset1' in both files
3) h5diff file1 file2
Compares all objects in both files
Note) file1 and file2 can be the same file. Use
h5diff file1 file1 /g1/dset1 /g1/dset2
to compare '/g1/dset1' and '/g1/dset2' in the same file
Notes:
file1 and file2 can be the same file.
Use h5diff file1 file1 /g1/dset1 /g1/dset2 to compare
'/g1/dset1' and '/g1/dset2' in the same file
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
dataset: </g1/dset3> and </g1/dset4>
6 differences found
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
dataset: </g1/dset3> and </g1/dset4>
6 differences found
EXIT CODE: 1

View File

@@ -0,0 +1 @@
EXIT CODE: 0

View File

@@ -1,2 +1,3 @@
dataset: </g1/dset3> and </g1/dset4>
6 differences found
EXIT CODE: 1

View File

@@ -4,63 +4,99 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[obj2]]
file2 File name of the second HDF5 file
[obj1] Name of an HDF5 object, in absolute path
[obj2] Name of an HDF5 object, in absolute path
OPTIONS
-h, --help Print a usage message and exit
-V, --version Print version number and exit
-r, --report Report mode. Print differences
-v, --verbose Verbose mode. Print differences, list of objects
-q, --quiet Quiet mode. Do not do output
-h, --help Print a usage message and exit.
-V, --version Print version number and exit.
-r, --report Report mode. Print differences.
-v, --verbose Verbose mode. Print differences, list of objects.
-q, --quiet Quiet mode. Do not produce output.
--follow-links Follow symbolic links (soft links and external links)
and compare the links' target objects.
If symbolic link(s) with the same name exist in the
files being compared, then determine whether the
target of each link is an existing object (dataset,
group, or named datatype) or the link is a dangling
link (a soft or external link pointing to a target
object that does not yet exist).
- If both symbolic links are dangling links, they
are treated as being the same; by default, h5diff
returns an exit code of 0. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If only one of the two links is a dangling link,
they are treated as being different and h5diff
returns an exit code of 1. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If both symbolic links point to existing objects,
h5diff compares the two objects.
If any symbolic link specified in the call to h5diff
does not exist, h5diff treats it as an error and
returns an exit code of 2.
--no-dangling-links Must be used with --follow-links option;
otherwise, h5diff shows error message and returns
an exit code of 2.
Check for any symbolic links (soft links or external
links) that do not resolve to an existing object
(dataset, group, or named datatype). If any
dangling link is found, this situation is treated as
an error and h5diff returns an exit code of 2.
-c, --compare List objects that are not comparable
-N, --nan Avoid NaNs detection
-n C, --count=C Print differences up to C number, C is a positive integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive number.
-n C, --count=C Print differences up to C number, C is a positive
integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive
number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive
number.
--use-system-epsilon Print difference if (|a-b| > EPSILON),
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the system epsilon value.
If the system epsilon is not defined, use the value below:
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the
system epsilon value.
If the system epsilon is not defined, use the value
below:
FLT_EPSILON = 1.19209E-07 for float
DBL_EPSILON = 2.22045E-16 for double
-d, -p, and --use-system-epsilon options are used for comparing floating point values.
By default, strict equality is used. Use -p or -d to set specific tolerance.
-d, -p, and --use-system-epsilon options are used for
comparing floating point values.
By default, strict equality is used. Use -p or -d to
set specific tolerance.
Modes of output:
Default mode: print the number of differences found and where they occured
-r Report mode: print the above plus the differences
-v Verbose mode: print the above plus a list of objects and warnings
-q Quiet mode: do not print output
Compare criteria
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
The compare criteria is:
1) datasets: numerical array differences 2) groups: name string difference
3) datatypes: the return value of H5Tequal 4) links: name string difference
of the linked value
1) datasets: numerical array differences
2) groups: name string difference
3) datatypes: the return value of H5Tequal
4) links: name string difference of the linked value as default
(refer to --follow-links option).
Return exit code:
1 if differences found, 0 if no differences, 2 if error
Exit code:
0 if no differences, 1 if differences found, 2 if error
Examples of use:
1) h5diff file1 file2 /g1/dset1 /g1/dset2
Compares object '/g1/dset1' in file1 with '/g1/dset2' in file2
2) h5diff file1 file2 /g1/dset1
Compares object '/g1/dset1' in both files
3) h5diff file1 file2
Compares all objects in both files
Note) file1 and file2 can be the same file. Use
h5diff file1 file1 /g1/dset1 /g1/dset2
to compare '/g1/dset1' and '/g1/dset2' in the same file
Notes:
file1 and file2 can be the same file.
Use h5diff file1 file1 /g1/dset1 /g1/dset2 to compare
'/g1/dset1' and '/g1/dset2' in the same file
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
dataset: </g1/dset3> and </g1/dset4>
6 differences found
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
dataset: </g1/dset3> and </g1/dset4>
6 differences found
EXIT CODE: 1

View File

@@ -4,63 +4,99 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[obj2]]
file2 File name of the second HDF5 file
[obj1] Name of an HDF5 object, in absolute path
[obj2] Name of an HDF5 object, in absolute path
OPTIONS
-h, --help Print a usage message and exit
-V, --version Print version number and exit
-r, --report Report mode. Print differences
-v, --verbose Verbose mode. Print differences, list of objects
-q, --quiet Quiet mode. Do not do output
-h, --help Print a usage message and exit.
-V, --version Print version number and exit.
-r, --report Report mode. Print differences.
-v, --verbose Verbose mode. Print differences, list of objects.
-q, --quiet Quiet mode. Do not produce output.
--follow-links Follow symbolic links (soft links and external links)
and compare the links' target objects.
If symbolic link(s) with the same name exist in the
files being compared, then determine whether the
target of each link is an existing object (dataset,
group, or named datatype) or the link is a dangling
link (a soft or external link pointing to a target
object that does not yet exist).
- If both symbolic links are dangling links, they
are treated as being the same; by default, h5diff
returns an exit code of 0. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If only one of the two links is a dangling link,
they are treated as being different and h5diff
returns an exit code of 1. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If both symbolic links point to existing objects,
h5diff compares the two objects.
If any symbolic link specified in the call to h5diff
does not exist, h5diff treats it as an error and
returns an exit code of 2.
--no-dangling-links Must be used with --follow-links option;
otherwise, h5diff shows error message and returns
an exit code of 2.
Check for any symbolic links (soft links or external
links) that do not resolve to an existing object
(dataset, group, or named datatype). If any
dangling link is found, this situation is treated as
an error and h5diff returns an exit code of 2.
-c, --compare List objects that are not comparable
-N, --nan Avoid NaNs detection
-n C, --count=C Print differences up to C number, C is a positive integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive number.
-n C, --count=C Print differences up to C number, C is a positive
integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive
number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive
number.
--use-system-epsilon Print difference if (|a-b| > EPSILON),
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the system epsilon value.
If the system epsilon is not defined, use the value below:
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the
system epsilon value.
If the system epsilon is not defined, use the value
below:
FLT_EPSILON = 1.19209E-07 for float
DBL_EPSILON = 2.22045E-16 for double
-d, -p, and --use-system-epsilon options are used for comparing floating point values.
By default, strict equality is used. Use -p or -d to set specific tolerance.
-d, -p, and --use-system-epsilon options are used for
comparing floating point values.
By default, strict equality is used. Use -p or -d to
set specific tolerance.
Modes of output:
Default mode: print the number of differences found and where they occured
-r Report mode: print the above plus the differences
-v Verbose mode: print the above plus a list of objects and warnings
-q Quiet mode: do not print output
Compare criteria
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
The compare criteria is:
1) datasets: numerical array differences 2) groups: name string difference
3) datatypes: the return value of H5Tequal 4) links: name string difference
of the linked value
1) datasets: numerical array differences
2) groups: name string difference
3) datatypes: the return value of H5Tequal
4) links: name string difference of the linked value as default
(refer to --follow-links option).
Return exit code:
1 if differences found, 0 if no differences, 2 if error
Exit code:
0 if no differences, 1 if differences found, 2 if error
Examples of use:
1) h5diff file1 file2 /g1/dset1 /g1/dset2
Compares object '/g1/dset1' in file1 with '/g1/dset2' in file2
2) h5diff file1 file2 /g1/dset1
Compares object '/g1/dset1' in both files
3) h5diff file1 file2
Compares all objects in both files
Note) file1 and file2 can be the same file. Use
h5diff file1 file1 /g1/dset1 /g1/dset2
to compare '/g1/dset1' and '/g1/dset2' in the same file
Notes:
file1 and file2 can be the same file.
Use h5diff file1 file1 /g1/dset1 /g1/dset2 to compare
'/g1/dset1' and '/g1/dset2' in the same file
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
dataset: </g1/dset3> and </g1/dset4>
2 differences found
EXIT CODE: 1

View File

@@ -1,2 +1,3 @@
dataset: </g1/dset3> and </g1/dset4>
2 differences found
EXIT CODE: 1

View File

@@ -0,0 +1 @@
EXIT CODE: 0

View File

@@ -1,2 +1,3 @@
dataset: </g1/dset3> and </g1/dset4>
6 differences found
EXIT CODE: 1

View File

@@ -4,63 +4,99 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[obj2]]
file2 File name of the second HDF5 file
[obj1] Name of an HDF5 object, in absolute path
[obj2] Name of an HDF5 object, in absolute path
OPTIONS
-h, --help Print a usage message and exit
-V, --version Print version number and exit
-r, --report Report mode. Print differences
-v, --verbose Verbose mode. Print differences, list of objects
-q, --quiet Quiet mode. Do not do output
-h, --help Print a usage message and exit.
-V, --version Print version number and exit.
-r, --report Report mode. Print differences.
-v, --verbose Verbose mode. Print differences, list of objects.
-q, --quiet Quiet mode. Do not produce output.
--follow-links Follow symbolic links (soft links and external links)
and compare the links' target objects.
If symbolic link(s) with the same name exist in the
files being compared, then determine whether the
target of each link is an existing object (dataset,
group, or named datatype) or the link is a dangling
link (a soft or external link pointing to a target
object that does not yet exist).
- If both symbolic links are dangling links, they
are treated as being the same; by default, h5diff
returns an exit code of 0. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If only one of the two links is a dangling link,
they are treated as being different and h5diff
returns an exit code of 1. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If both symbolic links point to existing objects,
h5diff compares the two objects.
If any symbolic link specified in the call to h5diff
does not exist, h5diff treats it as an error and
returns an exit code of 2.
--no-dangling-links Must be used with --follow-links option;
otherwise, h5diff shows error message and returns
an exit code of 2.
Check for any symbolic links (soft links or external
links) that do not resolve to an existing object
(dataset, group, or named datatype). If any
dangling link is found, this situation is treated as
an error and h5diff returns an exit code of 2.
-c, --compare List objects that are not comparable
-N, --nan Avoid NaNs detection
-n C, --count=C Print differences up to C number, C is a positive integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive number.
-n C, --count=C Print differences up to C number, C is a positive
integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive
number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive
number.
--use-system-epsilon Print difference if (|a-b| > EPSILON),
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the system epsilon value.
If the system epsilon is not defined, use the value below:
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the
system epsilon value.
If the system epsilon is not defined, use the value
below:
FLT_EPSILON = 1.19209E-07 for float
DBL_EPSILON = 2.22045E-16 for double
-d, -p, and --use-system-epsilon options are used for comparing floating point values.
By default, strict equality is used. Use -p or -d to set specific tolerance.
-d, -p, and --use-system-epsilon options are used for
comparing floating point values.
By default, strict equality is used. Use -p or -d to
set specific tolerance.
Modes of output:
Default mode: print the number of differences found and where they occured
-r Report mode: print the above plus the differences
-v Verbose mode: print the above plus a list of objects and warnings
-q Quiet mode: do not print output
Compare criteria
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
The compare criteria is:
1) datasets: numerical array differences 2) groups: name string difference
3) datatypes: the return value of H5Tequal 4) links: name string difference
of the linked value
1) datasets: numerical array differences
2) groups: name string difference
3) datatypes: the return value of H5Tequal
4) links: name string difference of the linked value as default
(refer to --follow-links option).
Return exit code:
1 if differences found, 0 if no differences, 2 if error
Exit code:
0 if no differences, 1 if differences found, 2 if error
Examples of use:
1) h5diff file1 file2 /g1/dset1 /g1/dset2
Compares object '/g1/dset1' in file1 with '/g1/dset2' in file2
2) h5diff file1 file2 /g1/dset1
Compares object '/g1/dset1' in both files
3) h5diff file1 file2
Compares all objects in both files
Note) file1 and file2 can be the same file. Use
h5diff file1 file1 /g1/dset1 /g1/dset2
to compare '/g1/dset1' and '/g1/dset2' in the same file
Notes:
file1 and file2 can be the same file.
Use h5diff file1 file1 /g1/dset1 /g1/dset2 to compare
'/g1/dset1' and '/g1/dset2' in the same file
EXIT CODE: 1

View File

@@ -4,63 +4,99 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[obj2]]
file2 File name of the second HDF5 file
[obj1] Name of an HDF5 object, in absolute path
[obj2] Name of an HDF5 object, in absolute path
OPTIONS
-h, --help Print a usage message and exit
-V, --version Print version number and exit
-r, --report Report mode. Print differences
-v, --verbose Verbose mode. Print differences, list of objects
-q, --quiet Quiet mode. Do not do output
-h, --help Print a usage message and exit.
-V, --version Print version number and exit.
-r, --report Report mode. Print differences.
-v, --verbose Verbose mode. Print differences, list of objects.
-q, --quiet Quiet mode. Do not produce output.
--follow-links Follow symbolic links (soft links and external links)
and compare the links' target objects.
If symbolic link(s) with the same name exist in the
files being compared, then determine whether the
target of each link is an existing object (dataset,
group, or named datatype) or the link is a dangling
link (a soft or external link pointing to a target
object that does not yet exist).
- If both symbolic links are dangling links, they
are treated as being the same; by default, h5diff
returns an exit code of 0. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If only one of the two links is a dangling link,
they are treated as being different and h5diff
returns an exit code of 1. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If both symbolic links point to existing objects,
h5diff compares the two objects.
If any symbolic link specified in the call to h5diff
does not exist, h5diff treats it as an error and
returns an exit code of 2.
--no-dangling-links Must be used with --follow-links option;
otherwise, h5diff shows error message and returns
an exit code of 2.
Check for any symbolic links (soft links or external
links) that do not resolve to an existing object
(dataset, group, or named datatype). If any
dangling link is found, this situation is treated as
an error and h5diff returns an exit code of 2.
-c, --compare List objects that are not comparable
-N, --nan Avoid NaNs detection
-n C, --count=C Print differences up to C number, C is a positive integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive number.
-n C, --count=C Print differences up to C number, C is a positive
integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive
number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive
number.
--use-system-epsilon Print difference if (|a-b| > EPSILON),
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the system epsilon value.
If the system epsilon is not defined, use the value below:
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the
system epsilon value.
If the system epsilon is not defined, use the value
below:
FLT_EPSILON = 1.19209E-07 for float
DBL_EPSILON = 2.22045E-16 for double
-d, -p, and --use-system-epsilon options are used for comparing floating point values.
By default, strict equality is used. Use -p or -d to set specific tolerance.
-d, -p, and --use-system-epsilon options are used for
comparing floating point values.
By default, strict equality is used. Use -p or -d to
set specific tolerance.
Modes of output:
Default mode: print the number of differences found and where they occured
-r Report mode: print the above plus the differences
-v Verbose mode: print the above plus a list of objects and warnings
-q Quiet mode: do not print output
Compare criteria
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
The compare criteria is:
1) datasets: numerical array differences 2) groups: name string difference
3) datatypes: the return value of H5Tequal 4) links: name string difference
of the linked value
1) datasets: numerical array differences
2) groups: name string difference
3) datatypes: the return value of H5Tequal
4) links: name string difference of the linked value as default
(refer to --follow-links option).
Return exit code:
1 if differences found, 0 if no differences, 2 if error
Exit code:
0 if no differences, 1 if differences found, 2 if error
Examples of use:
1) h5diff file1 file2 /g1/dset1 /g1/dset2
Compares object '/g1/dset1' in file1 with '/g1/dset2' in file2
2) h5diff file1 file2 /g1/dset1
Compares object '/g1/dset1' in both files
3) h5diff file1 file2
Compares all objects in both files
Note) file1 and file2 can be the same file. Use
h5diff file1 file1 /g1/dset1 /g1/dset2
to compare '/g1/dset1' and '/g1/dset2' in the same file
Notes:
file1 and file2 can be the same file.
Use h5diff file1 file1 /g1/dset1 /g1/dset2 to compare
'/g1/dset1' and '/g1/dset2' in the same file
EXIT CODE: 1

View File

@@ -4,63 +4,99 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[obj2]]
file2 File name of the second HDF5 file
[obj1] Name of an HDF5 object, in absolute path
[obj2] Name of an HDF5 object, in absolute path
OPTIONS
-h, --help Print a usage message and exit
-V, --version Print version number and exit
-r, --report Report mode. Print differences
-v, --verbose Verbose mode. Print differences, list of objects
-q, --quiet Quiet mode. Do not do output
-h, --help Print a usage message and exit.
-V, --version Print version number and exit.
-r, --report Report mode. Print differences.
-v, --verbose Verbose mode. Print differences, list of objects.
-q, --quiet Quiet mode. Do not produce output.
--follow-links Follow symbolic links (soft links and external links)
and compare the links' target objects.
If symbolic link(s) with the same name exist in the
files being compared, then determine whether the
target of each link is an existing object (dataset,
group, or named datatype) or the link is a dangling
link (a soft or external link pointing to a target
object that does not yet exist).
- If both symbolic links are dangling links, they
are treated as being the same; by default, h5diff
returns an exit code of 0. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If only one of the two links is a dangling link,
they are treated as being different and h5diff
returns an exit code of 1. If, however,
--no-dangling-links is used with --follow-links,
this situation is treated as an error and h5diff
returns an exit code of 2.
- If both symbolic links point to existing objects,
h5diff compares the two objects.
If any symbolic link specified in the call to h5diff
does not exist, h5diff treats it as an error and
returns an exit code of 2.
--no-dangling-links Must be used with --follow-links option;
otherwise, h5diff shows error message and returns
an exit code of 2.
Check for any symbolic links (soft links or external
links) that do not resolve to an existing object
(dataset, group, or named datatype). If any
dangling link is found, this situation is treated as
an error and h5diff returns an exit code of 2.
-c, --compare List objects that are not comparable
-N, --nan Avoid NaNs detection
-n C, --count=C Print differences up to C number, C is a positive integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive number.
-n C, --count=C Print differences up to C number, C is a positive
integer.
-d D, --delta=D Print difference if (|a-b| > D), D is a positive
number.
-p R, --relative=R Print difference if (|(a-b)/b| > R), R is a positive
number.
--use-system-epsilon Print difference if (|a-b| > EPSILON),
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the system epsilon value.
If the system epsilon is not defined, use the value below:
where EPSILON (FLT_EPSILON or FLT_EPSILON) is the
system epsilon value.
If the system epsilon is not defined, use the value
below:
FLT_EPSILON = 1.19209E-07 for float
DBL_EPSILON = 2.22045E-16 for double
-d, -p, and --use-system-epsilon options are used for comparing floating point values.
By default, strict equality is used. Use -p or -d to set specific tolerance.
-d, -p, and --use-system-epsilon options are used for
comparing floating point values.
By default, strict equality is used. Use -p or -d to
set specific tolerance.
Modes of output:
Default mode: print the number of differences found and where they occured
-r Report mode: print the above plus the differences
-v Verbose mode: print the above plus a list of objects and warnings
-q Quiet mode: do not print output
Compare criteria
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
If no objects [obj1[obj2]] are specified, h5diff only compares objects
with the same absolute path in both files
The compare criteria is:
1) datasets: numerical array differences 2) groups: name string difference
3) datatypes: the return value of H5Tequal 4) links: name string difference
of the linked value
1) datasets: numerical array differences
2) groups: name string difference
3) datatypes: the return value of H5Tequal
4) links: name string difference of the linked value as default
(refer to --follow-links option).
Return exit code:
1 if differences found, 0 if no differences, 2 if error
Exit code:
0 if no differences, 1 if differences found, 2 if error
Examples of use:
1) h5diff file1 file2 /g1/dset1 /g1/dset2
Compares object '/g1/dset1' in file1 with '/g1/dset2' in file2
2) h5diff file1 file2 /g1/dset1
Compares object '/g1/dset1' in both files
3) h5diff file1 file2
Compares all objects in both files
Note) file1 and file2 can be the same file. Use
h5diff file1 file1 /g1/dset1 /g1/dset2
to compare '/g1/dset1' and '/g1/dset2' in the same file
Notes:
file1 and file2 can be the same file.
Use h5diff file1 file1 /g1/dset1 /g1/dset2 to compare
'/g1/dset1' and '/g1/dset2' in the same file
EXIT CODE: 1

Some files were not shown because too many files have changed in this diff Show More