![]() |
HDF5
1.15.0
API Reference
|
Functions | |
herr_t | H5Fget_metadata_read_retry_info (hid_t file_id, H5F_retry_info_t *info) |
Retrieves the collection of read retries for metadata entries with checksum. More... | |
herr_t | H5Fstart_swmr_write (hid_t file_id) |
Retrieves free-space section information for a file. More... | |
herr_t H5Fget_metadata_read_retry_info | ( | hid_t | file_id, |
H5F_retry_info_t * | info | ||
) |
Retrieves the collection of read retries for metadata entries with checksum.
[in] | file_id | File identifier |
[out] | info | Struct containing the collection of read retries for metadata entries with checksum |
Failure Modes:
retries
failed.H5Fget_metadata_read_retry_info() retrieves information regarding the number of read retries for metadata entries with checksum for the file file_id
. This information is reported in the H5F_retry_info_t struct defined in H5Fpublic.h as follows:
nbins
is the number of bins for each retries
[i] of metadata entry i
. It is calculated based on the current number of read attempts used in the library and logarithmic base 10.
If read retries are incurred for a metadata entry i
, the library will allocate memory for retries[i] (nbins * sizeof(uint32_t)
and store the collection of retries there. If there are no retries for a metadata entry i
, retries[i]
will be NULL. After a call to this routine, users should free each retries[i]
that is non-NULL, otherwise resource leak will occur.
For the library default read attempts of 100 for SWMR access, nbins will be 2 as depicted below:
retries[i][0]
is the number of 1 to 9 read retries. retries[i][1]
is the number of 10 to 99 read retries. For the library default read attempts of 1 for non-SWMR access, nbins
will be 0 and each retries[i]
will be NULL.The following table lists the 21 metadata entries of retries[]
:
Index for retries[] | Metadata entries* |
---|---|
0 | Object header (version 2) |
1 | Object header chunk (version 2) |
2 | B-tree header (version 2) |
3 | B-tree internal node (version 2) |
4 | B-tree leaf node (version 2) |
5 | Fractal heap header |
6 | Fractal heap direct block (optional checksum) |
7 | Fractal heap indirect block |
8 | Free-space header |
9 | Free-space sections |
10 | Shared object header message table |
11 | Shared message record list |
12 | Extensive array header |
13 | Extensive array index block |
14 | Extensive array super block |
15 | Extensive array data block |
16 | Extensive array data block page |
17 | Fixed array super block |
18 | Fixed array data block |
19 | Fixed array data block page |
20 | File's superblock (version 2) |
* All entries are of version 0 (zero) unless indicated otherwise. |
Retrieves free-space section information for a file.
[in] | file_id | File identifier |
H5Fstart_swmr_write() will activate SWMR writing mode for a file associated with file_id
. This routine will prepare and ensure the file is safe for SWMR writing as follows:
Library objects are groups, datasets, and committed datatypes. For the current implementation, groups and datasets can remain open when activating SWMR writing mode, but not committed datatypes. Attributes attached to objects cannot remain open either.