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%)


Reply via email to