summaryrefslogtreecommitdiffstats
path: root/test/CMakeTests.cmake
diff options
context:
space:
mode:
authorVailin Choi <vchoi@jam.ad.hdfgroup.org>2018-12-28 22:49:11 (GMT)
committerVailin Choi <vchoi@jam.ad.hdfgroup.org>2018-12-28 22:49:11 (GMT)
commitf808c108ed0315f115a7c69cbd8ee95032a64b34 (patch)
tree8f196f0f849958019b496027e00a87ed79b0d119 /test/CMakeTests.cmake
parentba095e6a53a919c9753463c3800a26b180b7a135 (diff)
downloadhdf5-f808c108ed0315f115a7c69cbd8ee95032a64b34.zip
hdf5-f808c108ed0315f115a7c69cbd8ee95032a64b34.tar.gz
hdf5-f808c108ed0315f115a7c69cbd8ee95032a64b34.tar.bz2
Fix for HDFFV-10659: The library abort with "infinite loop closing library"
after deleting attributes in densed storage. The fix: When deleting attribute nodes from the name index v2 B-tree, if an attribute is found in the intermediate B-tree nodes, which may be merged/redistributed in the process, we need to free the dynamically allocated spaces for the intermediate decoded attribute.
Diffstat (limited to 'test/CMakeTests.cmake')
-rw-r--r--test/CMakeTests.cmake21
1 files changed, 20 insertions, 1 deletions
diff --git a/test/CMakeTests.cmake b/test/CMakeTests.cmake
index 26faba6..575eb6d 100644
--- a/test/CMakeTests.cmake
+++ b/test/CMakeTests.cmake
@@ -517,6 +517,7 @@ set (test_CLEANFILES
flushrefresh_VERIFICATION_CHECKPOINT2
flushrefresh_VERIFICATION_DONE
filenotclosed.h5
+ del_many_dense_attrs.h5
atomic_data
accum_swmr_big.h5
ohdr_swmr.h5
@@ -793,6 +794,7 @@ set_tests_properties (H5TEST-tcheck_version-release PROPERTIES
# atomic_reader
# links_env
# filenotclosed
+# del_many_dense_attrs
# flushrefresh
##############################################################################
# autotools script tests
@@ -800,7 +802,7 @@ set_tests_properties (H5TEST-tcheck_version-release PROPERTIES
# NOT CONVERTED accum_swmr_reader is used by accum.c.
# NOT CONVERTED atomic_writer and atomic_reader are standalone programs.
# links_env is used by testlinks_env.sh
-# filenotclosed is used by test_filenotclosed.sh
+# filenotclosed and del_many_dense_attrs are used by testabort_fail.sh
# NOT CONVERTED flushrefresh is used by testflushrefresh.sh.
# NOT CONVERTED use_append_chunk, use_append_mchunks and use_disable_mdc_flushes are used by test_usecases.sh
# NOT CONVERTED swmr_* files (besides swmr.c) are used by testswmr.sh.
@@ -827,6 +829,23 @@ set_tests_properties (H5TEST-filenotclosed PROPERTIES
WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST
)
+#-- Adding test for del_many_dense_attrs
+add_test (
+ NAME H5TEST-clear-del_many_dense_attrs-objects
+ COMMAND ${CMAKE_COMMAND}
+ -E remove
+ del_many_dense_attrs.h5
+ WORKING_DIRECTORY
+ ${HDF5_TEST_BINARY_DIR}/H5TEST
+)
+set_tests_properties (H5TEST-clear-del_many_dense_attrs-objects PROPERTIES FIXTURES_SETUP del_many_dense_attrs_clear_objects)
+add_test (NAME H5TEST-del_many_dense_attrs COMMAND $<TARGET_FILE:del_many_dense_attrs>)
+set_tests_properties (H5TEST-del_many_dense_attrs PROPERTIES
+ FIXTURES_REQUIRED del_many_dense_attrs_clear_objects
+ ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST"
+ WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST
+)
+
#-- Adding test for err_compat
if (HDF5_ENABLE_DEPRECATED_SYMBOLS)
add_test (NAME H5TEST-clear-err_compat-objects