Hi community,

I’d like to follow up on our community sync to proceed with finalizing the
variant spec.

Per the Parquet specification requirements, two reference implementations
are needed to finalize the Variant logical type. Both Java and Go
implementations now support variant encoding and shredding.

Java already has the encoding and shredding implementations in place:
apache/parquet-java#3197 <https://github.com/apache/parquet-java/pull/3197>
apache/parquet-java#3202 <https://github.com/apache/parquet-java/pull/3202>
apache/parquet-java#3223
<https://github.com/apache/parquet-java/issues/3223>
apache/parquet-java#3211
<https://github.com/apache/parquet-java/issues/3211>

Go also includes encoding and shredding support:
apache/arrow-go#344 <https://github.com/apache/arrow-go/pull/344>
apache/arrow-go#434 <https://github.com/apache/arrow-go/pull/434>

In addition, we have also completed cross-language validations between the
Java and Go implementations (PR#3258
<https://github.com/apache/parquet-java/pull/3258> and PR#455
<https://github.com/apache/arrow-go/pull/455>) to confirm compatibility and
make sure that the specs can be interpreted consistently. Rust has also
validated against the Variant test suites in PR#8104
<https://github.com/apache/arrow-rs/pull/8104>.

Given this progress, I propose that we remove the "under development" notes
from the documentation and move forward with finalizing the specifications (PR
#509 <https://github.com/apache/parquet-format/pull/509>).
This vote will be open for at least 72 hours.

[ ] +1 Finalize Varint and Shredding Spec
[ ] +0
[ ] -1 Do not release this because...

Reply via email to