rdblue opened a new pull request, #11415: URL: https://github.com/apache/iceberg/pull/11415
This PR adds an implementation of the [Variant encoding spec](https://github.com/apache/parquet-format/blob/master/VariantEncoding.md) that can read serialized Variant buffers. This implementation was written using only the spec to validate that the spec is reasonably complete. The only added public class is `Variants`, which has a limited API and a physical type enum. The surface area will probably expand. The implementation uses `ByteBuffer` and avoids copying. Values are lazily loaded as they are accessed and are initialized using slices of the parent buffer. Reads do not modify the original buffer. All buffers must use little-endian. Most testing is done by constructing variant cases as byte array constants. Many of these values can be used to check other implementations and may be added to the spec. This also includes test methods to create metadata, arrays, and objects for more complex cases such as multi-byte field IDs and offsets. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org