Fix for issue #6365#6469
Conversation
| </tr> | ||
| <tr align="center"> | ||
| <td colspan="4">Dimension 0 Size</td> | ||
| <td colspan="4">Dimension 1 Size</td> |
There was a problem hiding this comment.
Shouldn't these stay 0-based and instead "Dimension #n" below should be changed to n - 1? Otherwise, this seems to conflict with the text below that uses "(n - 1)" when referring to dimensions stored.
There was a problem hiding this comment.
If you look at the field "dimensionality" description, "For chunked storage, the value stored is one greater than the dataset’s actual number of dimemsions. For example, a 1-dimensional dataset stores a value of 2. This increment accounts for the dataset element size which occupies the final dimension entry."
There was a problem hiding this comment.
But assuming indices are still 0-based here, what's stored is the sizes for dimension 0..(n-1) and the dataset element size just happens to be an extra element in that "array".
There was a problem hiding this comment.
When you mentioned above conflicting with the text "(n-1)" which line are you referring to?
There was a problem hiding this comment.
In this diff it's line 7700. That text pretty much states what I'd expect: For an n-dimensional dataset (for n >= 2), dimensions 0..(n-1) are stored and then the dataset element size is stored. The dataset element size is part of the dimensions "array", but it's not really a dimension itself.
There was a problem hiding this comment.
So actually I should have the following:
In the layout table:
"Dimension 0 Size, Dimension 1 size,.... Dimension (n-1) size, Dataset element size"
And in the description table:
For chunked storage, the dimensions define the size of a single chunk. They are in units of array elements (not bytes). The first dimension stored in the list of dimensions is the slowest changing dimension and the (n - 1) dimension stored is the fastest changing dimension.
For an n-dimensional dataset (for n >= 2), dimensions 0..(n-1) are stored and then the dataset element size is stored. The dataset element size is part of the dimensions "array", but it's not really a dimension itself.
There was a problem hiding this comment.
"Dimension 0 Size, Dimension 1 size,.... Dimension (n-1) size, Dataset element size"
Yes, this part is what I think the layout table should say.
For an n-dimensional dataset (for n >= 2), dimensions 0..(n-1) are stored and then the dataset element size is stored. The dataset element size is part of the dimensions "array", but it's not really a dimension itself.
These were just my own words summarizing the encoding; I think the text currently in the description table in this diff is fine as is and you don't need to add these words.
Review ChecklistThis PR touches the following areas. Each needs a sign-off
|
Clarify the description for the chunked dataset's dimensions.