summaryrefslogtreecommitdiffstats
path: root/src/H5Fquery.c
diff options
context:
space:
mode:
authorMike McGreevy <mamcgree@hdfgroup.org>2012-03-02 16:18:38 (GMT)
committerMike McGreevy <mamcgree@hdfgroup.org>2012-03-02 16:18:38 (GMT)
commitfdf48fa1bf003446c449852b4e1c895fa601ad72 (patch)
tree018ec41e859c02fb66ebf996dec0d70f52a2cd98 /src/H5Fquery.c
parent0a18a098eabbdeb20382b044130b7ef998a3918e (diff)
downloadhdf5-fdf48fa1bf003446c449852b4e1c895fa601ad72.zip
hdf5-fdf48fa1bf003446c449852b4e1c895fa601ad72.tar.gz
hdf5-fdf48fa1bf003446c449852b4e1c895fa601ad72.tar.bz2
[svn-r22016] Purpose:
- Switch avoid_truncate from bool to enum - Enable 'EOA' message with latest format. Description: Switched the 'avoid truncate' property from a bool (on/off) to an enum with the following states (for now): H5F_AVOID_TRUNCATE_OFF : file will always be truncated at file close H5F_AVOID_TRUNCATE_EXTEND: file will only be truncated on file close if that truncation results in a smaller file. H5F_AVOID_TRUNCATE_ALL: file will never be truncated on file close. These may be renamed after RFC discussion ... This also resulted in a change in the API controlling the property, as well as the internal querying function. Also, using the latest format in a fapl when creating a file will now also trigger writing of an 'EOA' message and usage of avoid truncate feature. The default setting in this case is H5F_AVOID_TRUNCATE_EXTEND, as this will still allow files to reduce in size when space can be reclaimed. The above required some changes to expected test cases since the file format when the latest format is used now includes an 'EOA' message. A handful of the h5mkgrp test files had their locations updated, and the cache_tagging test was updated to account for superblock extension in the latest case. The change to an 'enum' required an update to the 'EOA' message, since there is no longer a one-to-one correspondence between the avoid truncate property setting and whether or not to store an EOA. As such, the avoid truncate property setting has been added into the EOA message, and a new EOA message struct created, H5O_eoa_t, to house it along with the EOA value. (message previously consisted of just the EOA value). The above change was propogated as needed, including changes made to the h5extend tool in order to account for the changes needed in acquiring the EOA value from the message stored in the superblock extension. Finally, the test file trunc_detect was renamed 'truncation' since it does more than just test truncation detection. It was also refactored to account for the enumerated setting, and divided into three distinct parts: testing of setting the avoid truncate property, testing truncation occurence, and testing truncation detection. Additionally, in passing: - Removed unused udata argument from H5FDcoordinate. - Updated trace file for H5F_avoid_truncate_t type. Tested: h5committest and manually on jam w/ check-vfd.
Diffstat (limited to 'src/H5Fquery.c')
-rw-r--r--src/H5Fquery.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/H5Fquery.c b/src/H5Fquery.c
index 947e46b..8323149 100644
--- a/src/H5Fquery.c
+++ b/src/H5Fquery.c
@@ -1089,7 +1089,7 @@ H5F_use_tmp_space(const H5F_t *f)
*
*-------------------------------------------------------------------------
*/
-hbool_t
+H5F_avoid_truncate_t
H5F_avoid_truncate(const H5F_t *f)
{
/* Use FUNC_ENTER_NOAPI_NOINIT_NOFUNC here to avoid performance issues */