Errors in HDF version 3 file format for BTree2
- Dominant language
- C
- Stars
- 988
- Forks
- 355
- Avg merge
- 4d 2h
- Merged PRs (30d)
- 12
Description
At https://support.hdfgroup.org/documentation/hdf5/latest/_f_m_t3.html#subsec_fmt3_appendixc_appv2btree
1. Just below
` Layout: Version 2 B-tree, Type 10 Record Layout - Non-filtered Dataset Chunks
`
is
` Fields: Version 2 B-tree, Type 11 Record Layout - Filtered Dataset Chunks
`
should be
` Fields: Version 2 B-tree, Type 10 Record Layout - Non-filtered Filtered Dataset Chunks
`
2. Also, it appears that you dont store the number of dimensions in this structure or the related structure? If so, this means that the structure cant be read "on its own", but needs auxiliay information that might be incorrect.
3. Similarly, just below
` Layout: Version 2 B-tree, Type 11 Record Layout - Filtered Dataset Chunks
`
is
` Fields: Version 2 B-tree, Type 5 Record Layout - Non-filtered Dataset Chunks
`
should be
` Fields: Version 2 B-tree, Type 11 Record Layout - Filtered Dataset Chunks
`
4. which also doenst store the number of dimensions.
5. Also in that structure, you have a "variable size" field:
` Chunk Size (variable size; at most 8 bytes)
`
but you dont say what the variable size depends on. In any case its poor design to have a variable length field here, theres no purpose to it.
6. You also have variable length fields in the structure
` Fields: Version 2 B-tree Internal Node
`
namely
```
Number of Records in Child Node
Total Number of Records in Child Node
```
for no purpose, and have a complicated explanation on how to calculate.
Contributor guide
Assessment
This issue has not been assessed yet.