+1 (binding)

- Source release: checksum, signature, LICENSE/NOTICE/DISCLAIMER, no
binaries, RAT all pass
- Source tarball matches the release-1.2.1-rc2 tag; RC1 to RC2 delta is the
3 listed PRs
- Built from source with JDK 11 (-Dspark3.5 -Dflink2.1); hudi-common unit
tests pass
- Staged Spark 3.5, Flink 2.1 and utilities bundles: sha1 and GPG verified,
contents match the local build
- Spark 3.5.5 (JDK 11 and 17), COW and MOR: insert/upsert/delete, time
travel, incremental, compaction, read-optimized, metadata table with record
index
- Spark SQL: CREATE/INSERT/UPDATE/DELETE/MERGE INTO, _ro/_rt,
hudi_table_changes, show_commits
- HoodieStreamer with the staged utilities-slim bundle: ParquetDFSSource to
MOR, upserts and inline compaction verified

Thanks, Voon, for driving the release.

Best,
- Ethan

On Fri, Sep 18, 2026 at 1:20 PM Vinish Reddy <[email protected]> wrote:

> +1 (non-binding)
>
> Thank you, Voon, for preparing the second release candidate.
>
> I validated release-1.2.1-rc2 (2a8f71144873) as a member of the Apache
> XTable (incubating) community. I tested a local source build with
> Spark 3.x and Scala 2.12. I checked the sha512 checksum and the
> signature against the key in this vote. I also checked that the source
> release matches the tag.
>
> The tests passed for three XTable changes.
> - Table version 9 support (#835). The full xtable-core suite passed,
> including column statistics for partitioned tables with externally
> registered files.
> - Hudi secondary indexes for Iceberg tables (#935). The full
> xtable-core suite passed, including file and row position checks
> across inserts, updates, and deletes.
> - Iceberg support through HoodieTableFormat (#894). The module passed
> 25 integration tests and 7 unit tests, with one skip for a known
> limitation.
>
> For externally written Parquet files without record keys - positional
> record keys, secondary key mappings, deletes during replace commits,
> and validation checks all behaved as expected.
>
> One compatibility concern remains from RC1, but it does not block my
> vote. HoodieCleanStat exposed two public constructors in 1.2.0.
> Version 1.2.1 removes the seven-argument constructor and makes the
> eleven-argument constructor non-public. These changes break source and
> binary compatibility for callers that use these constructors. XTable
> now uses the builder, but a release note could help other consumers.
>
> Thanks,
> Vinish
>

Reply via email to