update for HDFFV-7523 JPSS: h5dump fails to open an attribute when using the -a option to specify an attribute with a slash in the name
Description:
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.
Merged from HDF5 trunk r22052, r22063, r22108
Tested:
jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), Windows (32-LE cmake), Cmake (jam)
Bring r22112 from trunk to 1.8 branch:
Minor code safety issue in test/fheap.c and whitespace in other files.
Tested on:
Mac OSX/64 10.7.3 (amazon) w/debug
(Too minor to require h5committest)
Fix for HDFFV-7835 h5diff: incorrect result for comparing the two same type symlinks as dangling links.
Description:
When two symbolic dangling links are compared with --follow-symlinks option,
the result should be same. It works for comparing two files, but didn't work
for comparing two objects.
Test cases were added and tagged with jira#.
Merged from HDF5 trunk r22038.
Tested:
jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Windows (32-LE cmake), Cmake (jam)
If a link is specified on the command with the -d option, call the handle_links function on error from the H5Dopen command.
Updated test file results with error stack when link not found.
Tested: trunk
HDFFV-7602 - GMQS: HDF5 command tools: Provide framework for reusable test files among tools
Stage2 working for h5ls tool.
Description:
Update cmake script to fetch test files from any tools to a test directory
and run test in organized manner.
Also keep the apperance similiar to shell script for better maintainance.
Tested:
CMake (Windows and jam)
Task for HDFFV-7862 - Select data by chunk direction to improve performance in h5repack
Description:
h5repack sometimes became very slow when handling big chunked datasets in
certain cases. (when chunk boundary doesn't match with a hyperslab boundary.)
The main issue was from figuring out a hypeslab without considering chunk
boundary to read from and write to such datasets.
The update was made to figure out a better hyperslab unit with considering
chunk boundary to improve performance for such cases prior to the update.
Tested:
jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Windows
Merge 1.8 and h5dump/tools and tests based on tools library from trunk.
Reduced warnings.
HDFFV-7949:
Remove duplicated functions in h5ls
Tested: local linux,h5committest
Bring r21932 & r21934 from trunk to 1.8 branch:
r21932:
Correct misnamed FUNC_ENTER macro.
r21934:
Remove some leftover uses of the __FUNCTION__ macro, replacing them with
FUNC macro, as used everywhere else.
Tested on:
Mac OSX/64 10.7.3 (amazon) w/debug & production
HDFFV-7602 - GMQS: HDF5 command tools: Provide framework for reusable test files among tools
Stage2 working for h5repack cmake test.
Description:
Update cmake script to clean up correctly.
Revisit h5repack cmake test script updated from r21870.
Also sync with HDF5 trunk. (Jira 2605)
Tested:
cmake test for Windows (32-LE) and jam (linux32-LE)
Fix for HDFFV-7836 h5diff: displays error stack message for comparing the two dangling symlink with follow-symlinks option
Description:
While ago, to improve performance, skipping same object checking
(h5tools_is_obj_same()) was added.
However the checking function doesn't understand about the dangling link and
caused the issue.
Since handling dangling link code section already implemented, move the
checking function after handling dangling-links to address the problem.
Test was added and tagged with jira#.
Tested:
jam (linux32-LE), koala (linux64-LE), ostrich (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Windows (32-LE cmake), Cmake (jam)
HDFFV-7602 - GMQS: HDF5 command tools: Provide framework for reusable test files among tools
Stage2 working for h5copy tool.
Description:
Update cmake script to fetch test files from anywhere.
Also keep the apperance similiar to shell script for better maintainance.
some updated shell script.
Merged from HDF5 trunk r21874
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Windows (32-LE cmake), Cmake (jam)
Fix for HDFFV-7840 h5repack: memory leak over one of the h5diff test file
Description:
Turned out that there were two causes of memory leaks.
1. for handling variable length string in attribute.
2. for handling compound type with non-reference members.
The first issue is fixed in copy_attr() which is updated to use h5tools_detect_vlen to take care of vlen string as well as vlen data.
The second is fixed in copy_refs_attr() of compound handling code.
Merged from HDF5 trunk r21869.
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Windows (32-LE cmake), Cmake (jam)
Fix for HDFFV-7838 h5ls: segfault for handling region reference in attribute with -v option
Description:
Segfault occurred when h5ls access region reference data in an attribute.
This didn't occurred when -v option was used.
The cause was "h5tool_format_t info;" struct variable members were accessed
without proper values were assigned (was NULL), so printf failed later in the code.
Merged from HDF5 trunk r21865.
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), , cmake-Windows (32-LE)
Add test case to unix test-script for "HDFFV-2567 - added test for be generated files with at least 9 attributes at root". It's committed previously as r21812 along with Cmake test.
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
HDFFV-7770 - h5diff segmentation fault on JPSS files
Description:
Fixed segfault over non-comparable attribute with different dimention or
rank, along with '-c' option to display details.
Merged from HDF5 trunk r21658.
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Windows, Cmake
Purpose: Add generic skip list implementation
Description:
Added new H5SL_TYPE_GENERIC skip list type, which uses void *'s as keys and a
client-supplied callback for key comparison. This was added to support the
upcoming "merge named datatype" feature for H5Ocopy, but may be used in other
places as well. Also added testing.
Also fixed a potential bug with the H5SL_TYPE_OBJ implementation, and added
testing for that.
Tested: jam, koala, heiwa (h5committest), durandal
Purpose: Update fix committed in r21556
Description:
An old patch was mistakenly committed in r21556. Replaced this fix with the
latest.
Tested: jam, koala, heiwa (h5committest)
Replace contents of tnofilename.ddl with contents from tnofilename-with-packed-bits.ddl and use tnofilename.ddl in h5dump test scripts
Test local linux: cmake
Purpose: Add generic skip list implementation
Description:
Added new H5SL_TYPE_GENERIC skip list type, which uses void *'s as keys and a
client-supplied callback for key comparison. This was added to support the
upcoming "merge named datatype" feature for H5Ocopy, but may be used in other
places as well. Also added testing.
Also fixed a potential bug with the H5SL_TYPE_OBJ implementation, and added
testing for that.
Tested: jam, koala, heiwa (h5committest), durandal
h5dump was used in test script but was not invoked by RUNSERIAL.
THis does not work in batch machines like Blue Gene in LLNL.
Solution:
Added $RUNSERIAL to invoke $H5DUMP_BIN.
Tested:
LLNL BlueGene (udawn)
Function TOOLTEST_OUTPUT does not filter the extra system messages sent to
stdout or stderr, thus causing output mismatched with expected output.
Solution:
Added STDOUT_FILTER and STDERR_FILTER to filter them out.
Tested:
Tested LLNL uDawn (Blue-Gene cluster), for serial mode only.
Skip parallel diff test "-c non_comparables1.h5 non_comparables2.h5" due
to hanging issue occurring on koala (linux64-LE) intermittently.
Plan to put back when resolved.
The test was related to J7693.
Merged from HDF5 trunk r21413.
Tested:
jam (linux32-LE), koala (linux64-LE)
HDFFV-7693 - h5diff produces different behavior between versions: 1.8.3 and 1.8.6
Description:
There were two issues on this.
One was not displaying all the comparable objects if non-comparable
object/attribute exist and compared before comparables ones. This issue
occurred after 1.8.4 release. This is the issue from user.
The other issue was not displaying all the comparable attributes,
if non-comparable object/attribute exist and compared ahead. This issue
were exist even before 1.8.4 release. So it's possible some attribute
comparison may have not displayed correctly in the past, if non-comparable
data were exist in common object.
Fixed h5diff to display all the comparable object and attribute regardless
of non-comparables.
Merged from HDF5 trunk r21396 and r21397.
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Cmake (jam, Windows)
HDFFV-5932 - h5repack breaks files with dimension scales
Description:
- Fixed h5repack to update values of references(object and region) of
attributes in h5repack for 1) references, 2) ARRAY of references,
3) VLEN of references, and 4) COMPOUND of references.
- Merged from HDF5 trunk 21393, 21382, 21386, 21389. (support Peter)
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE)
tempint = (tempint >> packed_data_offset) & packed_data_mask;
The right shift may cause undefined behavior if PACKED_DATA_OFFSET is
32-bit or more. For every kind of native integers, I changed the code
to make it zero if PACKED_DATA_OFFSET is greater than or equal to the
size of integer.
Tested on jam and on MacOS with CLANG compiler.
HDFFV-2511 - GMQS: h5repack: some tests failed in -q32 AIX
Description:
- Need to be Merged from HDF5 trunk r21283 also, which was missed from previous checkin.
- Previously Merged from HDF5 trunk r21265
- Added macro to handle failure in H5Dread/write when memory allocation
failed inside the library. Add graceful error message when lack of
memory error occurs from HDF5 lib. (XCAO)
Tested:
jam (linux32-LE), koala (linux64-LE)
HDFFV-2511 - GMQS: h5repack: some tests failed in -q32 AIX
Description:
- Merged from HDF5 trunk r21265
- Added macro to handle failure in H5Dread/write when memory allocation
failed inside the library (XCAO)
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE)
Work for:
HDFFV-7515 - GMQS: h5unjam - incorrect help page and should display when
no file is given.
and
HDFFV-5941 - h5jam: specifying a user block file with a proper HDF5 magic
number will result in a corrupted HDF5 file.
Description:
- Merged from HDF5 trunk r21236,
- Revised command help pages of h5jam and h5unjam. The descriptions
were not up to date and some were missing. (HDFFV-7515)
- Fixed h5jam not to allow specifying an HDF5 formatted file as input
file for -u (user block file) option, because the original HDF5 file
will not be accessible if allows. (HDFFV-5941)
Tested:
jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), cmake (jam, win)
Merged from HDF5 trunk r21237.
Add test cases for HDFFV-7656 - "--delta=something" considers two NaN of the same type are different.
The fix was added (r21105) before but test cases were incorrectly added and missing for cmake script.
Tested:
jam (linux32-LE), koala (linux64-LE), tejeda (mac32-LE), cmake (jam)