This is an automated email from the ASF dual-hosted git repository.
danny0405 pushed a change to branch release-0.14.2
in repository https://gitbox.apache.org/repos/asf/hudi.git
omit 648895bd5777 Bumping release candidate number 0.14.2-rc1
add 344a8b9da44a fix: Recreate tables during meta sync on certain
exceptions (#18218)
add 6ff2eb94af76 fix: cherry-picking for 0.14.2 release (#17924)
add 0212323882d9 fix: Set credentials for Hive metastore based lock
provider (#18216)
add 701b58437a97 [MINOR] Support schema evolution with nested data type
(#18217)
add 7f6c5a5381dd [HUDI-8490] Change implicit lock provider lock key scheme
(#18222)
add c8f2b9bf4e98 [HUDI-9666] Fix the record key encoding with a single
record key field and add a guard for complex key generator (#18223)
add a7a2cfde2955 [HUDI-9159] Add support for StorageBasedLockProvider
(#17970)
add 44fa4c167820 MINOR: Fix clustering row writer to avoid using timestamp
based reads (#18476)
add a1ac3078495c fix: timestamp logical types (#18132)
add 0c47d30c8f2a [HUDI-8371][CHERRYPICK] Fix column stats index with MDT
for a few scenarios (#18314)
new d3b693a67f15 Bumping release candidate number 0.14.2-rc2
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (648895bd5777)
\
N -- N -- N refs/heads/release-0.14.2 (d3b693a67f15)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.github/workflows/bot.yml | 97 +-
azure-pipelines-20230430.yml | 30 +-
docker/hoodie/hadoop/base/pom.xml | 2 +-
docker/hoodie/hadoop/base_java11/pom.xml | 2 +-
docker/hoodie/hadoop/datanode/pom.xml | 2 +-
docker/hoodie/hadoop/historyserver/pom.xml | 2 +-
docker/hoodie/hadoop/hive_base/pom.xml | 2 +-
docker/hoodie/hadoop/namenode/pom.xml | 2 +-
docker/hoodie/hadoop/pom.xml | 2 +-
docker/hoodie/hadoop/prestobase/pom.xml | 2 +-
docker/hoodie/hadoop/spark_base/pom.xml | 2 +-
docker/hoodie/hadoop/sparkadhoc/pom.xml | 2 +-
docker/hoodie/hadoop/sparkmaster/pom.xml | 2 +-
docker/hoodie/hadoop/sparkworker/pom.xml | 2 +-
docker/hoodie/hadoop/trinobase/pom.xml | 2 +-
docker/hoodie/hadoop/trinocoordinator/pom.xml | 2 +-
docker/hoodie/hadoop/trinoworker/pom.xml | 2 +-
hudi-aws/pom.xml | 33 +-
.../cloudwatch/CloudWatchMetricsReporter.java | 3 +-
.../cloudwatch/CloudWatchReporter.java | 5 +-
.../hudi/aws/sync/AWSGlueCatalogSyncClient.java | 80 +-
.../hudi/aws/sync/AwsGlueCatalogSyncTool.java | 6 +
...amoDBBasedImplicitPartitionKeyLockProvider.java | 73 ++
.../lock/DynamoDBBasedLockProvider.java | 188 +---
...der.java => DynamoDBBasedLockProviderBase.java} | 107 +--
.../aws/transaction/lock/S3StorageLockClient.java | 330 +++++++
.../java/org/apache/hudi/aws/utils/S3Utils.java | 27 -
.../hudi/config/DynamoDbBasedLockConfig.java | 40 +-
.../hudi/config/GlueCatalogSyncClientConfig.java | 27 +
.../cloudwatch/TestCloudWatchMetricsReporter.java | 21 +-
.../cloudwatch/TestCloudWatchReporter.java | 10 +-
.../integ/ITTestDynamoDBBasedLockProvider.java | 235 +++--
.../lock/DynamoDBBasedLockProviderBaseTest.java | 83 ++
.../lock/TestS3StorageBasedLockProvider.java | 160 ++++
.../transaction/lock/TestS3StorageLockClient.java | 336 +++++++
.../TestS3StorageLockClientAuditOperations.java | 272 ++++++
hudi-cli/pom.xml | 9 +-
.../hudi/cli/commands/LockAuditingCommand.java | 661 ++++++++++++++
.../hudi/cli/commands/TestLockAuditingCommand.java | 945 ++++++++++++++++++++
hudi-client/hudi-client-common/pom.xml | 60 +-
.../apache/hudi/client/BaseHoodieWriteClient.java | 67 +-
...er.java => BaseZookeeperBasedLockProvider.java} | 104 ++-
.../lock/FileSystemBasedLockProvider.java | 5 +
.../hudi/client/transaction/lock/LockManager.java | 24 +-
.../transaction/lock/StorageBasedLockProvider.java | 651 ++++++++++++++
.../client/transaction/lock/StorageLockClient.java | 122 +++
...ZookeeperBasedImplicitBasePathLockProvider.java | 78 ++
.../lock/ZookeeperBasedLockProvider.java | 137 +--
.../lock/audit/AuditOperationState.java | 18 +-
.../transaction/lock/audit/AuditService.java | 29 +-
.../lock/audit/AuditServiceFactory.java | 119 +++
.../audit/StorageLockProviderAuditService.java | 177 ++++
.../lock/metrics/HoodieLockMetrics.java | 116 ++-
.../transaction/lock/models/HeartbeatManager.java | 49 +
.../transaction/lock/models/LockGetResult.java} | 31 +-
.../lock/models/LockProviderHeartbeatManager.java | 351 ++++++++
.../transaction/lock/models/LockUpsertResult.java} | 21 +-
.../transaction/lock/models/StorageLockData.java | 71 ++
.../transaction/lock/models/StorageLockFile.java | 133 +++
.../org/apache/hudi/config/HoodieWriteConfig.java | 39 +
.../apache/hudi/config/StorageBasedLockConfig.java | 101 +++
.../org/apache/hudi/index/HoodieIndexUtils.java | 6 +-
.../org/apache/hudi/io/HoodieMergedReadHandle.java | 15 +-
.../hudi/keygen/ComplexAvroKeyGenerator.java | 18 +-
.../java/org/apache/hudi/keygen/KeyGenUtils.java | 40 +-
.../keygen/TimestampBasedAvroKeyGenerator.java | 6 +-
.../metadata/HoodieBackedTableMetadataWriter.java | 79 +-
.../hudi/metrics/MetricsReporterFactory.java | 4 +-
.../java/org/apache/hudi/table/HoodieTable.java | 1 +
.../table/action/commit/HoodieMergeHelper.java | 8 +-
.../hudi/table/action/compact/HoodieCompactor.java | 7 +
.../hudi/client/TestBaseHoodieWriteClient.java | 288 ++++++
.../client/transaction/TestHoodieLockMetrics.java | 348 ++++++++
.../hudi/client/transaction/TestLockManager.java | 47 +
.../TestZookeeperBasedLockProvider.java | 106 ++-
.../lock/StorageBasedLockProviderTestBase.java | 290 ++++++
.../lock/TestStorageBasedLockProvider.java | 963 ++++++++++++++++++++
.../lock/audit/TestAuditServiceFactory.java | 160 ++++
.../audit/TestStorageLockProviderAuditService.java | 380 ++++++++
.../lock/models/StorageLockClientFileTest.java | 223 +++++
.../models/TestLockProviderHeartbeatManager.java | 481 ++++++++++
.../hudi/config/TestStorageBasedLockConfig.java | 101 +++
.../hudi/keygen/TestComplexAvroKeyGenerator.java | 49 +-
.../org/apache/hudi/keygen/TestKeyGenUtils.java | 116 +++
.../hudi/metrics/TestMetricsReporterFactory.java | 1 -
.../java/org/apache/hudi/testutils/Assertions.java | 9 +
hudi-client/hudi-flink-client/pom.xml | 4 +-
hudi-client/hudi-java-client/pom.xml | 4 +-
hudi-client/hudi-spark-client/pom.xml | 28 +-
.../MultipleSparkJobExecutionStrategy.java | 4 +-
.../client/utils/SparkInternalSchemaConverter.java | 22 +-
.../io/storage/HoodieSparkFileWriterFactory.java | 5 +-
.../hudi/io/storage/HoodieSparkParquetReader.java | 83 +-
.../io/storage/HoodieSparkParquetStreamWriter.java | 4 +-
.../hudi/io/storage/HoodieSparkParquetWriter.java | 4 +-
.../row/HoodieInternalRowFileWriterFactory.java | 4 +-
.../row/HoodieInternalRowParquetWriter.java | 4 +-
...tConfig.java => HoodieParquetWriteSupport.java} | 27 +-
.../io/storage/row/HoodieRowParquetConfig.java | 4 +-
.../storage/row/HoodieRowParquetWriteSupport.java | 41 +-
.../apache/hudi/keygen/BuiltinKeyGenerator.java | 44 +-
.../apache/hudi/keygen/ComplexKeyGenerator.java | 8 +-
.../hudi/keygen/GlobalDeleteKeyGenerator.java | 4 +-
.../bootstrap/ParquetBootstrapMetadataHandler.java | 4 +-
.../commit/BaseSparkCommitActionExecutor.java | 19 +
.../org/apache/hudi/AvroConversionUtils.scala | 11 +-
.../scala/org/apache/hudi/HoodieSparkUtils.scala | 4 +-
.../org/apache/hudi/SparkConversionUtils.scala | 4 +-
.../org/apache/hudi/util/JavaScalaConverters.scala | 72 ++
.../apache/spark/HoodieSparkKryoRegistrar.scala | 4 +-
.../apache/spark/sql/HoodieInternalRowUtils.scala | 6 +-
.../parquet/HoodieParquetFileFormatHelper.scala | 38 +-
.../org/apache/spark/sql/hudi/SparkAdapter.scala | 53 +-
.../HoodieLegacyParquetFileFormatHelper.scala | 121 +++
.../parquet/HoodieParquetReadSupport.scala | 115 +++
.../parquet/SparkBasicSchemaEvolution.scala | 23 +-
.../hudi/client/TestTableSchemaEvolution.java | 4 +-
.../functional/TestConsistentBucketIndex.java | 2 +-
.../functional/TestExternalPathHandling.java | 3 +
.../functional/TestHoodieBackedMetadata.java | 39 +-
.../TestHoodieClientOnCopyOnWriteStorage.java | 2 +-
.../hudi/client/functional/TestHoodieIndex.java | 2 +-
.../TestSavepointRestoreMergeOnRead.java | 2 +-
.../index/hbase/TestSparkHoodieHBaseIndex.java | 2 +-
.../apache/hudi/io/TestHoodieMergedReadHandle.java | 8 +-
.../row/TestHoodieInternalRowParquetWriter.java | 2 +-
.../hudi/keygen/KeyGeneratorTestUtilities.java | 200 +++++
.../hudi/keygen/TestComplexKeyGenerator.java | 214 +++++
.../apache/hudi/keygen/TestCustomKeyGenerator.java | 160 ++--
.../keygen/TestGlobalDeleteRecordGenerator.java | 69 +-
.../keygen/TestNonpartitionedKeyGenerator.java | 86 +-
.../apache/hudi/keygen/TestSimpleKeyGenerator.java | 59 +-
.../keygen/TestTimestampBasedKeyGenerator.java | 143 +--
.../TestCreateKeyGeneratorByTypeWithFactory.java | 23 +-
.../TestHoodieSparkKeyGeneratorFactory.java | 17 +-
.../hudi/table/TestHoodieMergeOnReadTable.java | 2 +-
.../commit/TestCopyOnWriteActionExecutor.java | 4 +-
...dieSparkCopyOnWriteTableArchiveWithReplace.java | 2 +-
.../TestHoodieSparkMergeOnReadTableRollback.java | 2 +-
.../hudi/testutils/HoodieClientTestUtils.java | 25 +-
.../hudi/testutils/LogFileColStatsTestUtil.java | 105 +++
.../SparkClientFunctionalTestHarness.java | 11 +-
.../hudi/testutils/SparkDatasetTestUtils.java | 4 +-
hudi-client/pom.xml | 2 +-
hudi-common/pom.xml | 37 +-
.../avro/AvroSchemaConverterWithTimestampNTZ.java | 598 +++++++++++++
.../apache/parquet/schema/AvroSchemaRepair.java | 245 +++++
.../parquet/schema/TestAvroSchemaRepair.java | 984 +++++++++++++++++++++
.../java/org/apache/hudi/avro/AvroSchemaCache.java | 45 +
.../java/org/apache/hudi/avro/AvroSchemaUtils.java | 89 +-
.../apache/hudi/avro/ConvertingGenericData.java | 100 ++-
.../java/org/apache/hudi/avro/HoodieAvroUtils.java | 156 +++-
.../apache/hudi/avro/MercifulJsonConverter.java | 23 +-
.../apache/hudi/common/config/ConfigProperty.java | 40 +-
.../hudi/common/config/HoodieStorageConfig.java | 9 +
.../common/config/TimestampKeyGeneratorConfig.java | 3 +-
.../java/org/apache/hudi/common/fs/FSUtils.java | 24 +
.../org/apache/hudi/common/fs/StorageSchemes.java | 77 +-
.../org/apache/hudi/common/lock/LockProvider.java | 2 +
.../apache/hudi/common/model/HoodieFileGroup.java | 2 +-
.../hudi/common/table/HoodieTableMetaClient.java | 41 +-
.../common/table/ParquetTableSchemaResolver.java | 64 ++
.../hudi/common/table/TableSchemaResolver.java | 2 +-
.../table/log/AbstractHoodieLogRecordReader.java | 23 +-
.../hudi/common/table/log/HoodieLogFileReader.java | 20 +-
.../common/table/log/HoodieLogFormatReader.java | 11 +-
.../table/log/HoodieUnMergedLogRecordScanner.java | 2 +-
.../table/log/block/HoodieAvroDataBlock.java | 27 +-
.../common/table/log/block/HoodieCDCDataBlock.java | 2 +-
.../table/view/AbstractTableFileSystemView.java | 35 +-
.../org/apache/hudi/common/util/DateTimeUtils.java | 39 +
.../hudi/common/util/ExternalFilePathUtil.java | 21 +
.../util/HoodieAvroParquetReaderIterator.java | 23 +-
.../org/apache/hudi/common/util/HoodieTimer.java | 11 +
.../org/apache/hudi/common/util/JsonUtils.java | 2 +
.../java/org/apache/hudi/common/util/Option.java | 4 +
.../org/apache/hudi/common/util/ParquetUtils.java | 23 +-
.../apache/hudi/common/util/ReflectionUtils.java | 11 +
.../org/apache/hudi/common/util/StringUtils.java | 81 ++
.../org/apache/hudi/common/util/hash/HashID.java | 22 +-
...ception.java => HoodieAvroSchemaException.java} | 12 +-
.../java/org/apache/hudi/internal/schema/Type.java | 7 +-
.../org/apache/hudi/internal/schema/Types.java | 72 ++
.../convert/AvroInternalSchemaConverter.java | 60 +-
.../hudi/internal/schema/utils/SerDeHelper.java | 8 +
.../io/storage/HoodieAvroFileWriterFactory.java | 5 +-
.../hudi/io/storage/HoodieAvroParquetReader.java | 76 +-
.../apache/hudi/io/storage/HoodieFileReader.java | 2 +
.../hudi/keygen/constant/KeyGeneratorType.java | 17 +
.../metadata/FileSystemBackedTableMetadata.java | 9 +-
.../hudi/metadata/HoodieMetadataPayload.java | 18 +-
.../hudi/metadata/HoodieTableMetadataUtil.java | 152 +++-
.../metadata/MetadataRecordsGenerationParams.java | 11 +-
.../avro/HoodieAvroParquetReaderBuilder.java | 18 +-
.../avro/HoodieAvroParquetSchemaConverter.java | 56 ++
.../apache/parquet/avro/HoodieAvroReadSupport.java | 31 +-
.../parquet/avro/NativeAvroSchemaConverter.java | 30 +-
.../org/apache/parquet/schema/SchemaRepair.java | 163 ++++
.../parquet/avro/TestAvroSchemaConverter.java | 954 ++++++++++++++++++++
.../apache/parquet/schema/TestSchemaRepair.java | 600 +++++++++++++
.../schema/TestSchemaRepairEquivalence.java | 481 ++++++++++
.../hudi/common/config/TestConfigProperty.java | 12 +
.../org/apache/hudi/common/fs/TestFSUtils.java | 87 ++
.../apache/hudi/common/fs/TestStorageSchemes.java | 9 +
.../common/functional/TestHoodieLogFormat.java | 2 +-
.../hudi/common/model/TestHoodieFileGroup.java | 1 +
.../common/testutils/HoodieTestDataGenerator.java | 499 ++++++++++-
.../hudi/common/testutils/HoodieTestUtils.java | 56 +-
.../hudi/common/testutils/SchemaTestUtil.java | 27 +
.../apache/hudi/common/util/TestHoodieTimer.java | 25 +-
.../apache/hudi/common/util/TestStringUtils.java | 91 +-
.../apache/hudi/common/util/hash/TestHashID.java | 40 +-
.../hudi/metadata/TestHoodieMetadataPayload.java | 18 +-
.../src/test/resources/hash/magic_input.txt | 10 +
.../hash/xxhash_BITS_128_for_magic_input.txt | 10 +
.../hash/xxhash_BITS_32_for_magic_input.txt | 10 +
.../hash/xxhash_BITS_64_for_magic_input.txt | 10 +
hudi-examples/hudi-examples-common/pom.xml | 2 +-
hudi-examples/hudi-examples-flink/pom.xml | 2 +-
hudi-examples/hudi-examples-java/pom.xml | 2 +-
hudi-examples/hudi-examples-spark/pom.xml | 2 +-
hudi-examples/pom.xml | 2 +-
hudi-flink-datasource/hudi-flink/pom.xml | 4 +-
.../apache/hudi/configuration/OptionsResolver.java | 8 +
.../apache/hudi/sink/bulk/AutoRowDataKeyGen.java | 10 +-
.../org/apache/hudi/sink/bulk/RowDataKeyGen.java | 29 +-
.../apache/hudi/sink/bulk/TestRowDataKeyGen.java | 34 +-
.../apache/hudi/table/ITTestSchemaEvolution.java | 8 +-
hudi-flink-datasource/hudi-flink1.13.x/pom.xml | 4 +-
hudi-flink-datasource/hudi-flink1.14.x/pom.xml | 4 +-
hudi-flink-datasource/hudi-flink1.15.x/pom.xml | 4 +-
hudi-flink-datasource/hudi-flink1.16.x/pom.xml | 4 +-
hudi-flink-datasource/hudi-flink1.17.x/pom.xml | 4 +-
hudi-flink-datasource/hudi-flink1.18.x/pom.xml | 4 +-
hudi-flink-datasource/pom.xml | 4 +-
hudi-gcp/pom.xml | 19 +-
.../hudi/gcp/bigquery/BigQuerySyncConfig.java | 12 +
.../gcp/bigquery/HoodieBigQuerySyncClient.java | 7 +-
.../gcp/transaction/lock/GCSStorageLockClient.java | 289 ++++++
.../hudi/gcp/bigquery/TestBigQuerySyncConfig.java | 3 +
.../gcp/bigquery/TestHoodieBigQuerySyncClient.java | 33 +-
.../transaction/lock/TestGCSStorageLockClient.java | 304 +++++++
.../TestGCSStorageLockClientAuditOperations.java | 273 ++++++
.../pom.xml | 178 ++--
.../src/test/resources/parquet-java/all.avsc | 110 +++
.../parquet-java/allFromParquetNewBehavior.avsc | 108 +++
.../parquet-java/allFromParquetOldBehavior.avsc | 117 +++
.../test/resources/parquet-java/fixedToInt96.avsc | 97 ++
hudi-hadoop-mr/pom.xml | 2 +-
.../hudi/hadoop/HoodieParquetInputFormat.java | 3 +-
.../apache/hudi/hadoop/SchemaEvolutionContext.java | 4 +
.../hudi/hadoop/avro/HoodieAvroParquetReader.java | 38 +-
.../HoodieTimestampAwareParquetInputFormat.java | 12 +
.../hudi/hadoop/utils/HiveAvroSerializer.java | 12 +-
hudi-integ-test/pom.xml | 12 +-
hudi-kafka-connect/pom.xml | 4 +-
.../hudi-metaserver/hudi-metaserver-client/pom.xml | 2 +-
.../hudi-metaserver/hudi-metaserver-server/pom.xml | 2 +-
hudi-platform-service/hudi-metaserver/pom.xml | 4 +-
hudi-platform-service/pom.xml | 2 +-
hudi-spark-datasource/hudi-spark-common/pom.xml | 4 +-
.../internal/DataSourceInternalWriterHelper.java | 2 +-
.../org/apache/hudi/ColumnStatsIndexSupport.scala | 4 +-
.../scala/org/apache/hudi/DataSourceOptions.scala | 2 +-
.../scala/org/apache/hudi/HoodieBaseRelation.scala | 12 +-
.../org/apache/hudi/HoodieDataSourceHelper.scala | 6 +-
.../scala/org/apache/hudi/HoodieFileIndex.scala | 43 +-
.../org/apache/hudi/HoodieMergeOnReadRDD.scala | 3 +-
.../scala/org/apache/hudi/HoodieSchemaUtils.scala | 14 +
.../org/apache/hudi/HoodieSparkSqlWriter.scala | 45 +-
.../org/apache/hudi/IncrementalRelation.scala | 34 +-
.../hudi/MergeOnReadIncrementalRelation.scala | 7 +
.../apache/hudi/MergeOnReadSnapshotRelation.scala | 8 +-
.../org/apache/hudi/RecordLevelIndexSupport.scala | 7 +-
.../apache/hudi/SparkHoodieTableFileIndex.scala | 42 +-
.../scala/org/apache/hudi/cdc/CDCRelation.scala | 7 +-
.../apache/spark/sql/avro/SchemaConverters.scala | 77 +-
.../parquet/LegacyHoodieParquetFileFormat.scala | 119 ++-
.../apache/spark/sql/hudi/DataSkippingUtils.scala | 78 +-
hudi-spark-datasource/hudi-spark/pom.xml | 82 +-
.../org/apache/spark/sql/hudi/SparkHelpers.scala | 1 +
.../spark/sql/hudi/analysis/HoodieAnalysis.scala | 10 +-
.../command/InsertIntoHoodieTableCommand.scala | 32 +-
.../hudi/command/MergeIntoHoodieTableCommand.scala | 51 +-
.../hudi/command/payload/ExpressionPayload.scala | 8 +-
.../hudi/command/procedures/BaseProcedure.scala | 7 +
.../procedures/CleanupAuditLockProcedure.scala | 190 ++++
.../hudi/command/procedures/HoodieProcedures.scala | 4 +
.../command/procedures/SetAuditLockProcedure.scala | 189 ++++
.../procedures/ShowAuditLockStatusProcedure.scala | 170 ++++
.../procedures/ValidateAuditLockProcedure.scala | 315 +++++++
.../sql/parser/HoodieSqlCommonAstBuilder.scala | 34 +-
.../apache/hudi/functional/TestBootstrapRead.java | 10 +-
.../hudi/functional/TestBootstrapReadBase.java | 3 +-
.../functional/TestNewHoodieParquetFileFormat.java | 3 +-
.../functional/TestSparkClusteringCornerCases.java | 286 ++++++
.../functional/TestSparkSortAndSizeClustering.java | 155 +++-
.../io/storage/row/TestHoodieRowCreateHandle.java | 13 +-
.../hudi/keygen/TestComplexKeyGenerator.java | 2 +-
...otstrap-rollback1-column-stats-index-table.json | 2 +
.../cow-bootstrap1-column-stats-index-table.json | 4 +
.../cow-bootstrap2-column-stats-index-table.json | 5 +
.../cow-clean1-column-stats-index-table.json | 2 +
...-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json | 1 +
...otstrap-rollback1-column-stats-index-table.json | 2 +
.../mor-bootstrap1-column-stats-index-table.json | 3 +
.../mor-bootstrap2-column-stats-index-table.json | 5 +
.../mor-clean1-column-stats-index-table.json | 2 +
...mor-delete-block1-column-stats-index-table.json | 3 +
...-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json | 10 +
...-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json | 5 +
...-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json | 5 +
.../test/resources/schema_with_logical_types.avsc | 194 ++++
.../trips_logical_types_json_cow_read_v6.zip | Bin 0 -> 103597 bytes
.../trips_logical_types_json_cow_read_v8.zip | Bin 0 -> 139172 bytes
.../trips_logical_types_json_cow_read_v9.zip | Bin 0 -> 200295 bytes
.../trips_logical_types_json_mor_read_v6.zip | Bin 0 -> 48290 bytes
..._logical_types_json_mor_read_v6_parquet_log.zip | Bin 0 -> 55640 bytes
.../trips_logical_types_json_mor_read_v8.zip | Bin 0 -> 68870 bytes
..._logical_types_json_mor_read_v8_parquet_log.zip | Bin 0 -> 76217 bytes
.../trips_logical_types_json_mor_read_v9.zip | Bin 0 -> 68838 bytes
..._logical_types_json_mor_read_v9_parquet_log.zip | Bin 0 -> 76199 bytes
.../hudi/TestAvroSchemaResolutionSupport.scala | 89 ++
.../org/apache/hudi/TestDataSourceDefaults.scala | 132 ++-
.../org/apache/hudi/TestHoodieFileIndex.scala | 63 +-
.../org/apache/hudi/TestHoodieSparkSqlWriter.scala | 5 +-
.../hudi/functional/ColumnStatIndexTestBase.scala | 168 +++-
.../apache/hudi/functional/TestCOWDataSource.scala | 103 ++-
.../hudi/functional/TestColumnStatsIndex.scala | 460 +++++++++-
.../functional/TestColumnStatsIndexWithSQL.scala | 45 +-
.../TestComplexTypeSchemaEvolution.scala | 471 ++++++++++
.../TestGetPartitionValuesFromPath.scala | 7 +-
.../apache/hudi/functional/TestMORDataSource.scala | 95 +-
.../functional/TestParquetColumnProjection.scala | 7 +-
.../functional/TestRecordLevelIndexWithSQL.scala | 31 +-
.../functional/cdc/TestCDCDataFrameSuite.scala | 2 +
.../spark/sql/hudi/HoodieSparkSqlTestBase.scala | 71 +-
.../sql/hudi/TestAlterTableDropPartition.scala | 14 +
.../apache/spark/sql/hudi/TestCreateTable.scala | 183 +++-
.../apache/spark/sql/hudi/TestDescribeTable.scala | 117 +++
.../apache/spark/sql/hudi/TestInsertTable.scala | 12 +-
.../sql/hudi/TestLazyPartitionPathFetching.scala | 5 +-
.../apache/spark/sql/hudi/TestMergeIntoTable.scala | 150 ++--
.../TestPartitionPushDownWhenListingPaths.scala | 4 +-
.../apache/spark/sql/hudi/TestRepairTable.scala | 6 +-
.../apache/spark/sql/hudi/TestShowPartitions.scala | 8 +-
.../org/apache/spark/sql/hudi/TestSpark3DDL.scala | 3 +-
.../apache/spark/sql/hudi/TestTruncateTable.scala | 5 +
.../procedure/TestCleanupAuditLockProcedure.scala | 294 ++++++
.../sql/hudi/procedure/TestFsViewProcedure.scala | 5 +-
.../hudi/procedure/TestSetAuditLockProcedure.scala | 169 ++++
.../TestShowAuditLockStatusProcedure.scala | 223 +++++
.../sql/hudi/procedure/TestStatsProcedure.scala | 5 +-
.../procedure/TestValidateAuditLockProcedure.scala | 454 ++++++++++
hudi-spark-datasource/hudi-spark2-common/pom.xml | 2 +-
hudi-spark-datasource/hudi-spark2/pom.xml | 4 +-
.../apache/spark/sql/adapter/Spark2Adapter.scala | 37 +-
hudi-spark-datasource/hudi-spark3-common/pom.xml | 2 +-
.../apache/hudi/spark3/internal/DefaultSource.java | 4 -
.../spark/sql/adapter/BaseSpark3Adapter.scala | 36 +-
.../TestHoodieBulkInsertDataInternalWriter.java | 10 +
.../TestHoodieDataSourceInternalBatchWrite.java | 26 +
hudi-spark-datasource/hudi-spark3.0.x/pom.xml | 4 +-
.../apache/spark/sql/adapter/Spark3_0Adapter.scala | 6 +-
hudi-spark-datasource/hudi-spark3.1.x/pom.xml | 4 +-
.../apache/spark/sql/adapter/Spark3_1Adapter.scala | 6 +-
hudi-spark-datasource/hudi-spark3.2.x/pom.xml | 4 +-
.../apache/spark/sql/adapter/Spark3_2Adapter.scala | 6 +-
.../Spark32LegacyHoodieParquetFileFormat.scala | 3 +-
.../hudi-spark3.2plus-common/pom.xml | 2 +-
.../hudi/analysis/HoodieSpark32PlusAnalysis.scala | 18 +-
hudi-spark-datasource/hudi-spark3.3.x/pom.xml | 4 +-
.../apache/spark/sql/adapter/Spark3_3Adapter.scala | 11 +-
.../Spark33LegacyHoodieParquetFileFormat.scala | 8 +-
hudi-spark-datasource/hudi-spark3.4.x/pom.xml | 4 +-
.../Spark34PlusHoodieRowParquetWriteSupport.java | 533 +++++++++++
.../apache/spark/sql/adapter/Spark3_4Adapter.scala | 78 +-
.../Spark34LegacyHoodieParquetFileFormat.scala | 179 ++--
.../apache/spark/sql/adapter/Spark3_5Adapter.scala | 0
hudi-spark-datasource/pom.xml | 2 +-
hudi-sync/hudi-adb-sync/pom.xml | 2 +-
hudi-sync/hudi-datahub-sync/pom.xml | 2 +-
hudi-sync/hudi-hive-sync/pom.xml | 2 +-
.../java/org/apache/hudi/hive/HiveSyncConfig.java | 8 +
.../java/org/apache/hudi/hive/HiveSyncTool.java | 96 +-
.../org/apache/hudi/hive/HoodieHiveSyncClient.java | 49 +
.../lock/HiveMetastoreBasedLockProvider.java | 20 +-
.../org/apache/hudi/hive/TestHiveSyncTool.java | 385 +++++++-
.../hudi/hive/testutils/HiveTestService.java | 130 ++-
hudi-sync/hudi-sync-common/pom.xml | 2 +-
.../hudi/sync/common/HoodieMetaSyncOperations.java | 29 +
.../apache/hudi/sync/common/HoodieSyncClient.java | 19 +-
hudi-sync/pom.xml | 2 +-
hudi-tests-common/pom.xml | 2 +-
hudi-timeline-service/pom.xml | 48 +-
hudi-utilities/pom.xml | 57 +-
.../utilities/HoodieMetadataTableValidator.java | 57 +-
.../org/apache/hudi/utilities/UtilHelpers.java | 9 -
.../config/HoodieSchemaProviderConfig.java | 7 -
.../deser/KafkaAvroSchemaDeserializer.java | 4 +-
.../utilities/schema/SparkAvroPostProcessor.java | 56 --
.../hudi/utilities/streamer/HoodieStreamer.java | 13 +-
.../TestHoodieMetadataTableValidator.java | 197 +++++
.../hudi/utilities/TestSchemaPostProcessor.java | 9 -
.../deltastreamer/HoodieDeltaStreamerTestBase.java | 2 +-
.../deltastreamer/TestHoodieDeltaStreamer.java | 590 +++++++++++-
...estHoodieDeltaStreamerSchemaEvolutionQuick.java | 44 +-
.../deser/TestKafkaAvroSchemaDeserializer.java | 6 +-
.../testutils/sources/AbstractBaseTestSource.java | 20 +-
.../src/test/resources/logical-repair/README.md | 88 ++
.../logical-repair/cow_write_updates/2/data.json | 6 +
.../logical-repair/cow_write_updates/3/data.json | 3 +
.../logical-repair/mor_write_updates/5/data.json | 3 +
.../src/test/resources/logical-repair/schema.avsc | 112 +++
.../trips_logical_types_json_cow_write.zip | Bin 0 -> 61182 bytes
...trips_logical_types_json_mor_write_avro_log.zip | Bin 0 -> 54841 bytes
...ps_logical_types_json_mor_write_parquet_log.zip | Bin 0 -> 59817 bytes
...processed.avsc => source-timestamp-millis.avsc} | 38 +-
packaging/bundle-validation/ci_run.sh | 6 +
.../docker_java17/docker_java17_test.sh | 71 +-
packaging/bundle-validation/validate.sh | 26 +-
packaging/hudi-aws-bundle/pom.xml | 2 +-
packaging/hudi-cli-bundle/pom.xml | 2 +-
packaging/hudi-datahub-sync-bundle/pom.xml | 2 +-
packaging/hudi-flink-bundle/pom.xml | 2 +-
packaging/hudi-gcp-bundle/pom.xml | 2 +-
packaging/hudi-hadoop-mr-bundle/pom.xml | 2 +-
packaging/hudi-hive-sync-bundle/pom.xml | 2 +-
packaging/hudi-integ-test-bundle/pom.xml | 2 +-
packaging/hudi-kafka-connect-bundle/pom.xml | 2 +-
packaging/hudi-metaserver-server-bundle/pom.xml | 2 +-
packaging/hudi-presto-bundle/pom.xml | 2 +-
packaging/hudi-spark-bundle/pom.xml | 2 +-
packaging/hudi-timeline-server-bundle/pom.xml | 2 +-
packaging/hudi-trino-bundle/pom.xml | 2 +-
packaging/hudi-utilities-bundle/pom.xml | 2 +-
packaging/hudi-utilities-slim-bundle/pom.xml | 2 +-
pom.xml | 226 ++++-
scripts/release/validate_source_copyright.sh | 4 +-
439 files changed, 27149 insertions(+), 2438 deletions(-)
rename {hudi-client/hudi-client-common/src/main/java/org/apache/hudi =>
hudi-aws/src/main/java/org/apache/hudi/aws}/metrics/cloudwatch/CloudWatchMetricsReporter.java
(96%)
rename hudi-aws/src/main/java/org/apache/hudi/aws/{ =>
metrics}/cloudwatch/CloudWatchReporter.java (98%)
create mode 100644
hudi-aws/src/main/java/org/apache/hudi/aws/transaction/lock/DynamoDBBasedImplicitPartitionKeyLockProvider.java
copy
hudi-aws/src/main/java/org/apache/hudi/aws/transaction/lock/{DynamoDBBasedLockProvider.java
=> DynamoDBBasedLockProviderBase.java} (66%)
create mode 100644
hudi-aws/src/main/java/org/apache/hudi/aws/transaction/lock/S3StorageLockClient.java
delete mode 100644
hudi-aws/src/main/java/org/apache/hudi/aws/utils/S3Utils.java
rename {hudi-client/hudi-client-common/src/test/java/org/apache/hudi =>
hudi-aws/src/test/java/org/apache/hudi/aws}/metrics/cloudwatch/TestCloudWatchMetricsReporter.java
(76%)
rename hudi-aws/src/test/java/org/apache/hudi/aws/{ =>
metrics}/cloudwatch/TestCloudWatchReporter.java (94%)
create mode 100644
hudi-aws/src/test/java/org/apache/hudi/aws/transaction/lock/DynamoDBBasedLockProviderBaseTest.java
create mode 100644
hudi-aws/src/test/java/org/apache/hudi/aws/transaction/lock/TestS3StorageBasedLockProvider.java
create mode 100644
hudi-aws/src/test/java/org/apache/hudi/aws/transaction/lock/TestS3StorageLockClient.java
create mode 100644
hudi-aws/src/test/java/org/apache/hudi/aws/transaction/lock/TestS3StorageLockClientAuditOperations.java
create mode 100644
hudi-cli/src/main/java/org/apache/hudi/cli/commands/LockAuditingCommand.java
create mode 100644
hudi-cli/src/test/java/org/apache/hudi/cli/commands/TestLockAuditingCommand.java
copy
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/lock/{ZookeeperBasedLockProvider.java
=> BaseZookeeperBasedLockProvider.java} (58%)
create mode 100644
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/lock/StorageBasedLockProvider.java
create mode 100644
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/lock/StorageLockClient.java
create mode 100644
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/lock/ZookeeperBasedImplicitBasePathLockProvider.java
copy
hudi-integ-test/src/main/java/org/apache/hudi/integ/testsuite/dag/WorkflowDagGenerator.java
=>
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/lock/audit/AuditOperationState.java
(74%)
copy
hudi-common/src/main/java/org/apache/hudi/common/conflict/detection/EarlyConflictDetectionStrategy.java
=>
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/lock/audit/AuditService.java
(55%)
create mode 100644
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/lock/audit/AuditServiceFactory.java
create mode 100644
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/lock/audit/StorageLockProviderAuditService.java
create mode 100644
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/lock/models/HeartbeatManager.java
copy
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/{common/table/log/CachingIterator.java
=> client/transaction/lock/models/LockGetResult.java} (66%)
create mode 100644
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/lock/models/LockProviderHeartbeatManager.java
copy
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/{exception/HoodieCompactionException.java
=> client/transaction/lock/models/LockUpsertResult.java} (63%)
create mode 100644
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/lock/models/StorageLockData.java
create mode 100644
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/lock/models/StorageLockFile.java
create mode 100644
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/config/StorageBasedLockConfig.java
create mode 100644
hudi-client/hudi-client-common/src/test/java/org/apache/hudi/client/TestBaseHoodieWriteClient.java
create mode 100644
hudi-client/hudi-client-common/src/test/java/org/apache/hudi/client/transaction/TestHoodieLockMetrics.java
create mode 100644
hudi-client/hudi-client-common/src/test/java/org/apache/hudi/client/transaction/lock/StorageBasedLockProviderTestBase.java
create mode 100644
hudi-client/hudi-client-common/src/test/java/org/apache/hudi/client/transaction/lock/TestStorageBasedLockProvider.java
create mode 100644
hudi-client/hudi-client-common/src/test/java/org/apache/hudi/client/transaction/lock/audit/TestAuditServiceFactory.java
create mode 100644
hudi-client/hudi-client-common/src/test/java/org/apache/hudi/client/transaction/lock/audit/TestStorageLockProviderAuditService.java
create mode 100644
hudi-client/hudi-client-common/src/test/java/org/apache/hudi/client/transaction/lock/models/StorageLockClientFileTest.java
create mode 100644
hudi-client/hudi-client-common/src/test/java/org/apache/hudi/client/transaction/lock/models/TestLockProviderHeartbeatManager.java
create mode 100644
hudi-client/hudi-client-common/src/test/java/org/apache/hudi/config/TestStorageBasedLockConfig.java
copy
hudi-client/hudi-spark-client/src/main/java/org/apache/hudi/io/storage/row/{HoodieRowParquetConfig.java
=> HoodieParquetWriteSupport.java} (55%)
create mode 100644
hudi-client/hudi-spark-client/src/main/scala/org/apache/hudi/util/JavaScalaConverters.scala
rename {hudi-spark-datasource/hudi-spark-common =>
hudi-client/hudi-spark-client}/src/main/scala/org/apache/spark/sql/execution/datasources/parquet/HoodieParquetFileFormatHelper.scala
(78%)
create mode 100644
hudi-client/hudi-spark-client/src/parquet/scala/org/apache/spark/sql/execution/datasources/parquet/HoodieLegacyParquetFileFormatHelper.scala
create mode 100644
hudi-client/hudi-spark-client/src/parquet/scala/org/apache/spark/sql/execution/datasources/parquet/HoodieParquetReadSupport.scala
copy
hudi-spark-datasource/hudi-spark-common/src/main/scala/org/apache/hudi/EmptyRelation.scala
=>
hudi-client/hudi-spark-client/src/parquet/scala/org/apache/spark/sql/execution/datasources/parquet/SparkBasicSchemaEvolution.scala
(58%)
create mode 100644
hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/keygen/KeyGeneratorTestUtilities.java
create mode 100644
hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/keygen/TestComplexKeyGenerator.java
rename {hudi-spark-datasource/hudi-spark =>
hudi-client/hudi-spark-client}/src/test/java/org/apache/hudi/keygen/TestCustomKeyGenerator.java
(65%)
rename {hudi-spark-datasource/hudi-spark =>
hudi-client/hudi-spark-client}/src/test/java/org/apache/hudi/keygen/TestGlobalDeleteRecordGenerator.java
(60%)
rename {hudi-spark-datasource/hudi-spark =>
hudi-client/hudi-spark-client}/src/test/java/org/apache/hudi/keygen/TestNonpartitionedKeyGenerator.java
(60%)
rename {hudi-spark-datasource/hudi-spark =>
hudi-client/hudi-spark-client}/src/test/java/org/apache/hudi/keygen/TestSimpleKeyGenerator.java
(79%)
rename {hudi-spark-datasource/hudi-spark =>
hudi-client/hudi-spark-client}/src/test/java/org/apache/hudi/keygen/TestTimestampBasedKeyGenerator.java
(74%)
rename {hudi-spark-datasource/hudi-spark =>
hudi-client/hudi-spark-client}/src/test/java/org/apache/hudi/keygen/factory/TestCreateKeyGeneratorByTypeWithFactory.java
(88%)
rename {hudi-spark-datasource/hudi-spark =>
hudi-client/hudi-spark-client}/src/test/java/org/apache/hudi/keygen/factory/TestHoodieSparkKeyGeneratorFactory.java
(91%)
create mode 100644
hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/testutils/LogFileColStatsTestUtil.java
create mode 100644
hudi-common/src/avro/java/org/apache/parquet/avro/AvroSchemaConverterWithTimestampNTZ.java
create mode 100644
hudi-common/src/avro/java/org/apache/parquet/schema/AvroSchemaRepair.java
create mode 100644
hudi-common/src/avro/test/java/org/apache/parquet/schema/TestAvroSchemaRepair.java
create mode 100644
hudi-common/src/main/java/org/apache/hudi/avro/AvroSchemaCache.java
create mode 100644
hudi-common/src/main/java/org/apache/hudi/common/table/ParquetTableSchemaResolver.java
copy
hudi-utilities/src/main/java/org/apache/hudi/utilities/schema/LazyCastingIterator.java
=>
hudi-common/src/main/java/org/apache/hudi/common/util/HoodieAvroParquetReaderIterator.java
(60%)
copy
hudi-common/src/main/java/org/apache/hudi/exception/{HoodieSecondaryIndexException.java
=> HoodieAvroSchemaException.java} (69%)
create mode 100644
hudi-common/src/main/java/org/apache/parquet/avro/HoodieAvroParquetSchemaConverter.java
copy
hudi-utilities/src/main/java/org/apache/hudi/utilities/schema/LazyCastingIterator.java
=>
hudi-common/src/main/java/org/apache/parquet/avro/NativeAvroSchemaConverter.java
(56%)
create mode 100644
hudi-common/src/parquet/java/org/apache/parquet/schema/SchemaRepair.java
create mode 100644
hudi-common/src/parquet/test/org/apache/parquet/avro/TestAvroSchemaConverter.java
create mode 100644
hudi-common/src/parquet/test/org/apache/parquet/schema/TestSchemaRepair.java
create mode 100644
hudi-common/src/parquet/test/org/apache/parquet/schema/TestSchemaRepairEquivalence.java
copy
hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/index/hbase/TestHBaseIndexUsage.java
=> hudi-common/src/test/java/org/apache/hudi/common/util/TestHoodieTimer.java
(64%)
create mode 100644 hudi-common/src/test/resources/hash/magic_input.txt
create mode 100644
hudi-common/src/test/resources/hash/xxhash_BITS_128_for_magic_input.txt
create mode 100644
hudi-common/src/test/resources/hash/xxhash_BITS_32_for_magic_input.txt
create mode 100644
hudi-common/src/test/resources/hash/xxhash_BITS_64_for_magic_input.txt
create mode 100644
hudi-gcp/src/main/java/org/apache/hudi/gcp/transaction/lock/GCSStorageLockClient.java
create mode 100644
hudi-gcp/src/test/java/org/apache/hudi/gcp/transaction/lock/TestGCSStorageLockClient.java
create mode 100644
hudi-gcp/src/test/java/org/apache/hudi/gcp/transaction/lock/TestGCSStorageLockClientAuditOperations.java
copy {hudi-sync/hudi-datahub-sync => hudi-hadoop-common}/pom.xml (52%)
create mode 100644 hudi-hadoop-common/src/test/resources/parquet-java/all.avsc
create mode 100644
hudi-hadoop-common/src/test/resources/parquet-java/allFromParquetNewBehavior.avsc
create mode 100644
hudi-hadoop-common/src/test/resources/parquet-java/allFromParquetOldBehavior.avsc
create mode 100644
hudi-hadoop-common/src/test/resources/parquet-java/fixedToInt96.avsc
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/CleanupAuditLockProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/SetAuditLockProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/ShowAuditLockStatusProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/ValidateAuditLockProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/java/org/apache/hudi/functional/TestSparkClusteringCornerCases.java
rename {hudi-client/hudi-spark-client =>
hudi-spark-datasource/hudi-spark}/src/test/java/org/apache/hudi/io/storage/row/TestHoodieRowCreateHandle.java
(94%)
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/index/colstats/cow-bootstrap-rollback1-column-stats-index-table.json
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/index/colstats/cow-bootstrap1-column-stats-index-table.json
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/index/colstats/cow-bootstrap2-column-stats-index-table.json
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/index/colstats/cow-clean1-column-stats-index-table.json
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/index/colstats/delete-input-table-json/part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/index/colstats/mor-bootstrap-rollback1-column-stats-index-table.json
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/index/colstats/mor-bootstrap1-column-stats-index-table.json
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/index/colstats/mor-bootstrap2-column-stats-index-table.json
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/index/colstats/mor-clean1-column-stats-index-table.json
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/index/colstats/mor-delete-block1-column-stats-index-table.json
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/index/colstats/update2-input-table-json/part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/index/colstats/update3-input-table-json/part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/index/colstats/update4-input-table-json/part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/schema_with_logical_types.avsc
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/trips_logical_types_json_cow_read_v6.zip
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/trips_logical_types_json_cow_read_v8.zip
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/trips_logical_types_json_cow_read_v9.zip
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/trips_logical_types_json_mor_read_v6.zip
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/trips_logical_types_json_mor_read_v6_parquet_log.zip
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/trips_logical_types_json_mor_read_v8.zip
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/trips_logical_types_json_mor_read_v8_parquet_log.zip
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/trips_logical_types_json_mor_read_v9.zip
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/resources/trips_logical_types_json_mor_read_v9_parquet_log.zip
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/hudi/functional/TestComplexTypeSchemaEvolution.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/TestDescribeTable.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/procedure/TestCleanupAuditLockProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/procedure/TestSetAuditLockProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/procedure/TestShowAuditLockStatusProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/procedure/TestValidateAuditLockProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark3.4.x/src/main/java/org/apache/hudi/io/storage/row/Spark34PlusHoodieRowParquetWriteSupport.java
copy hudi-hadoop-mr/src/test/resources/emptyFile =>
hudi-spark-datasource/hudi-spark3.5.x/src/main/scala/org/apache/spark/sql/adapter/Spark3_5Adapter.scala
(100%)
delete mode 100644
hudi-utilities/src/main/java/org/apache/hudi/utilities/schema/SparkAvroPostProcessor.java
create mode 100644
hudi-utilities/src/test/java/org/apache/hudi/utilities/TestHoodieMetadataTableValidator.java
create mode 100644 hudi-utilities/src/test/resources/logical-repair/README.md
create mode 100644
hudi-utilities/src/test/resources/logical-repair/cow_write_updates/2/data.json
create mode 100644
hudi-utilities/src/test/resources/logical-repair/cow_write_updates/3/data.json
create mode 100644
hudi-utilities/src/test/resources/logical-repair/mor_write_updates/5/data.json
create mode 100644 hudi-utilities/src/test/resources/logical-repair/schema.avsc
create mode 100644
hudi-utilities/src/test/resources/logical-repair/trips_logical_types_json_cow_write.zip
create mode 100644
hudi-utilities/src/test/resources/logical-repair/trips_logical_types_json_mor_write_avro_log.zip
create mode 100644
hudi-utilities/src/test/resources/logical-repair/trips_logical_types_json_mor_write_parquet_log.zip
rename
hudi-utilities/src/test/resources/streamer-config/{source_evolved_post_processed.avsc
=> source-timestamp-millis.avsc} (87%)