Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix errors and ambiguities in the storage format specification. (#5101)
[SC-49755](https://app.shortcut.com/tiledb-inc/story/49755/incorrect-storage-format-specification-of-encrypted-chunk-metadata) [SC-49761](https://app.shortcut.com/tiledb-inc/story/49761/ambiguities-the-filter-pipeline-format-specification) This PR updates the storage format specification to fix some errors and ambiguities. Specifically: * The specification for encrypted tiles specified two structures: `AESPart` for data parts and the more complex `AESPartMD` for metadata parts. The latter however was not used, and in fact the Core has been treating both data and metadata parts the same.[^1][^2] The specification of `AESPartMD` was removed. * The dictionary filter was specified to both serialize and not serialize options. The former is true[^3] and the specification was updated. * It was ambiguous whether the phrase "Used for" in the _Reinterpret datatype_ field meant that for the non-delta compression filters the field is serialized and ignored, or not serialized at all. The latter is true[^4] and the ambiguity was resolved by breaking the options table into two; one for non-delta compression filters and one for delta compression filters. [^1]: https://github.com/TileDB-Inc/TileDB/blob/e95cf44ed4bc06fe1bdf43bcc6e5fc1f3a4afd28/tiledb/sm/filter/encryption_aes256gcm_filter.h#L46-L78 [^2]: https://github.com/TileDB-Inc/TileDB/blob/392270851c0e39925f43ec22810498e6dd09334e/tiledb/sm/filter/encryption_aes256gcm_filter.cc#L166-L170 [^3]: https://github.com/TileDB-Inc/TileDB/blob/392270851c0e39925f43ec22810498e6dd09334e/tiledb/sm/enums/compressor.h#L64-L65 [^4]: https://github.com/TileDB-Inc/TileDB/blob/392270851c0e39925f43ec22810498e6dd09334e/tiledb/sm/filter/compression_filter.cc#L713-L716 --- TYPE: FORMAT DESC: Update the storage format specification to fix errors and ambiguities in the serialized options and tiles of the compression and encryption filters.
- Loading branch information