This is an automated email from the ASF dual-hosted git repository.
voonhous pushed a change to branch release-1.2.1
in repository https://gitbox.apache.org/repos/asf/hudi.git
from d12eb478849e fix(common): load single archived instant details (#19385)
add d066e9bc3431 fix(schema): gate timestamp-precision change behind a
per-field verdict (#19029)
add 538e74649433 fix(build): drop duplicate MetricRegistry import in
TestHoodieIncrSource
add a371f8b95f61 fix(reader): give the file group reader schema handler
the merged record-merge properties (#19389)
add 8a435ac951b5 fix(hive-sync): stop HiveDriverPool from swallowing a
failed SQL batch (#19391)
add d7fbe3234f82 feat(trino): resolve merge-required columns from the
table schema (#19288)
add 856776effef1 fix(client): fix NPE in schema conflict resolution on
commits with null writer schema (#19388)
add 68fd7cb4caa4 test(flink): improve streamer config and schema provider
coverage (#19392)
add 4db6e16aa62b feat(release): add a JDK 25 staging path for
org.apache.hudi:hudi-trino (#19410)
add 5050c2663679 test(trino): add MoR read tests for delete markers,
custom payloads and commit-time ordering (#19295)
add 469b8c1cb538 feat(client): enrich write commit callback message and
fire it for table-service commits (#18988)
add 494359e00847 perf(common): avoid UTF-8 allocations in string
comparator (#19414)
add 2f5878549351 fix(hive-sync): make skip_ro_suffix take precedence over
sync_snapshot_with_table_name (#19427)
No new revisions were added by this update.
Summary of changes:
.github/workflows/hudi_trino_ci.yml | 6 +
LICENSE | 12 +
.../common/HoodieWriteCommitCallbackMessage.java | 118 +++++++-
.../util/HoodieWriteCommitCallbackUtil.java | 54 ++++
.../org/apache/hudi/client/BaseHoodieClient.java | 45 +++
.../hudi/client/BaseHoodieTableServiceClient.java | 6 +
.../apache/hudi/client/BaseHoodieWriteClient.java | 33 ++-
...ConcurrentSchemaEvolutionTableSchemaGetter.java | 26 +-
.../SimpleSchemaConflictResolutionStrategy.java | 10 +-
.../org/apache/hudi/config/HoodieWriteConfig.java | 6 +
.../hudi/io/FileGroupReaderBasedMergeHandle.java | 5 +-
.../table/action/commit/HoodieMergeHelper.java | 5 +-
.../TestHoodieWriteCommitCallbackMessage.java | 198 +++++++++++++
.../util/TestHoodieWriteCommitCallbackUtil.java | 146 ++++++++++
...ConcurrentSchemaEvolutionTableSchemaGetter.java | 97 +++++++
...TestSimpleSchemaConflictResolutionStrategy.java | 129 +++++++--
.../hudi/client/HoodieFlinkTableServiceClient.java | 4 +
.../TestHoodieJavaClientOnMergeOnReadStorage.java | 121 ++++++++
.../hudi/common/config/HoodieCommonConfig.java | 22 ++
.../common/table/read/HoodieFileGroupReader.java | 3 +-
.../common/table/timeline/InstantComparator.java | 16 ++
.../versioning/v1/InstantComparatorV1.java | 10 +
.../versioning/v2/InstantComparatorV2.java | 14 +
.../util/TimestampLogicalTypeClassifier.java | 218 ++++++++++++++
.../hudi/internal/schema/action/TableChanges.java | 16 +-
.../schema/utils/AvroSchemaEvolutionUtils.java | 135 ++++++++-
.../internal/schema/utils/SchemaChangeUtils.java | 120 +++++++-
.../read/TestFileGroupReaderDeleteMarkerProps.java | 219 ++++++++++++++
.../table/timeline/TestInstantComparators.java | 35 +++
.../util/TestTimestampLogicalTypeClassifier.java | 143 +++++++++
.../schema/utils/TestAvroSchemaEvolutionUtils.java | 223 +++++++++++++-
.../schema/utils/TestSchemaChangeUtils.java | 123 ++++++++
.../apache/hudi/streamer/FlinkStreamerConfig.java | 4 +-
.../java/org/apache/hudi/util/StreamerUtil.java | 8 +-
.../hudi/configuration/TestOptionsInference.java | 98 +++++++
.../hudi/configuration/TestOptionsResolver.java | 160 ++++++++++-
.../hudi/schema/TestFilebasedSchemaProvider.java | 92 ++++++
.../hudi/schema/TestSchemaRegistryProvider.java | 127 ++++++++
.../sink/clustering/TestFlinkClusteringConfig.java | 110 +++++++
.../sink/compact/TestFlinkCompactionConfig.java | 79 +++++
.../hudi/streamer/TestFlinkStreamerConfig.java | 146 ++++++++++
.../hudi/streamer/TestHoodieFlinkStreamer.java | 224 +++++++++++++++
.../org/apache/hudi/common/util/StringUtils.java | 37 ++-
.../apache/hudi/common/util/TestStringUtils.java | 72 +++++
.../scala/org/apache/hudi/HoodieSchemaUtils.scala | 34 ++-
.../read/TestHoodieFileGroupReaderOnSpark.scala | 37 ++-
.../java/org/apache/hudi/hive/HiveSyncTool.java | 9 +-
.../org/apache/hudi/hive/util/HiveDriverPool.java | 34 ++-
.../org/apache/hudi/hive/TestHiveSyncTool.java | 47 +++
.../apache/hudi/hive/util/TestHiveDriverPool.java | 54 +++-
hudi-trino/pom.xml | 22 +-
.../plugin/hudi/HudiBaseFileOnlyPageSource.java | 22 +-
.../java/io/trino/plugin/hudi/HudiPageSource.java | 24 +-
.../trino/plugin/hudi/HudiPageSourceProvider.java | 135 +++++++--
.../main/java/io/trino/plugin/hudi/HudiUtil.java | 278 ++++++++++++++++--
.../plugin/hudi/reader/HudiTrinoReaderContext.java | 135 ++++-----
.../trino/plugin/hudi/util/HudiAvroSerializer.java | 51 +++-
.../plugin/hudi/util/PrefilledColumnValues.java | 128 +++++++++
.../plugin/hudi/util/SynthesizedColumnHandler.java | 320 ---------------------
.../hudi/util/SynthesizedColumnStrategy.java | 25 --
.../io/trino/plugin/hudi/TestHudiCustomMerger.java | 23 +-
.../plugin/hudi/TestHudiMergeRequiredColumns.java | 242 ++++++++++++++++
.../plugin/hudi/TestHudiMorMergeModeSemantics.java | 135 +++++++++
.../plugin/hudi/TestHudiMorPayloadSemantics.java | 129 +++++++++
.../TestHudiNonProjectionCompatibleMerger.java | 192 +++++++++++++
.../hudi/TestHudiPageSourceProviderTest.java | 23 +-
.../plugin/hudi/TestHudiUtilColumnHandles.java | 303 +++++++++++++++++++
.../plugin/hudi/TestPrefilledColumnValues.java | 182 ++++++++++++
.../AbstractMergerHudiTablesInitializer.java | 297 +++++++++++++++++++
.../CommitTimeOrderingHudiTablesInitializer.java | 129 +++++++++
.../testing/CompositeHudiTablesInitializer.java | 47 +++
.../testing/CustomMergerHudiTablesInitializer.java | 216 ++++----------
.../testing/DmsPayloadHudiTablesInitializer.java | 135 +++++++++
.../EventTimeDeletesHudiTablesInitializer.java | 156 ++++++++++
...crementalCustomMergerHudiTablesInitializer.java | 231 ++++-----------
.../plugin/hudi/testing/MaxRankRecordMerger.java | 6 +-
...ctionCompatibleMergerHudiTablesInitializer.java | 133 +++++++++
...java => NonProjectionCompatibleRankMerger.java} | 57 ++--
.../NonProjectionCompatibleTestRecordMerger.java | 7 +-
.../OmittedOrderingFieldHudiTablesInitializer.java | 126 ++++++++
.../OmittedRankFieldHudiTablesInitializer.java | 135 +++++++++
...iteNonDefaultsPayloadHudiTablesInitializer.java | 123 ++++++++
.../PayloadOnlyMergerHudiTablesInitializer.java | 209 ++++++++++++++
.../plugin/hudi/testing/RankBasedTestPayload.java | 79 +++++
.../SummingPayloadHudiTablesInitializer.java | 131 +++++++++
.../plugin/hudi/testing/SummingTestPayload.java | 72 +++++
.../deltastreamer/TestHoodieDeltaStreamer.java | 97 ++++++-
.../utilities/sources/TestHoodieIncrSource.java | 1 -
release/release_guide.md | 26 +-
...ars_java17.sh => deploy_staging_jars_java25.sh} | 33 +--
scripts/release/validate_source_copyright.sh | 5 +-
scripts/release/validate_staged_bundles.sh | 2 +
92 files changed, 7434 insertions(+), 1078 deletions(-)
create mode 100644
hudi-client/hudi-client-common/src/test/java/org/apache/hudi/callback/common/TestHoodieWriteCommitCallbackMessage.java
create mode 100644
hudi-client/hudi-client-common/src/test/java/org/apache/hudi/callback/util/TestHoodieWriteCommitCallbackUtil.java
create mode 100644
hudi-common/src/main/java/org/apache/hudi/common/util/TimestampLogicalTypeClassifier.java
create mode 100644
hudi-common/src/test/java/org/apache/hudi/common/table/read/TestFileGroupReaderDeleteMarkerProps.java
create mode 100644
hudi-common/src/test/java/org/apache/hudi/common/util/TestTimestampLogicalTypeClassifier.java
create mode 100644
hudi-common/src/test/java/org/apache/hudi/internal/schema/utils/TestSchemaChangeUtils.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/schema/TestFilebasedSchemaProvider.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/schema/TestSchemaRegistryProvider.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/sink/clustering/TestFlinkClusteringConfig.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/sink/compact/TestFlinkCompactionConfig.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/streamer/TestFlinkStreamerConfig.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/streamer/TestHoodieFlinkStreamer.java
create mode 100644
hudi-trino/src/main/java/io/trino/plugin/hudi/util/PrefilledColumnValues.java
delete mode 100644
hudi-trino/src/main/java/io/trino/plugin/hudi/util/SynthesizedColumnHandler.java
delete mode 100644
hudi-trino/src/main/java/io/trino/plugin/hudi/util/SynthesizedColumnStrategy.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/TestHudiMergeRequiredColumns.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/TestHudiMorMergeModeSemantics.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/TestHudiMorPayloadSemantics.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/TestHudiNonProjectionCompatibleMerger.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/TestHudiUtilColumnHandles.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/TestPrefilledColumnValues.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/AbstractMergerHudiTablesInitializer.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/CommitTimeOrderingHudiTablesInitializer.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/CompositeHudiTablesInitializer.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/DmsPayloadHudiTablesInitializer.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/EventTimeDeletesHudiTablesInitializer.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/NonProjectionCompatibleMergerHudiTablesInitializer.java
copy
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/{MaxRankRecordMerger.java
=> NonProjectionCompatibleRankMerger.java} (52%)
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/OmittedOrderingFieldHudiTablesInitializer.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/OmittedRankFieldHudiTablesInitializer.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/OverwriteNonDefaultsPayloadHudiTablesInitializer.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/PayloadOnlyMergerHudiTablesInitializer.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/RankBasedTestPayload.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/SummingPayloadHudiTablesInitializer.java
create mode 100644
hudi-trino/src/test/java/io/trino/plugin/hudi/testing/SummingTestPayload.java
copy scripts/release/{deploy_staging_jars_java17.sh =>
deploy_staging_jars_java25.sh} (70%)